[gtk+/rendering-cleanup: 24/81] API: remove gdk_draw_glyphs() and gdk_draw_glyphs_transformed()



commit c94125c81ba3bf252b05be90b0d26d631339e581
Author: Benjamin Otte <otte redhat com>
Date:   Wed Jul 14 16:03:51 2010 +0200

    API: remove gdk_draw_glyphs() and gdk_draw_glyphs_transformed()

 docs/reference/gdk/gdk3-sections.txt           |    2 -
 docs/reference/gdk/tmpl/drawing.sgml           |   27 -
 docs/reference/gdk/tmpl/pango_interaction.sgml |    9 +-
 gdk/Gdk-2.0.gir                                |24908 ++++++++++++++++++++++++
 gdk/Gdk-2.0.typelib                            |  Bin 0 -> 219652 bytes
 gdk/diff                                       |  244 +
 gdk/foo.png                                    |  Bin 0 -> 34495 bytes
 gdk/gdk.symbols                                |    2 -
 gdk/gdkalias.h                                 | 2808 +++
 gdk/gdkaliasdef.c                              | 2811 +++
 gdk/gdkdraw.c                                  |  107 -
 gdk/gdkdrawable.h                              |   29 -
 gdk/gdkpixmap.c                                |   45 -
 gdk/gdkwindow.c                                |   79 -
 gdk/libgdk-x11-2.0.la                          |   41 +
 gdk/tmp-introspect1tou9S/.libs/GdkX11-3.0      |  Bin 0 -> 11136 bytes
 gdk/tmp-introspect1tou9S/GdkX11-3.0.c          |   33 +
 gdk/tmp-introspect1tou9S/GdkX11-3.0.o          |  Bin 0 -> 7320 bytes
 gdk/tmp-introspectJGFWZZ/Gdk-3.0.c             |  157 +
 gdk/tmp-introspectJGFWZZ/Gdk-3.0.o             |  Bin 0 -> 12688 bytes
 gdk/tmp-introspectTWD5cR/Gdk-3.0.c             |  163 +
 gdk/tmp-introspectTWD5cR/Gdk-3.0.o             |  Bin 0 -> 12904 bytes
 22 files changed, 31169 insertions(+), 296 deletions(-)
---
diff --git a/docs/reference/gdk/gdk3-sections.txt b/docs/reference/gdk/gdk3-sections.txt
index 9609a93..4a6aaf8 100644
--- a/docs/reference/gdk/gdk3-sections.txt
+++ b/docs/reference/gdk/gdk3-sections.txt
@@ -341,8 +341,6 @@ gdk_draw_segments
 GdkSegment
 gdk_draw_rectangle
 gdk_draw_polygon
-gdk_draw_glyphs
-gdk_draw_glyphs_transformed
 gdk_draw_layout_line
 gdk_draw_layout_line_with_colors
 gdk_draw_layout
diff --git a/docs/reference/gdk/tmpl/drawing.sgml b/docs/reference/gdk/tmpl/drawing.sgml
index 3b7b4be..46f63f5 100644
--- a/docs/reference/gdk/tmpl/drawing.sgml
+++ b/docs/reference/gdk/tmpl/drawing.sgml
@@ -219,33 +219,6 @@ function.
 @n_points: 
 
 
-<!-- ##### FUNCTION gdk_draw_glyphs ##### -->
-<para>
-
-</para>
-
- drawable: 
- gc: 
- font: 
- x: 
- y: 
- glyphs: 
-
-
-<!-- ##### FUNCTION gdk_draw_glyphs_transformed ##### -->
-<para>
-
-</para>
-
- drawable: 
- gc: 
- matrix: 
- font: 
- x: 
- y: 
- glyphs: 
-
-
 <!-- ##### FUNCTION gdk_draw_layout_line ##### -->
 <para>
 
diff --git a/docs/reference/gdk/tmpl/pango_interaction.sgml b/docs/reference/gdk/tmpl/pango_interaction.sgml
index b9556a9..82e4c30 100644
--- a/docs/reference/gdk/tmpl/pango_interaction.sgml
+++ b/docs/reference/gdk/tmpl/pango_interaction.sgml
@@ -25,11 +25,10 @@ linkend="PANGO-SCALE-CAPS">PANGO_SCALE</link> or the PANGO_PIXELS() macro.)
 </para>
 <para>
 Rendering a Pango layout is done most simply with gdk_draw_layout();
-you can also draw pieces of the layout with gdk_draw_layout() or
-gdk_draw_glyphs(). #GdkPangoRenderer is a subclass of #PangoRenderer
-that is used internally to implement these functions. Using it
-directly or subclassing it can be useful in some cases. See the
-#GdkPangoRenderer documentation for details.
+you can also draw pieces of the layout with gdk_draw_layout().
+#GdkPangoRenderer is a subclass of #PangoRenderer that is used internally
+to implement these functions. Using it directly or subclassing it can be
+useful in some cases. See the #GdkPangoRenderer documentation for details.
 </para>
 <example id="rotated-example">
 <title>Using #GdkPangoRenderer to draw transformed text</title>
diff --git a/gdk/Gdk-2.0.gir b/gdk/Gdk-2.0.gir
new file mode 100644
index 0000000..f4a86db
--- /dev/null
+++ b/gdk/Gdk-2.0.gir
@@ -0,0 +1,24908 @@
+<?xml version="1.0"?>
+<!-- This file was automatically generated from C sources - DO NOT EDIT!
+To affect the contents of this file, edit the original C definitions,
+and/or use gtk-doc annotations.  -->
+<repository version="1.1"
+            xmlns="http://www.gtk.org/introspection/core/1.0";
+            xmlns:c="http://www.gtk.org/introspection/c/1.0";
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0";>
+  <include name="GLib" version="2.0"/>
+  <include name="GModule" version="2.0"/>
+  <include name="GObject" version="2.0"/>
+  <include name="GdkPixbuf" version="2.0"/>
+  <include name="Gio" version="2.0"/>
+  <include name="Pango" version="1.0"/>
+  <include name="cairo" version="1.0"/>
+  <namespace name="Gdk"
+             version="2.0"
+             shared-library="libgdk-x11-2.0.so.0"
+             c:prefix="Gdk">
+    <alias name="NativeWindow" target="uint32" c:type="GdkNativeWindow"/>
+    <alias name="Selection" target="Atom" c:type="GdkSelection"/>
+    <alias name="SelectionType" target="Atom" c:type="GdkSelectionType"/>
+    <alias name="Target" target="Atom" c:type="GdkTarget"/>
+    <alias name="WChar" target="uint32" c:type="GdkWChar"/>
+    <alias name="XEvent" target="none" c:type="GdkXEvent"/>
+    <constant name="0" value="48">
+      <type name="int"/>
+    </constant>
+    <constant name="1" value="49">
+      <type name="int"/>
+    </constant>
+    <constant name="2" value="50">
+      <type name="int"/>
+    </constant>
+    <constant name="3" value="51">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_AltCursor" value="64784">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Attn" value="64782">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_BackTab" value="64773">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_ChangeScreen" value="64793">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Copy" value="64789">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_CursorBlink" value="64783">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_CursorSelect" value="64796">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_DeleteWord" value="64794">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Duplicate" value="64769">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Enter" value="64798">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_EraseEOF" value="64774">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_EraseInput" value="64775">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_ExSelect" value="64795">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_FieldMark" value="64770">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Ident" value="64787">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Jump" value="64786">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_KeyClick" value="64785">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Left2" value="64772">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_PA1" value="64778">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_PA2" value="64779">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_PA3" value="64780">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Play" value="64790">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_PrintScreen" value="64797">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Quit" value="64777">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Record" value="64792">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Reset" value="64776">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Right2" value="64771">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Rule" value="64788">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Setup" value="64791">
+      <type name="int"/>
+    </constant>
+    <constant name="3270_Test" value="64781">
+      <type name="int"/>
+    </constant>
+    <constant name="4" value="52">
+      <type name="int"/>
+    </constant>
+    <constant name="5" value="53">
+      <type name="int"/>
+    </constant>
+    <constant name="6" value="54">
+      <type name="int"/>
+    </constant>
+    <constant name="7" value="55">
+      <type name="int"/>
+    </constant>
+    <constant name="8" value="56">
+      <type name="int"/>
+    </constant>
+    <constant name="9" value="57">
+      <type name="int"/>
+    </constant>
+    <constant name="A" value="65">
+      <type name="int"/>
+    </constant>
+    <constant name="AE" value="198">
+      <type name="int"/>
+    </constant>
+    <constant name="ANY_BUTTON_MASK" value="0">
+      <type name="int"/>
+    </constant>
+    <constant name="Aacute" value="193">
+      <type name="int"/>
+    </constant>
+    <constant name="Abelowdot" value="16785056">
+      <type name="int"/>
+    </constant>
+    <constant name="Abreve" value="451">
+      <type name="int"/>
+    </constant>
+    <constant name="Abreveacute" value="16785070">
+      <type name="int"/>
+    </constant>
+    <constant name="Abrevebelowdot" value="16785078">
+      <type name="int"/>
+    </constant>
+    <constant name="Abrevegrave" value="16785072">
+      <type name="int"/>
+    </constant>
+    <constant name="Abrevehook" value="16785074">
+      <type name="int"/>
+    </constant>
+    <constant name="Abrevetilde" value="16785076">
+      <type name="int"/>
+    </constant>
+    <constant name="AccessX_Enable" value="65136">
+      <type name="int"/>
+    </constant>
+    <constant name="AccessX_Feedback_Enable" value="65137">
+      <type name="int"/>
+    </constant>
+    <constant name="Acircumflex" value="194">
+      <type name="int"/>
+    </constant>
+    <constant name="Acircumflexacute" value="16785060">
+      <type name="int"/>
+    </constant>
+    <constant name="Acircumflexbelowdot" value="16785068">
+      <type name="int"/>
+    </constant>
+    <constant name="Acircumflexgrave" value="16785062">
+      <type name="int"/>
+    </constant>
+    <constant name="Acircumflexhook" value="16785064">
+      <type name="int"/>
+    </constant>
+    <constant name="Acircumflextilde" value="16785066">
+      <type name="int"/>
+    </constant>
+    <constant name="AddFavorite" value="269025081">
+      <type name="int"/>
+    </constant>
+    <constant name="Adiaeresis" value="196">
+      <type name="int"/>
+    </constant>
+    <constant name="Agrave" value="192">
+      <type name="int"/>
+    </constant>
+    <constant name="Ahook" value="16785058">
+      <type name="int"/>
+    </constant>
+    <constant name="Alt_L" value="65513">
+      <type name="int"/>
+    </constant>
+    <constant name="Alt_R" value="65514">
+      <type name="int"/>
+    </constant>
+    <constant name="Amacron" value="960">
+      <type name="int"/>
+    </constant>
+    <constant name="Aogonek" value="417">
+      <type name="int"/>
+    </constant>
+    <class name="AppLaunchContext"
+           c:type="GdkAppLaunchContext"
+           parent="Gio.AppLaunchContext"
+           glib:type-name="GdkAppLaunchContext"
+           glib:get-type="gdk_app_launch_context_get_type"
+           glib:type-struct="AppLaunchContextClass">
+      <constructor name="new"
+                   c:identifier="gdk_app_launch_context_new"
+                   doc="Creates a new #GdkAppLaunchContext."
+                   version="2.14">
+        <return-value transfer-ownership="full"
+                      doc="a new #GdkAppLaunchContext">
+          <type name="AppLaunchContext" c:type="GdkAppLaunchContext*"/>
+        </return-value>
+      </constructor>
+      <method name="set_display"
+              c:identifier="gdk_app_launch_context_set_display"
+              doc="Sets the display on which applications will be launched when
+using this context. See also gdk_app_launch_context_set_screen()."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="a #GdkDisplay">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_screen"
+              c:identifier="gdk_app_launch_context_set_screen"
+              doc="Sets the screen on which applications will be launched when
+using this context. See also gdk_app_launch_context_set_display().
+If both @screen and @display are set, the @screen takes priority.
+If neither @screen or @display are set, the default screen and
+display are used."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     doc="a #GdkScreen">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_desktop"
+              c:identifier="gdk_app_launch_context_set_desktop"
+              doc="Sets the workspace on which applications will be launched when
+using this context when running under a window manager that 
+supports multiple workspaces, as described in the 
+&lt;ulink url=&quot;http://www.freedesktop.org/Standards/wm-spec&quot;&gt;Extended 
+Window Manager Hints&lt;/ulink&gt;. 
+When the workspace is not specified or @desktop is set to -1, 
+it is up to the window manager to pick one, typically it will
+be the current workspace."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="desktop"
+                     transfer-ownership="none"
+                     doc="the number of a workspace, or -1">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_timestamp"
+              c:identifier="gdk_app_launch_context_set_timestamp"
+              doc="Sets the timestamp of @context. The timestamp should ideally
+be taken from the event that triggered the launch. 
+Window managers can use this information to avoid moving the
+focus to the newly launched application when the user is busy
+typing in another window. This is also known as &apos;focus stealing
+prevention&apos;."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="timestamp"
+                     transfer-ownership="none"
+                     doc="a timestamp">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_icon"
+              c:identifier="gdk_app_launch_context_set_icon"
+              doc="Sets the icon for applications that are launched with this
+context.
+Window Managers can use this information when displaying startup
+notification.
+See also gdk_app_launch_context_set_icon_name()."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="icon"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #GIcon, or %NULL">
+            <type name="Gio.Icon" c:type="GIcon*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_icon_name"
+              c:identifier="gdk_app_launch_context_set_icon_name"
+              doc="Sets the icon for applications that are launched with this context. 
+The @icon_name will be interpreted in the same way as the Icon field 
+in desktop files. See also gdk_app_launch_context_set_icon(). 
+If both @icon and @icon_name are set, the @icon_name takes priority.
+If neither @icon or @icon_name is set, the icon is taken from either 
+the file that is passed to launched application or from the #GAppInfo 
+for the launched application itself."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="icon_name"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="an icon name, or %NULL">
+            <type name="utf8" c:type="char*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <field name="parent_instance">
+        <type name="Gio.AppLaunchContext" c:type="GAppLaunchContext"/>
+      </field>
+      <field name="priv">
+        <type name="AppLaunchContextPrivate"
+              c:type="GdkAppLaunchContextPrivate*"/>
+      </field>
+    </class>
+    <record name="AppLaunchContextClass"
+            c:type="GdkAppLaunchContextClass"
+            glib:is-gtype-struct-for="AppLaunchContext">
+      <field name="parent_class">
+        <type name="Gio.AppLaunchContextClass"
+              c:type="GAppLaunchContextClass"/>
+      </field>
+    </record>
+    <record name="AppLaunchContextPrivate" c:type="GdkAppLaunchContextPrivate">
+    </record>
+    <constant name="ApplicationLeft" value="269025104">
+      <type name="int"/>
+    </constant>
+    <constant name="ApplicationRight" value="269025105">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_0" value="16778848">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_1" value="16778849">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_2" value="16778850">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_3" value="16778851">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_4" value="16778852">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_5" value="16778853">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_6" value="16778854">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_7" value="16778855">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_8" value="16778856">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_9" value="16778857">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_ain" value="1497">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_alef" value="1479">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_alefmaksura" value="1513">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_beh" value="1480">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_comma" value="1452">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_dad" value="1494">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_dal" value="1487">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_damma" value="1519">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_dammatan" value="1516">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_ddal" value="16778888">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_farsi_yeh" value="16778956">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_fatha" value="1518">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_fathatan" value="1515">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_feh" value="1505">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_fullstop" value="16778964">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_gaf" value="16778927">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_ghain" value="1498">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_ha" value="1511">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hah" value="1485">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamza" value="1473">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamza_above" value="16778836">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamza_below" value="16778837">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamzaonalef" value="1475">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamzaonwaw" value="1476">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamzaonyeh" value="1478">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_hamzaunderalef" value="1477">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_heh" value="1511">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_heh_doachashmee" value="16778942">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_heh_goal" value="16778945">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_jeem" value="1484">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_jeh" value="16778904">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_kaf" value="1507">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_kasra" value="1520">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_kasratan" value="1517">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_keheh" value="16778921">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_khah" value="1486">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_lam" value="1508">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_madda_above" value="16778835">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_maddaonalef" value="1474">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_meem" value="1509">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_noon" value="1510">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_noon_ghunna" value="16778938">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_peh" value="16778878">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_percent" value="16778858">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_qaf" value="1506">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_question_mark" value="1471">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_ra" value="1489">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_rreh" value="16778897">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_sad" value="1493">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_seen" value="1491">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_semicolon" value="1467">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_shadda" value="1521">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_sheen" value="1492">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_sukun" value="1522">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_superscript_alef" value="16778864">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_tah" value="1495">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_tatweel" value="1504">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_tcheh" value="16778886">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_teh" value="1482">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_tehmarbuta" value="1481">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_thal" value="1488">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_theh" value="1483">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_tteh" value="16778873">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_veh" value="16778916">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_waw" value="1512">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_yeh" value="1514">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_yeh_baree" value="16778962">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_zah" value="1496">
+      <type name="int"/>
+    </constant>
+    <constant name="Arabic_zain" value="1490">
+      <type name="int"/>
+    </constant>
+    <constant name="Aring" value="197">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_AT" value="16778552">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_AYB" value="16778545">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_BEN" value="16778546">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_CHA" value="16778569">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_DA" value="16778548">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_DZA" value="16778561">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_E" value="16778551">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_FE" value="16778582">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_GHAT" value="16778562">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_GIM" value="16778547">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_HI" value="16778565">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_HO" value="16778560">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_INI" value="16778555">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_JE" value="16778571">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_KE" value="16778580">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_KEN" value="16778559">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_KHE" value="16778557">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_LYUN" value="16778556">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_MEN" value="16778564">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_NU" value="16778566">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_O" value="16778581">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_PE" value="16778570">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_PYUR" value="16778579">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_RA" value="16778572">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_RE" value="16778576">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_SE" value="16778573">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_SHA" value="16778567">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_TCHE" value="16778563">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_TO" value="16778553">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_TSA" value="16778558">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_TSO" value="16778577">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_TYUN" value="16778575">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_VEV" value="16778574">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_VO" value="16778568">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_VYUN" value="16778578">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_YECH" value="16778549">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ZA" value="16778550">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ZHE" value="16778554">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_accent" value="16778587">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_amanak" value="16778588">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_apostrophe" value="16778586">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_at" value="16778600">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ayb" value="16778593">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ben" value="16778594">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_but" value="16778589">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_cha" value="16778617">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_da" value="16778596">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_dza" value="16778609">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_e" value="16778599">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_exclam" value="16778588">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_fe" value="16778630">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_full_stop" value="16778633">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ghat" value="16778610">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_gim" value="16778595">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_hi" value="16778613">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ho" value="16778608">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_hyphen" value="16778634">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ini" value="16778603">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_je" value="16778619">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ke" value="16778628">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ken" value="16778607">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_khe" value="16778605">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ligature_ew" value="16778631">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_lyun" value="16778604">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_men" value="16778612">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_nu" value="16778614">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_o" value="16778629">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_paruyk" value="16778590">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_pe" value="16778618">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_pyur" value="16778627">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_question" value="16778590">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_ra" value="16778620">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_re" value="16778624">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_se" value="16778621">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_separation_mark" value="16778589">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_sha" value="16778615">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_shesht" value="16778587">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_tche" value="16778611">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_to" value="16778601">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_tsa" value="16778606">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_tso" value="16778625">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_tyun" value="16778623">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_verjaket" value="16778633">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_vev" value="16778622">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_vo" value="16778616">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_vyun" value="16778626">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_yech" value="16778597">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_yentamna" value="16778634">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_za" value="16778598">
+      <type name="int"/>
+    </constant>
+    <constant name="Armenian_zhe" value="16778602">
+      <type name="int"/>
+    </constant>
+    <constant name="Atilde" value="195">
+      <type name="int"/>
+    </constant>
+    <record name="Atom" c:type="GdkAtom" disguised="1">
+      <method name="name" c:identifier="gdk_atom_name">
+        <return-value transfer-ownership="full">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+      </method>
+    </record>
+    <constant name="AudibleBell_Enable" value="65146">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioCycleTrack" value="269025179">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioForward" value="269025175">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioLowerVolume" value="269025041">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioMedia" value="269025074">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioMute" value="269025042">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioNext" value="269025047">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioPause" value="269025073">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioPlay" value="269025044">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioPrev" value="269025046">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioRaiseVolume" value="269025043">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioRandomPlay" value="269025177">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioRecord" value="269025052">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioRepeat" value="269025176">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioRewind" value="269025086">
+      <type name="int"/>
+    </constant>
+    <constant name="AudioStop" value="269025045">
+      <type name="int"/>
+    </constant>
+    <constant name="Away" value="269025165">
+      <type name="int"/>
+    </constant>
+    <enumeration name="AxisUse"
+                 glib:type-name="GdkAxisUse"
+                 glib:get-type="gdk_axis_use_get_type"
+                 c:type="GdkAxisUse">
+      <member name="ignore"
+              value="0"
+              c:identifier="GDK_AXIS_IGNORE"
+              glib:nick="ignore"/>
+      <member name="x" value="1" c:identifier="GDK_AXIS_X" glib:nick="x"/>
+      <member name="y" value="2" c:identifier="GDK_AXIS_Y" glib:nick="y"/>
+      <member name="pressure"
+              value="3"
+              c:identifier="GDK_AXIS_PRESSURE"
+              glib:nick="pressure"/>
+      <member name="xtilt"
+              value="4"
+              c:identifier="GDK_AXIS_XTILT"
+              glib:nick="xtilt"/>
+      <member name="ytilt"
+              value="5"
+              c:identifier="GDK_AXIS_YTILT"
+              glib:nick="ytilt"/>
+      <member name="wheel"
+              value="6"
+              c:identifier="GDK_AXIS_WHEEL"
+              glib:nick="wheel"/>
+      <member name="last"
+              value="7"
+              c:identifier="GDK_AXIS_LAST"
+              glib:nick="last"/>
+    </enumeration>
+    <constant name="B" value="66">
+      <type name="int"/>
+    </constant>
+    <constant name="Babovedot" value="16784898">
+      <type name="int"/>
+    </constant>
+    <constant name="Back" value="269025062">
+      <type name="int"/>
+    </constant>
+    <constant name="BackForward" value="269025087">
+      <type name="int"/>
+    </constant>
+    <constant name="BackSpace" value="65288">
+      <type name="int"/>
+    </constant>
+    <constant name="Battery" value="269025171">
+      <type name="int"/>
+    </constant>
+    <constant name="Begin" value="65368">
+      <type name="int"/>
+    </constant>
+    <record name="Bitmap" c:type="GdkBitmap">
+    </record>
+    <constant name="Blue" value="269025190">
+      <type name="int"/>
+    </constant>
+    <constant name="Bluetooth" value="269025172">
+      <type name="int"/>
+    </constant>
+    <constant name="Book" value="269025106">
+      <type name="int"/>
+    </constant>
+    <constant name="BounceKeys_Enable" value="65140">
+      <type name="int"/>
+    </constant>
+    <constant name="Break" value="65387">
+      <type name="int"/>
+    </constant>
+    <constant name="BrightnessAdjust" value="269025083">
+      <type name="int"/>
+    </constant>
+    <constant name="Byelorussian_SHORTU" value="1726">
+      <type name="int"/>
+    </constant>
+    <constant name="Byelorussian_shortu" value="1710">
+      <type name="int"/>
+    </constant>
+    <enumeration name="ByteOrder"
+                 glib:type-name="GdkByteOrder"
+                 glib:get-type="gdk_byte_order_get_type"
+                 c:type="GdkByteOrder">
+      <member name="lsb_first"
+              value="0"
+              c:identifier="GDK_LSB_FIRST"
+              glib:nick="lsb-first"/>
+      <member name="msb_first"
+              value="1"
+              c:identifier="GDK_MSB_FIRST"
+              glib:nick="msb-first"/>
+    </enumeration>
+    <constant name="C" value="67">
+      <type name="int"/>
+    </constant>
+    <constant name="CD" value="269025107">
+      <type name="int"/>
+    </constant>
+    <constant name="CURRENT_TIME" value="0">
+      <type name="int"/>
+    </constant>
+    <constant name="Cabovedot" value="709">
+      <type name="int"/>
+    </constant>
+    <constant name="Cacute" value="454">
+      <type name="int"/>
+    </constant>
+    <constant name="Calculator" value="269025053">
+      <type name="int"/>
+    </constant>
+    <constant name="Calendar" value="269025056">
+      <type name="int"/>
+    </constant>
+    <constant name="Cancel" value="65385">
+      <type name="int"/>
+    </constant>
+    <enumeration name="CapStyle"
+                 glib:type-name="GdkCapStyle"
+                 glib:get-type="gdk_cap_style_get_type"
+                 c:type="GdkCapStyle">
+      <member name="not_last"
+              value="0"
+              c:identifier="GDK_CAP_NOT_LAST"
+              glib:nick="not-last"/>
+      <member name="butt"
+              value="1"
+              c:identifier="GDK_CAP_BUTT"
+              glib:nick="butt"/>
+      <member name="round"
+              value="2"
+              c:identifier="GDK_CAP_ROUND"
+              glib:nick="round"/>
+      <member name="projecting"
+              value="3"
+              c:identifier="GDK_CAP_PROJECTING"
+              glib:nick="projecting"/>
+    </enumeration>
+    <constant name="Caps_Lock" value="65509">
+      <type name="int"/>
+    </constant>
+    <constant name="Ccaron" value="456">
+      <type name="int"/>
+    </constant>
+    <constant name="Ccedilla" value="199">
+      <type name="int"/>
+    </constant>
+    <constant name="Ccircumflex" value="710">
+      <type name="int"/>
+    </constant>
+    <constant name="Clear" value="65291">
+      <type name="int"/>
+    </constant>
+    <constant name="ClearGrab" value="269024801">
+      <type name="int"/>
+    </constant>
+    <constant name="Close" value="269025110">
+      <type name="int"/>
+    </constant>
+    <constant name="Codeinput" value="65335">
+      <type name="int"/>
+    </constant>
+    <constant name="ColonSign" value="16785569">
+      <type name="int"/>
+    </constant>
+    <record name="Color"
+            c:type="GdkColor"
+            glib:type-name="GdkColor"
+            glib:get-type="gdk_color_get_type">
+      <field name="pixel" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="red" writable="1">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="green" writable="1">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="blue" writable="1">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <method name="copy"
+              c:identifier="gdk_color_copy"
+              doc="Makes a copy of a color structure. The result
+must be freed using gdk_color_free().">
+        <return-value transfer-ownership="full" doc="a copy of @color.">
+          <type name="Color" c:type="GdkColor*"/>
+        </return-value>
+      </method>
+      <method name="free"
+              c:identifier="gdk_color_free"
+              doc="Frees a color structure created with 
+gdk_color_copy().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="hash"
+              c:identifier="gdk_color_hash"
+              doc="A hash function suitable for using for a hash
+table that stores #GdkColor&apos;s.">
+        <return-value transfer-ownership="none"
+                      doc="The hash function applied to @colora">
+          <type name="uint" c:type="guint"/>
+        </return-value>
+      </method>
+      <method name="equal"
+              c:identifier="gdk_color_equal"
+              doc="Compares two colors. ">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the two colors compare equal">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="colorb"
+                     transfer-ownership="none"
+                     doc="another #GdkColor.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="to_string"
+              c:identifier="gdk_color_to_string"
+              doc="Returns a textual specification of @color in the hexadecimal form
+&lt;literal&gt;&amp;num;rrrrggggbbbb&lt;/literal&gt;, where &lt;literal&gt;r&lt;/literal&gt;,
+&lt;literal&gt;g&lt;/literal&gt; and &lt;literal&gt;b&lt;/literal&gt; are hex digits
+representing the red, green and blue components respectively."
+              version="2.12">
+        <return-value transfer-ownership="full"
+                      doc="a newly-allocated text string">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+      </method>
+    </record>
+    <class name="Colormap"
+           c:type="GdkColormap"
+           parent="GObject.Object"
+           glib:type-name="GdkColormap"
+           glib:get-type="gdk_colormap_get_type"
+           glib:type-struct="ColormapClass">
+      <constructor name="new"
+                   c:identifier="gdk_colormap_new"
+                   doc="Creates a new colormap for the given visual.">
+        <return-value transfer-ownership="full" doc="the new #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="visual"
+                     transfer-ownership="none"
+                     doc="a #GdkVisual.">
+            <type name="Visual" c:type="GdkVisual*"/>
+          </parameter>
+          <parameter name="allocate"
+                     transfer-ownership="none"
+                     doc="if %TRUE, the newly created colormap will be a private colormap, and all colors in it will be allocated for the applications use.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <function name="get_system"
+                c:identifier="gdk_colormap_get_system"
+                doc="Gets the system&apos;s default colormap for the default screen. (See
+gdk_colormap_get_system_for_screen ())">
+        <return-value transfer-ownership="full" doc="the default colormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </function>
+      <function name="get_system_size"
+                c:identifier="gdk_colormap_get_system_size"
+                doc="Returns the size of the system&apos;s default colormap.
+(See the description of struct #GdkColormap for an
+explanation of the size of a colormap.)">
+        <return-value transfer-ownership="none"
+                      doc="the size of the system&apos;s default colormap.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </function>
+      <method name="ref"
+              c:identifier="gdk_colormap_ref"
+              doc="Deprecated function; use g_object_ref() instead."
+              deprecated="Use g_object_ref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="full" doc="the colormap">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_colormap_unref"
+              doc="Deprecated function; use g_object_unref() instead."
+              deprecated="Use g_object_unref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_screen"
+              c:identifier="gdk_colormap_get_screen"
+              doc="Gets the screen for which this colormap was created."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the screen for which this colormap was created.">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </method>
+      <method name="change"
+              c:identifier="gdk_colormap_change"
+              doc="Changes the value of the first @ncolors in a private colormap
+to match the values in the &lt;structfield&gt;colors&lt;/structfield&gt;
+array in the colormap. This function is obsolete and
+should not be used. See gdk_color_change().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="ncolors"
+                     transfer-ownership="none"
+                     doc="the number of colors to change.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="alloc_colors"
+              c:identifier="gdk_colormap_alloc_colors"
+              doc="Allocates colors from a colormap.
+allocated.">
+        <return-value transfer-ownership="none"
+                      doc="The number of colors that were not successfully">
+          <type name="int" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="colors"
+                     transfer-ownership="none"
+                     doc="The color values to allocate. On return, the pixel values for allocated colors will be filled in.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="n_colors"
+                     transfer-ownership="none"
+                     doc="The number of colors in @colors.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="writeable"
+                     transfer-ownership="none"
+                     doc="If %TRUE, the colors are allocated writeable (their values can later be changed using gdk_color_change()). Writeable colors cannot be shared between applications.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="best_match"
+                     transfer-ownership="none"
+                     doc="If %TRUE, GDK will attempt to do matching against existing colors if the colors cannot be allocated as requested.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="success"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="An array of length @ncolors. On return, this indicates whether the corresponding color in @colors was successfully allocated or not.">
+            <type name="boolean" c:type="gboolean*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="alloc_color"
+              c:identifier="gdk_colormap_alloc_color"
+              doc="Allocates a single color from a colormap.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the allocation succeeded.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="the color to allocate. On return the &lt;structfield&gt;pixel&lt;/structfield&gt; field will be filled in if allocation succeeds.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="writeable"
+                     transfer-ownership="none"
+                     doc="If %TRUE, the color is allocated writeable (their values can later be changed using gdk_color_change()). Writeable colors cannot be shared between applications.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="best_match"
+                     transfer-ownership="none"
+                     doc="If %TRUE, GDK will attempt to do matching against existing colors if the color cannot be allocated as requested.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="free_colors"
+              c:identifier="gdk_colormap_free_colors"
+              doc="Frees previously allocated colors.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="colors"
+                     transfer-ownership="none"
+                     doc="the colors to free.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="n_colors"
+                     transfer-ownership="none"
+                     doc="the number of colors in @colors.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="query_color"
+              c:identifier="gdk_colormap_query_color"
+              doc="Locates the RGB color in @colormap corresponding to the given
+hardware pixel @pixel. @pixel must be a valid pixel in the
+colormap; it&apos;s a programmer error to call this function with a
+pixel which is not in the colormap. Hardware pixels are normally
+obtained from gdk_colormap_alloc_colors(), or from a #GdkImage. (A
+#GdkImage contains image data in hardware format, a #GdkPixbuf
+contains image data in a canonical 24-bit RGB format.)
+This function is rarely useful; it&apos;s used for example to
+implement the eyedropper feature in #GtkColorSelection.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="pixel"
+                     transfer-ownership="none"
+                     doc="pixel value in hardware display format">
+            <type name="ulong" c:type="gulong"/>
+          </parameter>
+          <parameter name="result"
+                     transfer-ownership="none"
+                     doc="#GdkColor with red, green, blue fields initialized">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_visual"
+              c:identifier="gdk_colormap_get_visual"
+              doc="Returns the visual for which a given colormap was created.">
+        <return-value transfer-ownership="full"
+                      doc="the visual of the colormap.">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="size">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="colors">
+        <type name="Color" c:type="GdkColor*"/>
+      </field>
+      <field name="visual">
+        <type name="Visual" c:type="GdkVisual*"/>
+      </field>
+      <field name="windowing_data">
+        <type name="any" c:type="gpointer"/>
+      </field>
+    </class>
+    <record name="ColormapClass"
+            c:type="GdkColormapClass"
+            glib:is-gtype-struct-for="Colormap">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+    </record>
+    <constant name="Community" value="269025085">
+      <type name="int"/>
+    </constant>
+    <constant name="ContrastAdjust" value="269025058">
+      <type name="int"/>
+    </constant>
+    <constant name="Control_L" value="65507">
+      <type name="int"/>
+    </constant>
+    <constant name="Control_R" value="65508">
+      <type name="int"/>
+    </constant>
+    <constant name="Copy" value="269025111">
+      <type name="int"/>
+    </constant>
+    <enumeration name="CrossingMode"
+                 glib:type-name="GdkCrossingMode"
+                 glib:get-type="gdk_crossing_mode_get_type"
+                 c:type="GdkCrossingMode">
+      <member name="normal"
+              value="0"
+              c:identifier="GDK_CROSSING_NORMAL"
+              glib:nick="normal"/>
+      <member name="grab"
+              value="1"
+              c:identifier="GDK_CROSSING_GRAB"
+              glib:nick="grab"/>
+      <member name="ungrab"
+              value="2"
+              c:identifier="GDK_CROSSING_UNGRAB"
+              glib:nick="ungrab"/>
+      <member name="gtk_grab"
+              value="3"
+              c:identifier="GDK_CROSSING_GTK_GRAB"
+              glib:nick="gtk-grab"/>
+      <member name="gtk_ungrab"
+              value="4"
+              c:identifier="GDK_CROSSING_GTK_UNGRAB"
+              glib:nick="gtk-ungrab"/>
+      <member name="state_changed"
+              value="5"
+              c:identifier="GDK_CROSSING_STATE_CHANGED"
+              glib:nick="state-changed"/>
+    </enumeration>
+    <constant name="CruzeiroSign" value="16785570">
+      <type name="int"/>
+    </constant>
+    <record name="Cursor"
+            c:type="GdkCursor"
+            glib:type-name="GdkCursor"
+            glib:get-type="gdk_cursor_get_type">
+      <field name="type" writable="1">
+        <type name="CursorType" c:type="GdkCursorType"/>
+      </field>
+      <field name="ref_count" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <constructor name="new_for_display"
+                   c:identifier="gdk_cursor_new_for_display"
+                   doc="Creates a new cursor from the set of builtin cursors.
+Some useful ones are:
+&lt;itemizedlist&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;right_ptr.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_RIGHT_PTR (right-facing arrow)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;crosshair.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_CROSSHAIR (crosshair)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;xterm.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_XTERM (I-beam)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;watch.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_WATCH (busy)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;fleur.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_FLEUR (for moving objects)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;hand1.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_HAND1 (a right-pointing hand)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;hand2.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_HAND2 (a left-pointing hand)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;left_side.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_LEFT_SIDE (resize left side)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;right_side.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_RIGHT_SIDE (resize right side)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;top_left_corner.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_TOP_LEFT_CORNER (resize northwest corner)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;top_right_corner.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_TOP_RIGHT_CORNER (resize northeast corner)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;bottom_left_corner.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_BOTTOM_LEFT_CORNER (resize southwest corner)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;bottom_right_corner.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_BOTTOM_RIGHT_CORNER (resize southeast corner)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;top_side.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_TOP_SIDE (resize top side)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;bottom_side.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_BOTTOM_SIDE (resize bottom side)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;sb_h_double_arrow.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_SB_H_DOUBLE_ARROW (move vertical splitter)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+&lt;inlinegraphic format=&quot;PNG&quot; fileref=&quot;sb_v_double_arrow.png&quot;&gt;&lt;/inlinegraphic&gt; #GDK_SB_V_DOUBLE_ARROW (move horizontal splitter)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+#GDK_BLANK_CURSOR (Blank cursor). Since 2.16
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/itemizedlist&gt;"
+                   version="2.2">
+        <return-value transfer-ownership="full" doc="a new #GdkCursor">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the #GdkDisplay for which the cursor will be created">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="cursor_type"
+                     transfer-ownership="none"
+                     doc="cursor to create">
+            <type name="CursorType" c:type="GdkCursorType"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new"
+                   c:identifier="gdk_cursor_new"
+                   doc="Creates a new cursor from the set of builtin cursors for the default display.
+See gdk_cursor_new_for_display().
+To make the cursor invisible, use %GDK_BLANK_CURSOR.">
+        <return-value transfer-ownership="full" doc="a new #GdkCursor">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="cursor_type"
+                     transfer-ownership="none"
+                     doc="cursor to create">
+            <type name="CursorType" c:type="GdkCursorType"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_pixmap"
+                   c:identifier="gdk_cursor_new_from_pixmap"
+                   doc="Creates a new cursor from a given pixmap and mask. Both the pixmap and mask
+must have a depth of 1 (i.e. each pixel has only 2 values - on or off).
+The standard cursor size is 16 by 16 pixels. You can create a bitmap 
+from inline data as in the below example.
+&lt;example&gt;&lt;title&gt;Creating a custom cursor&lt;/title&gt;
+&lt;programlisting&gt;
+/&lt;!-- --&gt;* This data is in X bitmap format, and can be created with the &apos;bitmap&apos;
+utility. *&lt;!-- --&gt;/
+&amp;num;define cursor1_width 16
+&amp;num;define cursor1_height 16
+static unsigned char cursor1_bits[] = {
+0x80, 0x01, 0x40, 0x02, 0x20, 0x04, 0x10, 0x08, 0x08, 0x10, 0x04, 0x20,
+0x82, 0x41, 0x41, 0x82, 0x41, 0x82, 0x82, 0x41, 0x04, 0x20, 0x08, 0x10,
+0x10, 0x08, 0x20, 0x04, 0x40, 0x02, 0x80, 0x01};
+static unsigned char cursor1mask_bits[] = {
+0x80, 0x01, 0xc0, 0x03, 0x60, 0x06, 0x30, 0x0c, 0x18, 0x18, 0x8c, 0x31,
+0xc6, 0x63, 0x63, 0xc6, 0x63, 0xc6, 0xc6, 0x63, 0x8c, 0x31, 0x18, 0x18,
+0x30, 0x0c, 0x60, 0x06, 0xc0, 0x03, 0x80, 0x01};
+GdkCursor *cursor;
+GdkPixmap *source, *mask;
+GdkColor fg = { 0, 65535, 0, 0 }; /&lt;!-- --&gt;* Red. *&lt;!-- --&gt;/
+GdkColor bg = { 0, 0, 0, 65535 }; /&lt;!-- --&gt;* Blue. *&lt;!-- --&gt;/
+source = gdk_bitmap_create_from_data (NULL, cursor1_bits,
+cursor1_width, cursor1_height);
+mask = gdk_bitmap_create_from_data (NULL, cursor1mask_bits,
+cursor1_width, cursor1_height);
+cursor = gdk_cursor_new_from_pixmap (source, mask, &amp;amp;fg, &amp;amp;bg, 8, 8);
+g_object_unref (source);
+g_object_unref (mask);
+gdk_window_set_cursor (widget-&gt;window, cursor);
+&lt;/programlisting&gt;
+&lt;/example&gt;">
+        <return-value transfer-ownership="full" doc="a new #GdkCursor.">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="source"
+                     transfer-ownership="none"
+                     doc="the pixmap specifying the cursor.">
+            <type name="Pixmap" c:type="GdkPixmap*"/>
+          </parameter>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     doc="the pixmap specifying the mask, which must be the same size as">
+            <type name="Pixmap" c:type="GdkPixmap*"/>
+          </parameter>
+          <parameter name="fg"
+                     transfer-ownership="none"
+                     doc="the foreground color, used for the bits in the source which are 1. The color does not have to be allocated first.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="bg"
+                     transfer-ownership="none"
+                     doc="the background color, used for the bits in the source which are 0. The color does not have to be allocated first.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the horizontal offset of the &apos;hotspot&apos; of the cursor.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the vertical offset of the &apos;hotspot&apos; of the cursor.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_pixbuf"
+                   c:identifier="gdk_cursor_new_from_pixbuf"
+                   doc="Creates a new cursor from a pixbuf. 
+Not all GDK backends support RGBA cursors. If they are not 
+supported, a monochrome approximation will be displayed. 
+The functions gdk_display_supports_cursor_alpha() and 
+gdk_display_supports_cursor_color() can be used to determine
+whether RGBA cursors are supported; 
+gdk_display_get_default_cursor_size() and 
+gdk_display_get_maximal_cursor_size() give information about 
+cursor sizes.
+On the X backend, support for RGBA cursors requires a
+sufficently new version of the X Render extension. "
+                   version="2.4">
+        <return-value transfer-ownership="full" doc="a new #GdkCursor.">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the #GdkDisplay for which the cursor will be created">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="pixbuf"
+                     transfer-ownership="none"
+                     doc="the #GdkPixbuf containing the cursor image">
+            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the horizontal offset of the &apos;hotspot&apos; of the cursor.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the vertical offset of the &apos;hotspot&apos; of the cursor.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_name"
+                   c:identifier="gdk_cursor_new_from_name"
+                   doc="Creates a new cursor by looking up @name in the current cursor
+theme. 
+the given name "
+                   version="2.8">
+        <return-value transfer-ownership="full"
+                      doc="a new #GdkCursor, or %NULL if there is no cursor with">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the #GdkDisplay for which the cursor will be created">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="name"
+                     transfer-ownership="none"
+                     doc="the name of the cursor">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="get_display" c:identifier="gdk_cursor_get_display">
+        <return-value transfer-ownership="full">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </method>
+      <method name="ref"
+              c:identifier="gdk_cursor_ref"
+              doc="Adds a reference to @cursor.">
+        <return-value transfer-ownership="full"
+                      doc="Same @cursor that was passed in">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_cursor_unref"
+              doc="Removes a reference from @cursor, deallocating the cursor
+if no references remain.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_image"
+              c:identifier="gdk_cursor_get_image"
+              doc="Returns a #GdkPixbuf with the image used to display the cursor.
+Note that depending on the capabilities of the windowing system and 
+on the cursor, GDK may not be able to obtain the image data. In this 
+case, %NULL is returned."
+              version="2.8">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkPixbuf representing @cursor, or %NULL">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </return-value>
+      </method>
+      <method name="get_cursor_type"
+              c:identifier="gdk_cursor_get_cursor_type"
+              doc="Returns the cursor type for this cursor."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkCursorType">
+          <type name="CursorType" c:type="GdkCursorType"/>
+        </return-value>
+      </method>
+    </record>
+    <enumeration name="CursorType"
+                 glib:type-name="GdkCursorType"
+                 glib:get-type="gdk_cursor_type_get_type"
+                 c:type="GdkCursorType">
+      <member name="x_cursor"
+              value="0"
+              c:identifier="GDK_X_CURSOR"
+              glib:nick="x-cursor"/>
+      <member name="arrow"
+              value="2"
+              c:identifier="GDK_ARROW"
+              glib:nick="arrow"/>
+      <member name="based_arrow_down"
+              value="4"
+              c:identifier="GDK_BASED_ARROW_DOWN"
+              glib:nick="based-arrow-down"/>
+      <member name="based_arrow_up"
+              value="6"
+              c:identifier="GDK_BASED_ARROW_UP"
+              glib:nick="based-arrow-up"/>
+      <member name="boat" value="8" c:identifier="GDK_BOAT" glib:nick="boat"/>
+      <member name="bogosity"
+              value="10"
+              c:identifier="GDK_BOGOSITY"
+              glib:nick="bogosity"/>
+      <member name="bottom_left_corner"
+              value="12"
+              c:identifier="GDK_BOTTOM_LEFT_CORNER"
+              glib:nick="bottom-left-corner"/>
+      <member name="bottom_right_corner"
+              value="14"
+              c:identifier="GDK_BOTTOM_RIGHT_CORNER"
+              glib:nick="bottom-right-corner"/>
+      <member name="bottom_side"
+              value="16"
+              c:identifier="GDK_BOTTOM_SIDE"
+              glib:nick="bottom-side"/>
+      <member name="bottom_tee"
+              value="18"
+              c:identifier="GDK_BOTTOM_TEE"
+              glib:nick="bottom-tee"/>
+      <member name="box_spiral"
+              value="20"
+              c:identifier="GDK_BOX_SPIRAL"
+              glib:nick="box-spiral"/>
+      <member name="center_ptr"
+              value="22"
+              c:identifier="GDK_CENTER_PTR"
+              glib:nick="center-ptr"/>
+      <member name="circle"
+              value="24"
+              c:identifier="GDK_CIRCLE"
+              glib:nick="circle"/>
+      <member name="clock"
+              value="26"
+              c:identifier="GDK_CLOCK"
+              glib:nick="clock"/>
+      <member name="coffee_mug"
+              value="28"
+              c:identifier="GDK_COFFEE_MUG"
+              glib:nick="coffee-mug"/>
+      <member name="cross"
+              value="30"
+              c:identifier="GDK_CROSS"
+              glib:nick="cross"/>
+      <member name="cross_reverse"
+              value="32"
+              c:identifier="GDK_CROSS_REVERSE"
+              glib:nick="cross-reverse"/>
+      <member name="crosshair"
+              value="34"
+              c:identifier="GDK_CROSSHAIR"
+              glib:nick="crosshair"/>
+      <member name="diamond_cross"
+              value="36"
+              c:identifier="GDK_DIAMOND_CROSS"
+              glib:nick="diamond-cross"/>
+      <member name="dot" value="38" c:identifier="GDK_DOT" glib:nick="dot"/>
+      <member name="dotbox"
+              value="40"
+              c:identifier="GDK_DOTBOX"
+              glib:nick="dotbox"/>
+      <member name="double_arrow"
+              value="42"
+              c:identifier="GDK_DOUBLE_ARROW"
+              glib:nick="double-arrow"/>
+      <member name="draft_large"
+              value="44"
+              c:identifier="GDK_DRAFT_LARGE"
+              glib:nick="draft-large"/>
+      <member name="draft_small"
+              value="46"
+              c:identifier="GDK_DRAFT_SMALL"
+              glib:nick="draft-small"/>
+      <member name="draped_box"
+              value="48"
+              c:identifier="GDK_DRAPED_BOX"
+              glib:nick="draped-box"/>
+      <member name="exchange"
+              value="50"
+              c:identifier="GDK_EXCHANGE"
+              glib:nick="exchange"/>
+      <member name="fleur"
+              value="52"
+              c:identifier="GDK_FLEUR"
+              glib:nick="fleur"/>
+      <member name="gobbler"
+              value="54"
+              c:identifier="GDK_GOBBLER"
+              glib:nick="gobbler"/>
+      <member name="gumby"
+              value="56"
+              c:identifier="GDK_GUMBY"
+              glib:nick="gumby"/>
+      <member name="hand1"
+              value="58"
+              c:identifier="GDK_HAND1"
+              glib:nick="hand1"/>
+      <member name="hand2"
+              value="60"
+              c:identifier="GDK_HAND2"
+              glib:nick="hand2"/>
+      <member name="heart"
+              value="62"
+              c:identifier="GDK_HEART"
+              glib:nick="heart"/>
+      <member name="icon" value="64" c:identifier="GDK_ICON" glib:nick="icon"/>
+      <member name="iron_cross"
+              value="66"
+              c:identifier="GDK_IRON_CROSS"
+              glib:nick="iron-cross"/>
+      <member name="left_ptr"
+              value="68"
+              c:identifier="GDK_LEFT_PTR"
+              glib:nick="left-ptr"/>
+      <member name="left_side"
+              value="70"
+              c:identifier="GDK_LEFT_SIDE"
+              glib:nick="left-side"/>
+      <member name="left_tee"
+              value="72"
+              c:identifier="GDK_LEFT_TEE"
+              glib:nick="left-tee"/>
+      <member name="leftbutton"
+              value="74"
+              c:identifier="GDK_LEFTBUTTON"
+              glib:nick="leftbutton"/>
+      <member name="ll_angle"
+              value="76"
+              c:identifier="GDK_LL_ANGLE"
+              glib:nick="ll-angle"/>
+      <member name="lr_angle"
+              value="78"
+              c:identifier="GDK_LR_ANGLE"
+              glib:nick="lr-angle"/>
+      <member name="man" value="80" c:identifier="GDK_MAN" glib:nick="man"/>
+      <member name="middlebutton"
+              value="82"
+              c:identifier="GDK_MIDDLEBUTTON"
+              glib:nick="middlebutton"/>
+      <member name="mouse"
+              value="84"
+              c:identifier="GDK_MOUSE"
+              glib:nick="mouse"/>
+      <member name="pencil"
+              value="86"
+              c:identifier="GDK_PENCIL"
+              glib:nick="pencil"/>
+      <member name="pirate"
+              value="88"
+              c:identifier="GDK_PIRATE"
+              glib:nick="pirate"/>
+      <member name="plus" value="90" c:identifier="GDK_PLUS" glib:nick="plus"/>
+      <member name="question_arrow"
+              value="92"
+              c:identifier="GDK_QUESTION_ARROW"
+              glib:nick="question-arrow"/>
+      <member name="right_ptr"
+              value="94"
+              c:identifier="GDK_RIGHT_PTR"
+              glib:nick="right-ptr"/>
+      <member name="right_side"
+              value="96"
+              c:identifier="GDK_RIGHT_SIDE"
+              glib:nick="right-side"/>
+      <member name="right_tee"
+              value="98"
+              c:identifier="GDK_RIGHT_TEE"
+              glib:nick="right-tee"/>
+      <member name="rightbutton"
+              value="100"
+              c:identifier="GDK_RIGHTBUTTON"
+              glib:nick="rightbutton"/>
+      <member name="rtl_logo"
+              value="102"
+              c:identifier="GDK_RTL_LOGO"
+              glib:nick="rtl-logo"/>
+      <member name="sailboat"
+              value="104"
+              c:identifier="GDK_SAILBOAT"
+              glib:nick="sailboat"/>
+      <member name="sb_down_arrow"
+              value="106"
+              c:identifier="GDK_SB_DOWN_ARROW"
+              glib:nick="sb-down-arrow"/>
+      <member name="sb_h_double_arrow"
+              value="108"
+              c:identifier="GDK_SB_H_DOUBLE_ARROW"
+              glib:nick="sb-h-double-arrow"/>
+      <member name="sb_left_arrow"
+              value="110"
+              c:identifier="GDK_SB_LEFT_ARROW"
+              glib:nick="sb-left-arrow"/>
+      <member name="sb_right_arrow"
+              value="112"
+              c:identifier="GDK_SB_RIGHT_ARROW"
+              glib:nick="sb-right-arrow"/>
+      <member name="sb_up_arrow"
+              value="114"
+              c:identifier="GDK_SB_UP_ARROW"
+              glib:nick="sb-up-arrow"/>
+      <member name="sb_v_double_arrow"
+              value="116"
+              c:identifier="GDK_SB_V_DOUBLE_ARROW"
+              glib:nick="sb-v-double-arrow"/>
+      <member name="shuttle"
+              value="118"
+              c:identifier="GDK_SHUTTLE"
+              glib:nick="shuttle"/>
+      <member name="sizing"
+              value="120"
+              c:identifier="GDK_SIZING"
+              glib:nick="sizing"/>
+      <member name="spider"
+              value="122"
+              c:identifier="GDK_SPIDER"
+              glib:nick="spider"/>
+      <member name="spraycan"
+              value="124"
+              c:identifier="GDK_SPRAYCAN"
+              glib:nick="spraycan"/>
+      <member name="star"
+              value="126"
+              c:identifier="GDK_STAR"
+              glib:nick="star"/>
+      <member name="target"
+              value="128"
+              c:identifier="GDK_TARGET"
+              glib:nick="target"/>
+      <member name="tcross"
+              value="130"
+              c:identifier="GDK_TCROSS"
+              glib:nick="tcross"/>
+      <member name="top_left_arrow"
+              value="132"
+              c:identifier="GDK_TOP_LEFT_ARROW"
+              glib:nick="top-left-arrow"/>
+      <member name="top_left_corner"
+              value="134"
+              c:identifier="GDK_TOP_LEFT_CORNER"
+              glib:nick="top-left-corner"/>
+      <member name="top_right_corner"
+              value="136"
+              c:identifier="GDK_TOP_RIGHT_CORNER"
+              glib:nick="top-right-corner"/>
+      <member name="top_side"
+              value="138"
+              c:identifier="GDK_TOP_SIDE"
+              glib:nick="top-side"/>
+      <member name="top_tee"
+              value="140"
+              c:identifier="GDK_TOP_TEE"
+              glib:nick="top-tee"/>
+      <member name="trek"
+              value="142"
+              c:identifier="GDK_TREK"
+              glib:nick="trek"/>
+      <member name="ul_angle"
+              value="144"
+              c:identifier="GDK_UL_ANGLE"
+              glib:nick="ul-angle"/>
+      <member name="umbrella"
+              value="146"
+              c:identifier="GDK_UMBRELLA"
+              glib:nick="umbrella"/>
+      <member name="ur_angle"
+              value="148"
+              c:identifier="GDK_UR_ANGLE"
+              glib:nick="ur-angle"/>
+      <member name="watch"
+              value="150"
+              c:identifier="GDK_WATCH"
+              glib:nick="watch"/>
+      <member name="xterm"
+              value="152"
+              c:identifier="GDK_XTERM"
+              glib:nick="xterm"/>
+      <member name="last_cursor"
+              value="153"
+              c:identifier="GDK_LAST_CURSOR"
+              glib:nick="last-cursor"/>
+      <member name="blank_cursor"
+              value="-2"
+              c:identifier="GDK_BLANK_CURSOR"
+              glib:nick="blank-cursor"/>
+      <member name="cursor_is_pixmap"
+              value="-1"
+              c:identifier="GDK_CURSOR_IS_PIXMAP"
+              glib:nick="cursor-is-pixmap"/>
+    </enumeration>
+    <constant name="Cut" value="269025112">
+      <type name="int"/>
+    </constant>
+    <constant name="CycleAngle" value="269025180">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_A" value="1761">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_BE" value="1762">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_CHE" value="1790">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_CHE_descender" value="16778422">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_CHE_vertstroke" value="16778424">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_DE" value="1764">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_DZHE" value="1727">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_E" value="1788">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_EF" value="1766">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_EL" value="1772">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_EM" value="1773">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_EN" value="1774">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_EN_descender" value="16778402">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ER" value="1778">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ES" value="1779">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_GHE" value="1767">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_GHE_bar" value="16778386">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_HA" value="1768">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_HARDSIGN" value="1791">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_HA_descender" value="16778418">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_I" value="1769">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_IE" value="1765">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_IO" value="1715">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_I_macron" value="16778466">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_JE" value="1720">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_KA" value="1771">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_KA_descender" value="16778394">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_KA_vertstroke" value="16778396">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_LJE" value="1721">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_NJE" value="1722">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_O" value="1775">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_O_bar" value="16778472">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_PE" value="1776">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_SCHWA" value="16778456">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_SHA" value="1787">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_SHCHA" value="1789">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_SHHA" value="16778426">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_SHORTI" value="1770">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_SOFTSIGN" value="1784">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_TE" value="1780">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_TSE" value="1763">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_U" value="1781">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_U_macron" value="16778478">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_U_straight" value="16778414">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_U_straight_bar" value="16778416">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_VE" value="1783">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_YA" value="1777">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_YERU" value="1785">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_YU" value="1760">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ZE" value="1786">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ZHE" value="1782">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ZHE_descender" value="16778390">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_a" value="1729">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_be" value="1730">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_che" value="1758">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_che_descender" value="16778423">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_che_vertstroke" value="16778425">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_de" value="1732">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_dzhe" value="1711">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_e" value="1756">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ef" value="1734">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_el" value="1740">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_em" value="1741">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_en" value="1742">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_en_descender" value="16778403">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_er" value="1746">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_es" value="1747">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ghe" value="1735">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ghe_bar" value="16778387">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ha" value="1736">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ha_descender" value="16778419">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_hardsign" value="1759">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_i" value="1737">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_i_macron" value="16778467">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ie" value="1733">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_io" value="1699">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_je" value="1704">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ka" value="1739">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ka_descender" value="16778395">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ka_vertstroke" value="16778397">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_lje" value="1705">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_nje" value="1706">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_o" value="1743">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_o_bar" value="16778473">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_pe" value="1744">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_schwa" value="16778457">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_sha" value="1755">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_shcha" value="1757">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_shha" value="16778427">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_shorti" value="1738">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_softsign" value="1752">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_te" value="1748">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_tse" value="1731">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_u" value="1749">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_u_macron" value="16778479">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_u_straight" value="16778415">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_u_straight_bar" value="16778417">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ve" value="1751">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ya" value="1745">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_yeru" value="1753">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_yu" value="1728">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_ze" value="1754">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_zhe" value="1750">
+      <type name="int"/>
+    </constant>
+    <constant name="Cyrillic_zhe_descender" value="16778391">
+      <type name="int"/>
+    </constant>
+    <constant name="D" value="68">
+      <type name="int"/>
+    </constant>
+    <constant name="DOS" value="269025114">
+      <type name="int"/>
+    </constant>
+    <constant name="Dabovedot" value="16784906">
+      <type name="int"/>
+    </constant>
+    <constant name="Dcaron" value="463">
+      <type name="int"/>
+    </constant>
+    <constant name="Delete" value="65535">
+      <type name="int"/>
+    </constant>
+    <callback name="DestroyNotify" c:type="GdkDestroyNotify">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="data" transfer-ownership="none">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <class name="Device"
+           c:type="GdkDevice"
+           parent="GObject.Object"
+           glib:type-name="GdkDevice"
+           glib:get-type="gdk_device_get_type"
+           glib:type-struct="DeviceClass">
+      <function name="free_history"
+                c:identifier="gdk_device_free_history"
+                doc="Frees an array of #GdkTimeCoord that was returned by gdk_device_get_history().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="events"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="none"
+                     doc="an array of #GdkTimeCoord.">
+            <type name="TimeCoord" c:type="GdkTimeCoord**"/>
+          </parameter>
+          <parameter name="n_events"
+                     transfer-ownership="none"
+                     doc="the length of the array.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_core_pointer"
+                c:identifier="gdk_device_get_core_pointer"
+                doc="Returns the core pointer device for the default display.
+display and should not be freed.">
+        <return-value transfer-ownership="full"
+                      doc="the core pointer device; this is owned by the">
+          <type name="Device" c:type="GdkDevice*"/>
+        </return-value>
+      </function>
+      <method name="get_name"
+              c:identifier="gdk_device_get_name"
+              doc="Determines the name of the device."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="a name">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+      </method>
+      <method name="get_source"
+              c:identifier="gdk_device_get_source"
+              doc="Determines the type of the device."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkInputSource">
+          <type name="InputSource" c:type="GdkInputSource"/>
+        </return-value>
+      </method>
+      <method name="get_mode"
+              c:identifier="gdk_device_get_mode"
+              doc="Determines the mode of the device."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkInputSource">
+          <type name="InputMode" c:type="GdkInputMode"/>
+        </return-value>
+      </method>
+      <method name="get_has_cursor"
+              c:identifier="gdk_device_get_has_cursor"
+              doc="Determines whether the pointer follows device motion."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the pointer follows device motion">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="get_key"
+              c:identifier="gdk_device_get_key"
+              doc="If @index has a valid keyval, this function will
+fill in @keyval and @modifiers with the keyval settings."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="index"
+                     transfer-ownership="none"
+                     doc="the index of the macro button to get.">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="keyval"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return value for the keyval.">
+            <type name="uint" c:type="guint*"/>
+          </parameter>
+          <parameter name="modifiers"
+                     transfer-ownership="none"
+                     doc="return value for modifiers.">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_axis_use"
+              c:identifier="gdk_device_get_axis_use"
+              doc="Returns the axis use for @index."
+              version="2.22">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkAxisUse specifying how the axis is used.">
+          <type name="AxisUse" c:type="GdkAxisUse"/>
+        </return-value>
+        <parameters>
+          <parameter name="index"
+                     transfer-ownership="none"
+                     doc="the index of the axis.">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_n_axes"
+              c:identifier="gdk_device_get_n_axes"
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="the number of axes of this device.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="set_source" c:identifier="gdk_device_set_source">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="source" transfer-ownership="none">
+            <type name="InputSource" c:type="GdkInputSource"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_mode" c:identifier="gdk_device_set_mode">
+        <return-value transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="mode" transfer-ownership="none">
+            <type name="InputMode" c:type="GdkInputMode"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_key" c:identifier="gdk_device_set_key">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="index_" transfer-ownership="none">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="keyval" transfer-ownership="none">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="modifiers" transfer-ownership="none">
+            <type name="ModifierType" c:type="GdkModifierType"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_axis_use" c:identifier="gdk_device_set_axis_use">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="index_" transfer-ownership="none">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="use" transfer-ownership="none">
+            <type name="AxisUse" c:type="GdkAxisUse"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_state"
+              c:identifier="gdk_device_get_state"
+              doc="Gets the current state of a device.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="window"
+                     transfer-ownership="none"
+                     doc="a #GdkWindow.">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="axes"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="an array of doubles to store the values of the axes of @device in, or %NULL.">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     doc="location to store the modifiers, or %NULL.">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_history"
+              c:identifier="gdk_device_get_history"
+              doc="Obtains the motion history for a device; given a starting and
+ending timestamp, return all events in the motion history for
+the device in the given range of time. Some windowing systems
+do not support motion history, in which case, %FALSE will
+be returned. (This is not distinguishable from the case where
+motion history is supported and no events were found.)
+at least one event was found.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the windowing system supports motion history and">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="window"
+                     transfer-ownership="none"
+                     doc="the window with respect to which which the event coordinates will be reported">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="start"
+                     transfer-ownership="none"
+                     doc="starting timestamp for range of events to return">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+          <parameter name="stop"
+                     transfer-ownership="none"
+                     doc="ending timestamp for the range of events to return">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+          <parameter name="events"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="none"
+                     doc="location to store a newly-allocated array of #GdkTimeCoord, or %NULL">
+            <array length="5" c:type="GdkTimeCoord***">
+              <type name="TimeCoord"/>
+            </array>
+          </parameter>
+          <parameter name="n_events"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store the length of @events, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_axis"
+              c:identifier="gdk_device_get_axis"
+              doc="Interprets an array of double as axis values for a given device,
+and locates the value in the array for a given axis use.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the given axis use was found, otherwise %FALSE">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="axes"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="pointer to an array of axes">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="use"
+                     transfer-ownership="none"
+                     doc="the use to look for">
+            <type name="AxisUse" c:type="GdkAxisUse"/>
+          </parameter>
+          <parameter name="value"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store the found value.">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="name">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="source">
+        <type name="InputSource" c:type="GdkInputSource"/>
+      </field>
+      <field name="mode">
+        <type name="InputMode" c:type="GdkInputMode"/>
+      </field>
+      <field name="has_cursor">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="num_axes">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="axes">
+        <type name="DeviceAxis" c:type="GdkDeviceAxis*"/>
+      </field>
+      <field name="num_keys">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="keys">
+        <type name="DeviceKey" c:type="GdkDeviceKey*"/>
+      </field>
+    </class>
+    <record name="DeviceAxis" c:type="GdkDeviceAxis">
+      <field name="use" writable="1">
+        <type name="AxisUse" c:type="GdkAxisUse"/>
+      </field>
+      <field name="min" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="max" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+    </record>
+    <record name="DeviceClass"
+            c:type="GdkDeviceClass"
+            glib:is-gtype-struct-for="Device">
+    </record>
+    <record name="DeviceKey" c:type="GdkDeviceKey">
+      <field name="keyval" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="modifiers" writable="1">
+        <type name="ModifierType" c:type="GdkModifierType"/>
+      </field>
+    </record>
+    <class name="Display"
+           c:type="GdkDisplay"
+           parent="GObject.Object"
+           glib:type-name="GdkDisplay"
+           glib:get-type="gdk_display_get_type"
+           glib:type-struct="DisplayClass">
+      <function name="open"
+                c:identifier="gdk_display_open"
+                doc="Opens a display."
+                version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkDisplay, or %NULL if the display could not be opened.">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display_name"
+                     transfer-ownership="none"
+                     doc="the name of the display to open">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_default"
+                c:identifier="gdk_display_get_default"
+                doc="Gets the default #GdkDisplay. This is a convenience
+function for
+&lt;literal&gt;gdk_display_manager_get_default_display (gdk_display_manager_get ())&lt;/literal&gt;.
+display."
+                version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="a #GdkDisplay, or %NULL if there is no default">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </function>
+      <function name="open_default_libgtk_only"
+                c:identifier="gdk_display_open_default_libgtk_only"
+                doc="Opens the default display specified by command line arguments or
+environment variables, sets it as the default display, and returns
+it.  gdk_parse_args must have been called first. If the default
+display has previously been set, simply returns that. An internal
+function that should not be used by applications.
+otherwise %NULL.">
+        <return-value transfer-ownership="full"
+                      doc="the default display, if it could be opened,">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </function>
+      <virtual-method name="get_display_name">
+        <return-value transfer-ownership="none">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_n_screens"
+                      invoker="get_n_screens"
+                      doc="Gets the number of screen managed by the @display."
+                      version="2.2">
+        <return-value transfer-ownership="none" doc="number of screens.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_screen"
+                      invoker="get_screen"
+                      doc="Returns a screen object for one of the screens of the display."
+                      version="2.2">
+        <return-value transfer-ownership="full" doc="the #GdkScreen object">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen_num"
+                     transfer-ownership="none"
+                     doc="the screen number">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="get_default_screen"
+                      invoker="get_default_screen"
+                      doc="Get the default #GdkScreen for @display."
+                      version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the default #GdkScreen object for @display">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </virtual-method>
+      <method name="get_name"
+              c:identifier="gdk_display_get_name"
+              doc="Gets the name of the display.
+by GDK and should not be modified or freed."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="a string representing the display name. This string is owned">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+      </method>
+      <method name="get_n_screens"
+              c:identifier="gdk_display_get_n_screens"
+              doc="Gets the number of screen managed by the @display."
+              version="2.2">
+        <return-value transfer-ownership="none" doc="number of screens.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_screen"
+              c:identifier="gdk_display_get_screen"
+              doc="Returns a screen object for one of the screens of the display."
+              version="2.2">
+        <return-value transfer-ownership="full" doc="the #GdkScreen object">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen_num"
+                     transfer-ownership="none"
+                     doc="the screen number">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_default_screen"
+              c:identifier="gdk_display_get_default_screen"
+              doc="Get the default #GdkScreen for @display."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the default #GdkScreen object for @display">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </method>
+      <method name="pointer_ungrab"
+              c:identifier="gdk_display_pointer_ungrab"
+              doc="Release any pointer grab."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="time_"
+                     transfer-ownership="none"
+                     doc="a timestap (e.g. %GDK_CURRENT_TIME).">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="keyboard_ungrab"
+              c:identifier="gdk_display_keyboard_ungrab"
+              doc="Release any keyboard grab"
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="time_"
+                     transfer-ownership="none"
+                     doc="a timestap (e.g #GDK_CURRENT_TIME).">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="pointer_is_grabbed"
+              c:identifier="gdk_display_pointer_is_grabbed"
+              doc="Test if the pointer is grabbed."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if an active X pointer grab is in effect">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="beep"
+              c:identifier="gdk_display_beep"
+              doc="Emits a short beep on @display"
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="sync"
+              c:identifier="gdk_display_sync"
+              doc="Flushes any requests queued for the windowing system and waits until all
+requests have been handled. This is often used for making sure that the
+display is synchronized with the current state of the program. Calling
+gdk_display_sync() before gdk_error_trap_pop() makes sure that any errors
+generated from earlier requests are handled before the error trap is 
+removed.
+This is most useful for X11. On windowing systems where requests are
+handled synchronously, this function will do nothing."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="flush"
+              c:identifier="gdk_display_flush"
+              doc="Flushes any requests queued for the windowing system; this happens automatically
+when the main loop blocks waiting for new events, but if your application
+is drawing without returning control to the main loop, you may need
+to call this function explicitely. A common case where this function
+needs to be called is when an application is executing drawing commands
+from a thread other than the thread where the main loop is running.
+This is most useful for X11. On windowing systems where requests are
+handled synchronously, this function will do nothing."
+              version="2.4">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="close"
+              c:identifier="gdk_display_close"
+              doc="Closes the connection to the windowing system for the given display,
+and cleans up associated resources."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="list_devices"
+              c:identifier="gdk_display_list_devices"
+              doc="Returns the list of available input devices attached to @display.
+The list is statically allocated and should not be freed."
+              version="2.2"
+              introspectable="0">
+        <return-value transfer-ownership="full" doc="a list of #GdkDevice">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <method name="get_event"
+              c:identifier="gdk_display_get_event"
+              doc="Gets the next #GdkEvent to be processed for @display, fetching events from the
+windowing system if necessary.
+are pending. The returned #GdkEvent should be freed with gdk_event_free()."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the next #GdkEvent to be processed, or %NULL if no events">
+          <type name="Event" c:type="GdkEvent*"/>
+        </return-value>
+      </method>
+      <method name="peek_event"
+              c:identifier="gdk_display_peek_event"
+              doc="Gets a copy of the first #GdkEvent in the @display&apos;s event queue, without
+removing the event from the queue.  (Note that this function will
+not get more events from the windowing system.  It only checks the events
+that have already been moved to the GDK event queue.)
+if no events are in the queue. The returned #GdkEvent should be freed with
+gdk_event_free()."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="a copy of the first #GdkEvent on the event queue, or %NULL">
+          <type name="Event" c:type="GdkEvent*"/>
+        </return-value>
+      </method>
+      <method name="put_event"
+              c:identifier="gdk_display_put_event"
+              doc="Appends a copy of the given event onto the front of the event
+queue for @display."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="event" transfer-ownership="none" doc="a #GdkEvent.">
+            <type name="Event" c:type="GdkEvent*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="add_client_message_filter"
+              c:identifier="gdk_display_add_client_message_filter"
+              doc="Adds a filter to be called when X ClientMessage events are received.
+See gdk_window_add_filter() if you are interested in filtering other
+types of events."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="message_type"
+                     transfer-ownership="none"
+                     doc="the type of ClientMessage events to receive. This will be checked against the @message_type field of the XClientMessage event struct.">
+            <type name="Atom" c:type="GdkAtom"/>
+          </parameter>
+          <parameter name="func"
+                     transfer-ownership="none"
+                     scope="call"
+                     closure="3"
+                     doc="the function to call to process the event.">
+            <type name="FilterFunc" c:type="GdkFilterFunc"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="user data to pass to @func.">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_double_click_time"
+              c:identifier="gdk_display_set_double_click_time"
+              doc="Sets the double click time (two clicks within this time interval
+count as a double click and result in a #GDK_2BUTTON_PRESS event).
+Applications should &lt;emphasis&gt;not&lt;/emphasis&gt; set this, it is a global 
+user-configured setting."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="msec"
+                     transfer-ownership="none"
+                     doc="double click time in milliseconds (thousandths of a second)">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_double_click_distance"
+              c:identifier="gdk_display_set_double_click_distance"
+              doc="Sets the double click distance (two clicks within this distance
+count as a double click and result in a #GDK_2BUTTON_PRESS event).
+See also gdk_display_set_double_click_time().
+Applications should &lt;emphasis&gt;not&lt;/emphasis&gt; set this, it is a global 
+user-configured setting."
+              version="2.4">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="distance"
+                     transfer-ownership="none"
+                     doc="distance in pixels">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_core_pointer"
+              c:identifier="gdk_display_get_core_pointer"
+              doc="Returns the core pointer device for the given display
+display and should not be freed."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the core pointer device; this is owned by the">
+          <type name="Device" c:type="GdkDevice*"/>
+        </return-value>
+      </method>
+      <method name="get_pointer"
+              c:identifier="gdk_display_get_pointer"
+              doc="Gets the current location of the pointer and the current modifier
+mask for a given display."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="location to store the screen that the cursor is on, or %NULL.">
+            <type name="Screen" c:type="GdkScreen**"/>
+          </parameter>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="location to store root window X coordinate of pointer, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="location to store root window Y coordinate of pointer, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="mask"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="location to store current modifier mask, or %NULL">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_window_at_pointer"
+              c:identifier="gdk_display_get_window_at_pointer"
+              doc="Obtains the window underneath the mouse pointer, returning the location
+of the pointer in that window in @win_x, @win_y for @screen. Returns %NULL
+if the window under the mouse pointer is not known to GDK (for example, 
+belongs to another application)."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the window under the mouse pointer, or %NULL">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="win_x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for x coordinate of the pointer location relative to the window origin, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="win_y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for y coordinate of the pointer location relative">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="warp_pointer"
+              c:identifier="gdk_display_warp_pointer"
+              doc="Warps the pointer of @display to the point @x,@y on 
+the screen @screen, unless the pointer is confined
+to a window by a grab, in which case it will be moved
+as far as allowed by the grab. Warping the pointer 
+creates events as if the user had moved the mouse 
+instantaneously to the destination.
+Note that the pointer should normally be under the
+control of the user. This function was added to cover
+some rare use cases like keyboard navigation support
+for the color picker in the #GtkColorSelectionDialog."
+              version="2.8">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     doc="the screen of @display to warp the pointer to">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the x coordinate of the destination">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the y coordinate of the destination">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_pointer_hooks"
+              c:identifier="gdk_display_set_pointer_hooks"
+              doc="This function allows for hooking into the operation
+of getting the current location of the pointer on a particular
+display. This is only useful for such low-level tools as an
+event recorder. Applications should never have any
+reason to use this facility."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the previous pointer hook table">
+          <type name="DisplayPointerHooks" c:type="GdkDisplayPointerHooks*"/>
+        </return-value>
+        <parameters>
+          <parameter name="new_hooks"
+                     transfer-ownership="none"
+                     doc="a table of pointers to functions for getting quantities related to the current pointer position, or %NULL to restore the default table.">
+            <type name="DisplayPointerHooks" c:type="GdkDisplayPointerHooks*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="supports_cursor_alpha"
+              c:identifier="gdk_display_supports_cursor_alpha"
+              doc="Returns %TRUE if cursors can use an 8bit alpha channel 
+on @display. Otherwise, cursors are restricted to bilevel 
+alpha (i.e. a mask)."
+              version="2.4">
+        <return-value transfer-ownership="none"
+                      doc="whether cursors can have alpha channels.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="supports_cursor_color"
+              c:identifier="gdk_display_supports_cursor_color"
+              doc="Returns %TRUE if multicolored cursors are supported
+on @display. Otherwise, cursors have only a forground
+and a background color."
+              version="2.4">
+        <return-value transfer-ownership="none"
+                      doc="whether cursors can have multiple colors.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="get_default_cursor_size"
+              c:identifier="gdk_display_get_default_cursor_size"
+              doc="Returns the default size to use for cursors on @display."
+              version="2.4">
+        <return-value transfer-ownership="none" doc="the default cursor size.">
+          <type name="uint" c:type="guint"/>
+        </return-value>
+      </method>
+      <method name="get_maximal_cursor_size"
+              c:identifier="gdk_display_get_maximal_cursor_size"
+              doc="Gets the maximal size to use for cursors on @display."
+              version="2.4">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="width"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="the return location for the maximal cursor width">
+            <type name="uint" c:type="guint*"/>
+          </parameter>
+          <parameter name="height"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="the return location for the maximal cursor height">
+            <type name="uint" c:type="guint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_default_group"
+              c:identifier="gdk_display_get_default_group"
+              doc="Returns the default group leader window for all toplevel windows
+on @display. This window is implicitly created by GDK. 
+See gdk_window_set_group()."
+              version="2.4">
+        <return-value transfer-ownership="full"
+                      doc="The default group leader window for @display">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="supports_selection_notification"
+              c:identifier="gdk_display_supports_selection_notification"
+              doc="Returns whether #GdkEventOwnerChange events will be 
+sent when the owner of a selection changes.
+be sent."
+              version="2.6">
+        <return-value transfer-ownership="none"
+                      doc="whether #GdkEventOwnerChange events will">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="request_selection_notification"
+              c:identifier="gdk_display_request_selection_notification"
+              doc="Request #GdkEventOwnerChange events for ownership changes
+of the selection named by the given atom.
+be sent."
+              version="2.6">
+        <return-value transfer-ownership="none"
+                      doc="whether #GdkEventOwnerChange events will">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="selection"
+                     transfer-ownership="none"
+                     doc="the #GdkAtom naming the selection for which ownership change notification is requested">
+            <type name="Atom" c:type="GdkAtom"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="supports_clipboard_persistence"
+              c:identifier="gdk_display_supports_clipboard_persistence">
+        <return-value transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="store_clipboard"
+              c:identifier="gdk_display_store_clipboard">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="clipboard_window" transfer-ownership="none">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="time_" transfer-ownership="none">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+          <parameter name="targets" transfer-ownership="none">
+            <type name="Atom" c:type="GdkAtom*"/>
+          </parameter>
+          <parameter name="n_targets" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="supports_shapes"
+              c:identifier="gdk_display_supports_shapes"
+              doc="Returns %TRUE if gdk_window_shape_combine_mask() can
+be used to create shaped windows on @display."
+              version="2.10">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if shaped windows are supported">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="supports_input_shapes"
+              c:identifier="gdk_display_supports_input_shapes"
+              doc="Returns %TRUE if gdk_window_input_shape_combine_mask() can
+be used to modify the input shape of windows on @display."
+              version="2.10">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if windows with modified input shape are supported">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="supports_composite"
+              c:identifier="gdk_display_supports_composite"
+              doc="Returns %TRUE if gdk_window_set_composited() can be used
+to redirect drawing on the window using compositing.
+Currently this only works on X11 with XComposite and
+XDamage extensions available."
+              version="2.12">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if windows may be composited.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="queued_events">
+        <type name="GLib.List" c:type="GList*"/>
+      </field>
+      <field name="queued_tail">
+        <type name="GLib.List" c:type="GList*"/>
+      </field>
+      <field name="button_click_time">
+        <array zero-terminated="0" c:type="guint32" fixed-size="2">
+          <type name="uint32"/>
+        </array>
+      </field>
+      <field name="button_window">
+        <array zero-terminated="0" c:type="GdkWindow*" fixed-size="2">
+          <type name="Window"/>
+        </array>
+      </field>
+      <field name="button_number">
+        <array zero-terminated="0" c:type="gint" fixed-size="2">
+          <type name="int"/>
+        </array>
+      </field>
+      <field name="double_click_time">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="core_pointer">
+        <type name="Device" c:type="GdkDevice*"/>
+      </field>
+      <field name="pointer_hooks">
+        <type name="DisplayPointerHooks" c:type="GdkDisplayPointerHooks*"/>
+      </field>
+      <field name="closed" bits="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="ignore_core_events" bits="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="double_click_distance">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="button_x">
+        <array zero-terminated="0" c:type="gint" fixed-size="2">
+          <type name="int"/>
+        </array>
+      </field>
+      <field name="button_y">
+        <array zero-terminated="0" c:type="gint" fixed-size="2">
+          <type name="int"/>
+        </array>
+      </field>
+      <field name="pointer_grabs">
+        <type name="GLib.List" c:type="GList*"/>
+      </field>
+      <field name="keyboard_grab">
+        <type name="KeyboardGrabInfo" c:type="GdkKeyboardGrabInfo"/>
+      </field>
+      <field name="pointer_info">
+        <type name="PointerWindowInfo" c:type="GdkPointerWindowInfo"/>
+      </field>
+      <field name="last_event_time">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <glib:signal name="closed"
+                   doc="The ::closed signal is emitted when the connection to the windowing
+system for @display is closed."
+                   version="2.2">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="is_error"
+                     transfer-ownership="none"
+                     doc="%TRUE if the display was closed due to an error">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+    </class>
+    <record name="DisplayClass"
+            c:type="GdkDisplayClass"
+            glib:is-gtype-struct-for="Display">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="get_display_name">
+        <callback name="get_display_name" c:type="get_display_name">
+          <return-value transfer-ownership="none">
+            <type name="utf8" c:type="gchar*"/>
+          </return-value>
+          <parameters>
+            <parameter name="display" transfer-ownership="none">
+              <type name="Display" c:type="GdkDisplay*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_n_screens">
+        <callback name="get_n_screens" c:type="get_n_screens">
+          <return-value transfer-ownership="none" doc="number of screens.">
+            <type name="int" c:type="gint"/>
+          </return-value>
+          <parameters>
+            <parameter name="display" transfer-ownership="none">
+              <type name="Display" c:type="GdkDisplay*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_screen">
+        <callback name="get_screen" c:type="get_screen">
+          <return-value transfer-ownership="full" doc="the #GdkScreen object">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </return-value>
+          <parameters>
+            <parameter name="display" transfer-ownership="none">
+              <type name="Display" c:type="GdkDisplay*"/>
+            </parameter>
+            <parameter name="screen_num"
+                       transfer-ownership="none"
+                       doc="the screen number">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_default_screen">
+        <callback name="get_default_screen" c:type="get_default_screen">
+          <return-value transfer-ownership="full"
+                        doc="the default #GdkScreen object for @display">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </return-value>
+          <parameters>
+            <parameter name="display" transfer-ownership="none">
+              <type name="Display" c:type="GdkDisplay*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="closed">
+        <callback name="closed" c:type="closed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="display" transfer-ownership="none">
+              <type name="Display" c:type="GdkDisplay*"/>
+            </parameter>
+            <parameter name="is_error" transfer-ownership="none">
+              <type name="boolean" c:type="gboolean"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+    </record>
+    <class name="DisplayManager"
+           c:type="GdkDisplayManager"
+           parent="GObject.Object"
+           glib:type-name="GdkDisplayManager"
+           glib:get-type="gdk_display_manager_get_type"
+           glib:type-struct="DisplayManagerClass">
+      <function name="get"
+                c:identifier="gdk_display_manager_get"
+                doc="Gets the singleton #GdkDisplayManager object.
+gdk_init(), or gdk_init_check() must have been called first."
+                version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="The global #GdkDisplayManager singleton; gdk_parse_pargs(),">
+          <type name="DisplayManager" c:type="GdkDisplayManager*"/>
+        </return-value>
+      </function>
+      <method name="get_default_display"
+              c:identifier="gdk_display_manager_get_default_display"
+              doc="Gets the default #GdkDisplay.
+display."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="a #GdkDisplay, or %NULL if there is no default">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </method>
+      <method name="set_default_display"
+              c:identifier="gdk_display_manager_set_default_display"
+              doc="Sets @display as the default display."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="a #GdkDisplay">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="list_displays"
+              c:identifier="gdk_display_manager_list_displays"
+              doc="List all currently open displays.
+#GSList of #GdkDisplay objects. Free this list with g_slist_free() when you
+are done with it."
+              version="2.2">
+        <return-value transfer-ownership="container" doc="a newly allocated">
+          <type name="GLib.SList" c:type="GSList*">
+            <type name="Display"/>
+          </type>
+        </return-value>
+      </method>
+      <property name="default-display" writable="1" transfer-ownership="none">
+        <type name="Display" c:type="GdkDisplay"/>
+      </property>
+      <glib:signal name="display-opened"
+                   doc="The ::display_opened signal is emitted when a display is opened."
+                   version="2.2">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the opened display">
+            <type name="Display" c:type="GdkDisplay"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+    </class>
+    <record name="DisplayManagerClass"
+            c:type="GdkDisplayManagerClass"
+            glib:is-gtype-struct-for="DisplayManager">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="display_opened">
+        <callback name="display_opened" c:type="display_opened">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="display_manager" transfer-ownership="none">
+              <type name="DisplayManager" c:type="GdkDisplayManager*"/>
+            </parameter>
+            <parameter name="display" transfer-ownership="none">
+              <type name="Display" c:type="GdkDisplay*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+    </record>
+    <record name="DisplayPointerHooks" c:type="GdkDisplayPointerHooks">
+      <field name="get_pointer">
+        <type name="any" c:type="pointer"/>
+      </field>
+      <field name="window_get_pointer">
+        <type name="any" c:type="pointer"/>
+      </field>
+      <field name="window_at_pointer">
+        <type name="any" c:type="pointer"/>
+      </field>
+    </record>
+    <constant name="Documents" value="269025115">
+      <type name="int"/>
+    </constant>
+    <constant name="DongSign" value="16785579">
+      <type name="int"/>
+    </constant>
+    <constant name="Down" value="65364">
+      <type name="int"/>
+    </constant>
+    <bitfield name="DragAction"
+              glib:type-name="GdkDragAction"
+              glib:get-type="gdk_drag_action_get_type"
+              c:type="GdkDragAction">
+      <member name="default"
+              value="1"
+              c:identifier="GDK_ACTION_DEFAULT"
+              glib:nick="default"/>
+      <member name="copy"
+              value="2"
+              c:identifier="GDK_ACTION_COPY"
+              glib:nick="copy"/>
+      <member name="move"
+              value="4"
+              c:identifier="GDK_ACTION_MOVE"
+              glib:nick="move"/>
+      <member name="link"
+              value="8"
+              c:identifier="GDK_ACTION_LINK"
+              glib:nick="link"/>
+      <member name="private"
+              value="16"
+              c:identifier="GDK_ACTION_PRIVATE"
+              glib:nick="private"/>
+      <member name="ask"
+              value="32"
+              c:identifier="GDK_ACTION_ASK"
+              glib:nick="ask"/>
+    </bitfield>
+    <class name="DragContext"
+           c:type="GdkDragContext"
+           parent="GObject.Object"
+           glib:type-name="GdkDragContext"
+           glib:get-type="gdk_drag_context_get_type"
+           glib:type-struct="DragContextClass">
+      <constructor name="new"
+                   c:identifier="gdk_drag_context_new"
+                   doc="Creates a new #GdkDragContext.">
+        <return-value transfer-ownership="full"
+                      doc="the newly created #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </return-value>
+      </constructor>
+      <method name="list_targets"
+              c:identifier="gdk_drag_context_list_targets"
+              doc="Retrieves the list of targets of the context."
+              version="2.22"
+              introspectable="0">
+        <return-value transfer-ownership="full" doc="a #GList of targets">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <method name="get_actions"
+              c:identifier="gdk_drag_context_get_actions"
+              doc="Determines the bitmask of actions proposed by the source if
+gdk_drag_context_suggested_action() returns GDK_ACTION_ASK."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="the #GdkDragAction flags">
+          <type name="DragAction" c:type="GdkDragAction"/>
+        </return-value>
+      </method>
+      <method name="get_suggested_action"
+              c:identifier="gdk_drag_context_get_suggested_action"
+              doc="Determines the suggested drag action of the context."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkDragAction value">
+          <type name="DragAction" c:type="GdkDragAction"/>
+        </return-value>
+      </method>
+      <method name="get_selected_action"
+              c:identifier="gdk_drag_context_get_selected_action"
+              doc="Determines the action chosen by the drag destination."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkDragAction value">
+          <type name="DragAction" c:type="GdkDragAction"/>
+        </return-value>
+      </method>
+      <method name="get_source_window"
+              c:identifier="gdk_drag_context_get_source_window"
+              doc="Returns the #GdkWindow where the DND operation started."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="a #GdkWindow">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="ref"
+              c:identifier="gdk_drag_context_ref"
+              doc="Deprecated function; use g_object_ref() instead."
+              deprecated="Use g_object_ref() instead."
+              deprecated-version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_drag_context_unref"
+              doc="Deprecated function; use g_object_unref() instead."
+              deprecated="Use g_object_unref() instead."
+              deprecated-version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="protocol">
+        <type name="DragProtocol" c:type="GdkDragProtocol"/>
+      </field>
+      <field name="is_source">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="source_window">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="dest_window">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="targets">
+        <type name="GLib.List" c:type="GList*"/>
+      </field>
+      <field name="actions">
+        <type name="DragAction" c:type="GdkDragAction"/>
+      </field>
+      <field name="suggested_action">
+        <type name="DragAction" c:type="GdkDragAction"/>
+      </field>
+      <field name="action">
+        <type name="DragAction" c:type="GdkDragAction"/>
+      </field>
+      <field name="start_time">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="windowing_data">
+        <type name="any" c:type="gpointer"/>
+      </field>
+    </class>
+    <record name="DragContextClass"
+            c:type="GdkDragContextClass"
+            glib:is-gtype-struct-for="DragContext">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+    </record>
+    <enumeration name="DragProtocol"
+                 glib:type-name="GdkDragProtocol"
+                 glib:get-type="gdk_drag_protocol_get_type"
+                 c:type="GdkDragProtocol">
+      <member name="motif"
+              value="0"
+              c:identifier="GDK_DRAG_PROTO_MOTIF"
+              glib:nick="motif"/>
+      <member name="xdnd"
+              value="1"
+              c:identifier="GDK_DRAG_PROTO_XDND"
+              glib:nick="xdnd"/>
+      <member name="rootwin"
+              value="2"
+              c:identifier="GDK_DRAG_PROTO_ROOTWIN"
+              glib:nick="rootwin"/>
+      <member name="none"
+              value="3"
+              c:identifier="GDK_DRAG_PROTO_NONE"
+              glib:nick="none"/>
+      <member name="win32_dropfiles"
+              value="4"
+              c:identifier="GDK_DRAG_PROTO_WIN32_DROPFILES"
+              glib:nick="win32-dropfiles"/>
+      <member name="ole2"
+              value="5"
+              c:identifier="GDK_DRAG_PROTO_OLE2"
+              glib:nick="ole2"/>
+      <member name="local"
+              value="6"
+              c:identifier="GDK_DRAG_PROTO_LOCAL"
+              glib:nick="local"/>
+    </enumeration>
+    <class name="Drawable"
+           c:type="GdkDrawable"
+           parent="GObject.Object"
+           abstract="1"
+           glib:type-name="GdkDrawable"
+           glib:get-type="gdk_drawable_get_type"
+           glib:type-struct="DrawableClass">
+      <virtual-method name="create_gc">
+        <return-value transfer-ownership="full">
+          <type name="GC" c:type="GdkGC*"/>
+        </return-value>
+        <parameters>
+          <parameter name="values" transfer-ownership="none">
+            <type name="GCValues" c:type="GdkGCValues*"/>
+          </parameter>
+          <parameter name="mask" transfer-ownership="none">
+            <type name="GCValuesMask" c:type="GdkGCValuesMask"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_rectangle">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="filled" transfer-ownership="none">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_arc">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="filled" transfer-ownership="none">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="angle1" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="angle2" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_polygon">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="filled" transfer-ownership="none">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="points" transfer-ownership="none">
+            <type name="Point" c:type="GdkPoint*"/>
+          </parameter>
+          <parameter name="npoints" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_text">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="font" transfer-ownership="none">
+            <type name="Font" c:type="GdkFont*"/>
+          </parameter>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="text" transfer-ownership="none">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+          <parameter name="text_length" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_text_wc">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="font" transfer-ownership="none">
+            <type name="Font" c:type="GdkFont*"/>
+          </parameter>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="text" transfer-ownership="none">
+            <type name="WChar" c:type="GdkWChar*"/>
+          </parameter>
+          <parameter name="text_length" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_drawable">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="src" transfer-ownership="none">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="xsrc" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="ysrc" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="xdest" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="ydest" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_points">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="points" transfer-ownership="none">
+            <type name="Point" c:type="GdkPoint*"/>
+          </parameter>
+          <parameter name="npoints" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_segments">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="segs" transfer-ownership="none">
+            <type name="Segment" c:type="GdkSegment*"/>
+          </parameter>
+          <parameter name="nsegs" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_lines">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="points" transfer-ownership="none">
+            <type name="Point" c:type="GdkPoint*"/>
+          </parameter>
+          <parameter name="npoints" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_glyphs">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="font" transfer-ownership="none">
+            <type name="Pango.Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="glyphs" transfer-ownership="none">
+            <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_image">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="image" transfer-ownership="none">
+            <type name="Image" c:type="GdkImage*"/>
+          </parameter>
+          <parameter name="xsrc" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="ysrc" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="xdest" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="ydest" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="get_depth"
+                      invoker="get_depth"
+                      doc="Obtains the bit depth of the drawable, that is, the number of bits
+that make up a pixel in the drawable&apos;s visual. Examples are 8 bits
+per pixel, 24 bits per pixel, etc.">
+        <return-value transfer-ownership="none" doc="number of bits per pixel">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_size"
+                      invoker="get_size"
+                      doc="Fills * width and * height with the size of @drawable.
+On the X11 platform, if @drawable is a #GdkWindow, the returned
+size is the size reported in the most-recently-processed configure
+event, rather than the current size on the X server.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="width"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="location to store drawable&apos;s width, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="height"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="location to store drawable&apos;s height, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="set_colormap">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="cmap" transfer-ownership="none">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="get_colormap"
+                      invoker="get_colormap"
+                      doc="Gets the colormap for @drawable, if one is set; returns
+%NULL otherwise.">
+        <return-value transfer-ownership="full" doc="the colormap, or %NULL">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_visual"
+                      invoker="get_visual"
+                      doc="Gets the #GdkVisual describing the pixel format of @drawable.">
+        <return-value transfer-ownership="full" doc="a #GdkVisual">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_screen"
+                      invoker="get_screen"
+                      doc="Gets the #GdkScreen associated with a #GdkDrawable."
+                      version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkScreen associated with @drawable">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_image"
+                      invoker="get_image"
+                      doc="A #GdkImage stores client-side image data (pixels). In contrast,
+#GdkPixmap and #GdkWindow are server-side
+objects. gdk_drawable_get_image() obtains the pixels from a
+server-side drawable as a client-side #GdkImage.  The format of a
+#GdkImage depends on the #GdkVisual of the current display, which
+makes manipulating #GdkImage extremely difficult; therefore, in
+most cases you should use gdk_pixbuf_get_from_drawable() instead of
+this lower-level function. A #GdkPixbuf contains image data in a
+canonicalized RGB format, rather than a display-dependent format.
+Of course, there&apos;s a convenience vs. speed tradeoff here, so you&apos;ll
+want to think about what makes sense for your application.
+obtain as an image.
+You would usually copy image data to the client side if you intend
+to examine the values of individual pixels, for example to darken
+an image or add a red tint. It would be prohibitively slow to
+make a round-trip request to the windowing system for each pixel,
+so instead you get all of them at once, modify them, then copy
+them all back at once.
+If the X server or other windowing system backend is on the local
+machine, this function may use shared memory to avoid copying
+the image data.
+If the source drawable is a #GdkWindow and partially offscreen
+or obscured, then the obscured portions of the returned image
+will contain undefined data.">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkImage containing the contents of @drawable">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="x coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="y coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height or region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="get_clip_region"
+                      invoker="get_clip_region"
+                      doc="Computes the region of a drawable that potentially can be written
+to by drawing primitives. This region will not take into account
+the clip region for the GC, and may also not take into account
+other factors such as if the window is obscured by other windows,
+but no area outside of this region will be affected by drawing
+primitives.
+when you are done.">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkRegion. This must be freed with gdk_region_destroy()">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_visible_region"
+                      invoker="get_visible_region"
+                      doc="Computes the region of a drawable that is potentially visible.
+This does not necessarily take into account if the window is
+obscured by other windows, but no area outside of this region
+is visible.
+when you are done.">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkRegion. This must be freed with gdk_region_destroy()">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_composite_drawable">
+        <return-value transfer-ownership="full">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </return-value>
+        <parameters>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="composite_x_offset"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="composite_y_offset"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_pixbuf">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="pixbuf" transfer-ownership="none">
+            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+          </parameter>
+          <parameter name="src_x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="src_y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dither" transfer-ownership="none">
+            <type name="RgbDither" c:type="GdkRgbDither"/>
+          </parameter>
+          <parameter name="x_dither" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y_dither" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="copy_to_image"
+                      invoker="copy_to_image"
+                      doc="Copies a portion of @drawable into the client side image structure
+and copies into that. See gdk_drawable_get_image() for further details.
+of @drawable"
+                      version="2.4">
+        <return-value transfer-ownership="full"
+                      doc="@image, or a new a #GdkImage containing the contents">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="image"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #GdkDrawable, or %NULL if a new @image should be created.">
+            <type name="Image" c:type="GdkImage*"/>
+          </parameter>
+          <parameter name="src_x"
+                     transfer-ownership="none"
+                     doc="x coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="src_y"
+                     transfer-ownership="none"
+                     doc="y coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_x"
+                     transfer-ownership="none"
+                     doc="x coordinate within @image. Must be 0 if @image is %NULL">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_y"
+                     transfer-ownership="none"
+                     doc="y coordinate within @image. Must be 0 if @image is %NULL">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height or region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_glyphs_transformed">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="matrix" transfer-ownership="none">
+            <type name="Pango.Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+          <parameter name="font" transfer-ownership="none">
+            <type name="Pango.Font" c:type="PangoFont*"/>
+          </parameter>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="glyphs" transfer-ownership="none">
+            <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_trapezoids">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="trapezoids" transfer-ownership="none">
+            <type name="Trapezoid" c:type="GdkTrapezoid*"/>
+          </parameter>
+          <parameter name="n_trapezoids" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="ref_cairo_surface">
+        <return-value transfer-ownership="full">
+          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="get_source_drawable">
+        <return-value transfer-ownership="full">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </return-value>
+      </virtual-method>
+      <virtual-method name="set_cairo_clip">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="cr" transfer-ownership="none">
+            <type name="cairo.Context" c:type="cairo_t*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="create_cairo_surface">
+        <return-value transfer-ownership="full">
+          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
+        </return-value>
+        <parameters>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="int"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="int"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="draw_drawable_with_src">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc" transfer-ownership="none">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+          <parameter name="src" transfer-ownership="none">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="xsrc" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="ysrc" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="xdest" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="ydest" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="original_src" transfer-ownership="none">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <method name="set_data"
+              c:identifier="gdk_drawable_set_data"
+              doc="This function is equivalent to g_object_set_data(),
+the #GObject variant should be used instead.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="key"
+                     transfer-ownership="none"
+                     doc="name to store the data under">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="arbitrary data">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+          <parameter name="destroy_func"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     scope="call"
+                     doc="function to free @data, or %NULL">
+            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_data"
+              c:identifier="gdk_drawable_get_data"
+              doc="Equivalent to g_object_get_data(); the #GObject variant should be
+used instead.">
+        <return-value transfer-ownership="none" doc="the data stored at @key">
+          <type name="any" c:type="gpointer"/>
+        </return-value>
+        <parameters>
+          <parameter name="key"
+                     transfer-ownership="none"
+                     doc="name the data was stored under">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_size"
+              c:identifier="gdk_drawable_get_size"
+              doc="Fills * width and * height with the size of @drawable.
+On the X11 platform, if @drawable is a #GdkWindow, the returned
+size is the size reported in the most-recently-processed configure
+event, rather than the current size on the X server.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="width"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="location to store drawable&apos;s width, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="height"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="location to store drawable&apos;s height, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_colormap"
+              c:identifier="gdk_drawable_set_colormap"
+              doc="Sets the colormap associated with @drawable. Normally this will
+happen automatically when the drawable is created; you only need to
+use this function if the drawable-creating function did not have a
+way to determine the colormap, and you then use drawable operations
+that require a colormap. The colormap for all drawables and
+graphics contexts you intend to use together should match. i.e.
+when using a #GdkGC to draw to a drawable, or copying one drawable
+to another, the colormaps should match.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="colormap"
+                     transfer-ownership="none"
+                     doc="a #GdkColormap">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_colormap"
+              c:identifier="gdk_drawable_get_colormap"
+              doc="Gets the colormap for @drawable, if one is set; returns
+%NULL otherwise.">
+        <return-value transfer-ownership="full" doc="the colormap, or %NULL">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="get_visual"
+              c:identifier="gdk_drawable_get_visual"
+              doc="Gets the #GdkVisual describing the pixel format of @drawable.">
+        <return-value transfer-ownership="full" doc="a #GdkVisual">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </method>
+      <method name="get_depth"
+              c:identifier="gdk_drawable_get_depth"
+              doc="Obtains the bit depth of the drawable, that is, the number of bits
+that make up a pixel in the drawable&apos;s visual. Examples are 8 bits
+per pixel, 24 bits per pixel, etc.">
+        <return-value transfer-ownership="none" doc="number of bits per pixel">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_screen"
+              c:identifier="gdk_drawable_get_screen"
+              doc="Gets the #GdkScreen associated with a #GdkDrawable."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkScreen associated with @drawable">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </method>
+      <method name="get_display"
+              c:identifier="gdk_drawable_get_display"
+              doc="Gets the #GdkDisplay associated with a #GdkDrawable."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkDisplay associated with @drawable">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </method>
+      <method name="ref"
+              c:identifier="gdk_drawable_ref"
+              doc="Deprecated equivalent of calling g_object_ref() on @drawable.
+(Drawables were not objects in previous versions of GDK.)"
+              deprecated="Use g_object_ref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="full"
+                      doc="the same @drawable passed in">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_drawable_unref"
+              doc="Deprecated equivalent of calling g_object_unref() on @drawable."
+              deprecated="Use g_object_unref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_image"
+              c:identifier="gdk_drawable_get_image"
+              doc="A #GdkImage stores client-side image data (pixels). In contrast,
+#GdkPixmap and #GdkWindow are server-side
+objects. gdk_drawable_get_image() obtains the pixels from a
+server-side drawable as a client-side #GdkImage.  The format of a
+#GdkImage depends on the #GdkVisual of the current display, which
+makes manipulating #GdkImage extremely difficult; therefore, in
+most cases you should use gdk_pixbuf_get_from_drawable() instead of
+this lower-level function. A #GdkPixbuf contains image data in a
+canonicalized RGB format, rather than a display-dependent format.
+Of course, there&apos;s a convenience vs. speed tradeoff here, so you&apos;ll
+want to think about what makes sense for your application.
+obtain as an image.
+You would usually copy image data to the client side if you intend
+to examine the values of individual pixels, for example to darken
+an image or add a red tint. It would be prohibitively slow to
+make a round-trip request to the windowing system for each pixel,
+so instead you get all of them at once, modify them, then copy
+them all back at once.
+If the X server or other windowing system backend is on the local
+machine, this function may use shared memory to avoid copying
+the image data.
+If the source drawable is a #GdkWindow and partially offscreen
+or obscured, then the obscured portions of the returned image
+will contain undefined data.">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkImage containing the contents of @drawable">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="x coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="y coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height or region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="copy_to_image"
+              c:identifier="gdk_drawable_copy_to_image"
+              doc="Copies a portion of @drawable into the client side image structure
+and copies into that. See gdk_drawable_get_image() for further details.
+of @drawable"
+              version="2.4">
+        <return-value transfer-ownership="full"
+                      doc="@image, or a new a #GdkImage containing the contents">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="image"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #GdkDrawable, or %NULL if a new @image should be created.">
+            <type name="Image" c:type="GdkImage*"/>
+          </parameter>
+          <parameter name="src_x"
+                     transfer-ownership="none"
+                     doc="x coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="src_y"
+                     transfer-ownership="none"
+                     doc="y coordinate on @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_x"
+                     transfer-ownership="none"
+                     doc="x coordinate within @image. Must be 0 if @image is %NULL">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_y"
+                     transfer-ownership="none"
+                     doc="y coordinate within @image. Must be 0 if @image is %NULL">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height or region to get">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_clip_region"
+              c:identifier="gdk_drawable_get_clip_region"
+              doc="Computes the region of a drawable that potentially can be written
+to by drawing primitives. This region will not take into account
+the clip region for the GC, and may also not take into account
+other factors such as if the window is obscured by other windows,
+but no area outside of this region will be affected by drawing
+primitives.
+when you are done.">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkRegion. This must be freed with gdk_region_destroy()">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </method>
+      <method name="get_visible_region"
+              c:identifier="gdk_drawable_get_visible_region"
+              doc="Computes the region of a drawable that is potentially visible.
+This does not necessarily take into account if the window is
+obscured by other windows, but no area outside of this region
+is visible.
+when you are done.">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkRegion. This must be freed with gdk_region_destroy()">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+    </class>
+    <record name="DrawableClass"
+            c:type="GdkDrawableClass"
+            glib:is-gtype-struct-for="Drawable">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="create_gc">
+        <callback name="create_gc" c:type="create_gc">
+          <return-value transfer-ownership="full">
+            <type name="GC" c:type="GdkGC*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="values" transfer-ownership="none">
+              <type name="GCValues" c:type="GdkGCValues*"/>
+            </parameter>
+            <parameter name="mask" transfer-ownership="none">
+              <type name="GCValuesMask" c:type="GdkGCValuesMask"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_rectangle">
+        <callback name="draw_rectangle" c:type="draw_rectangle">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="filled" transfer-ownership="none">
+              <type name="boolean" c:type="gboolean"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_arc">
+        <callback name="draw_arc" c:type="draw_arc">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="filled" transfer-ownership="none">
+              <type name="boolean" c:type="gboolean"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="angle1" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="angle2" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_polygon">
+        <callback name="draw_polygon" c:type="draw_polygon">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="filled" transfer-ownership="none">
+              <type name="boolean" c:type="gboolean"/>
+            </parameter>
+            <parameter name="points" transfer-ownership="none">
+              <type name="Point" c:type="GdkPoint*"/>
+            </parameter>
+            <parameter name="npoints" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_text">
+        <callback name="draw_text" c:type="draw_text">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="font" transfer-ownership="none">
+              <type name="Font" c:type="GdkFont*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="text" transfer-ownership="none">
+              <type name="utf8" c:type="gchar*"/>
+            </parameter>
+            <parameter name="text_length" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_text_wc">
+        <callback name="draw_text_wc" c:type="draw_text_wc">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="font" transfer-ownership="none">
+              <type name="Font" c:type="GdkFont*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="text" transfer-ownership="none">
+              <type name="WChar" c:type="GdkWChar*"/>
+            </parameter>
+            <parameter name="text_length" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_drawable">
+        <callback name="draw_drawable" c:type="draw_drawable">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="src" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="xsrc" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="ysrc" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="xdest" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="ydest" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_points">
+        <callback name="draw_points" c:type="draw_points">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="points" transfer-ownership="none">
+              <type name="Point" c:type="GdkPoint*"/>
+            </parameter>
+            <parameter name="npoints" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_segments">
+        <callback name="draw_segments" c:type="draw_segments">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="segs" transfer-ownership="none">
+              <type name="Segment" c:type="GdkSegment*"/>
+            </parameter>
+            <parameter name="nsegs" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_lines">
+        <callback name="draw_lines" c:type="draw_lines">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="points" transfer-ownership="none">
+              <type name="Point" c:type="GdkPoint*"/>
+            </parameter>
+            <parameter name="npoints" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_glyphs">
+        <callback name="draw_glyphs" c:type="draw_glyphs">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="font" transfer-ownership="none">
+              <type name="Pango.Font" c:type="PangoFont*"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="glyphs" transfer-ownership="none">
+              <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_image">
+        <callback name="draw_image" c:type="draw_image">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="image" transfer-ownership="none">
+              <type name="Image" c:type="GdkImage*"/>
+            </parameter>
+            <parameter name="xsrc" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="ysrc" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="xdest" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="ydest" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_depth">
+        <callback name="get_depth" c:type="get_depth">
+          <return-value transfer-ownership="none"
+                        doc="number of bits per pixel">
+            <type name="int" c:type="gint"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_size">
+        <callback name="get_size" c:type="get_size">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="width"
+                       direction="out"
+                       caller-allocates="0"
+                       transfer-ownership="full"
+                       allow-none="1"
+                       doc="location to store drawable&apos;s width, or %NULL">
+              <type name="int" c:type="gint*"/>
+            </parameter>
+            <parameter name="height"
+                       direction="out"
+                       caller-allocates="0"
+                       transfer-ownership="full"
+                       allow-none="1"
+                       doc="location to store drawable&apos;s height, or %NULL">
+              <type name="int" c:type="gint*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="set_colormap">
+        <callback name="set_colormap" c:type="set_colormap">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="cmap" transfer-ownership="none">
+              <type name="Colormap" c:type="GdkColormap*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_colormap">
+        <callback name="get_colormap" c:type="get_colormap">
+          <return-value transfer-ownership="full" doc="the colormap, or %NULL">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_visual">
+        <callback name="get_visual" c:type="get_visual">
+          <return-value transfer-ownership="full" doc="a #GdkVisual">
+            <type name="Visual" c:type="GdkVisual*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_screen">
+        <callback name="get_screen" c:type="get_screen">
+          <return-value transfer-ownership="full"
+                        doc="the #GdkScreen associated with @drawable">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_image">
+        <callback name="get_image" c:type="get_image">
+          <return-value transfer-ownership="full"
+                        doc="a #GdkImage containing the contents of @drawable">
+            <type name="Image" c:type="GdkImage*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="x"
+                       transfer-ownership="none"
+                       doc="x coordinate on @drawable">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y"
+                       transfer-ownership="none"
+                       doc="y coordinate on @drawable">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width"
+                       transfer-ownership="none"
+                       doc="width of region to get">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height"
+                       transfer-ownership="none"
+                       doc="height or region to get">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_clip_region">
+        <callback name="get_clip_region" c:type="get_clip_region">
+          <return-value transfer-ownership="full"
+                        doc="a #GdkRegion. This must be freed with gdk_region_destroy()">
+            <type name="Region" c:type="GdkRegion*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_visible_region">
+        <callback name="get_visible_region" c:type="get_visible_region">
+          <return-value transfer-ownership="full"
+                        doc="a #GdkRegion. This must be freed with gdk_region_destroy()">
+            <type name="Region" c:type="GdkRegion*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_composite_drawable">
+        <callback name="get_composite_drawable"
+                  c:type="get_composite_drawable">
+          <return-value transfer-ownership="full">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="composite_x_offset"
+                       direction="out"
+                       caller-allocates="0"
+                       transfer-ownership="full">
+              <type name="int" c:type="gint*"/>
+            </parameter>
+            <parameter name="composite_y_offset"
+                       direction="out"
+                       caller-allocates="0"
+                       transfer-ownership="full">
+              <type name="int" c:type="gint*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_pixbuf">
+        <callback name="draw_pixbuf" c:type="draw_pixbuf">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="pixbuf" transfer-ownership="none">
+              <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+            </parameter>
+            <parameter name="src_x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="src_y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="dest_x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="dest_y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="dither" transfer-ownership="none">
+              <type name="RgbDither" c:type="GdkRgbDither"/>
+            </parameter>
+            <parameter name="x_dither" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y_dither" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="copy_to_image">
+        <callback name="copy_to_image" c:type="_copy_to_image">
+          <return-value transfer-ownership="full"
+                        doc="@image, or a new a #GdkImage containing the contents">
+            <type name="Image" c:type="GdkImage*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="image"
+                       transfer-ownership="none"
+                       allow-none="1"
+                       doc="a #GdkDrawable, or %NULL if a new @image should be created.">
+              <type name="Image" c:type="GdkImage*"/>
+            </parameter>
+            <parameter name="src_x"
+                       transfer-ownership="none"
+                       doc="x coordinate on @drawable">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="src_y"
+                       transfer-ownership="none"
+                       doc="y coordinate on @drawable">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="dest_x"
+                       transfer-ownership="none"
+                       doc="x coordinate within @image. Must be 0 if @image is %NULL">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="dest_y"
+                       transfer-ownership="none"
+                       doc="y coordinate within @image. Must be 0 if @image is %NULL">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width"
+                       transfer-ownership="none"
+                       doc="width of region to get">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height"
+                       transfer-ownership="none"
+                       doc="height or region to get">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_glyphs_transformed">
+        <callback name="draw_glyphs_transformed"
+                  c:type="draw_glyphs_transformed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="matrix" transfer-ownership="none">
+              <type name="Pango.Matrix" c:type="PangoMatrix*"/>
+            </parameter>
+            <parameter name="font" transfer-ownership="none">
+              <type name="Pango.Font" c:type="PangoFont*"/>
+            </parameter>
+            <parameter name="x" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="y" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="glyphs" transfer-ownership="none">
+              <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_trapezoids">
+        <callback name="draw_trapezoids" c:type="draw_trapezoids">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="trapezoids" transfer-ownership="none">
+              <type name="Trapezoid" c:type="GdkTrapezoid*"/>
+            </parameter>
+            <parameter name="n_trapezoids" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="ref_cairo_surface">
+        <callback name="ref_cairo_surface" c:type="ref_cairo_surface">
+          <return-value transfer-ownership="full">
+            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="get_source_drawable">
+        <callback name="get_source_drawable" c:type="get_source_drawable">
+          <return-value transfer-ownership="full">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="set_cairo_clip">
+        <callback name="set_cairo_clip" c:type="set_cairo_clip">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="cr" transfer-ownership="none">
+              <type name="cairo.Context" c:type="cairo_t*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="create_cairo_surface">
+        <callback name="create_cairo_surface" c:type="create_cairo_surface">
+          <return-value transfer-ownership="full">
+            <type name="cairo.Surface" c:type="cairo_surface_t*"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="int"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="int"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="draw_drawable_with_src">
+        <callback name="draw_drawable_with_src"
+                  c:type="draw_drawable_with_src">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="drawable" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="src" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+            <parameter name="xsrc" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="ysrc" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="xdest" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="ydest" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="width" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="height" transfer-ownership="none">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="original_src" transfer-ownership="none">
+              <type name="Drawable" c:type="GdkDrawable*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="gdk_reserved7">
+        <callback name="gdk_reserved7" c:type="_gdk_reserved7">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved9">
+        <callback name="gdk_reserved9" c:type="_gdk_reserved9">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved10">
+        <callback name="gdk_reserved10" c:type="_gdk_reserved10">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved11">
+        <callback name="gdk_reserved11" c:type="_gdk_reserved11">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved12">
+        <callback name="gdk_reserved12" c:type="_gdk_reserved12">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved13">
+        <callback name="gdk_reserved13" c:type="_gdk_reserved13">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved14">
+        <callback name="gdk_reserved14" c:type="_gdk_reserved14">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved15">
+        <callback name="gdk_reserved15" c:type="_gdk_reserved15">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+    </record>
+    <constant name="Dstroke" value="464">
+      <type name="int"/>
+    </constant>
+    <constant name="E" value="69">
+      <type name="int"/>
+    </constant>
+    <constant name="ENG" value="957">
+      <type name="int"/>
+    </constant>
+    <constant name="ETH" value="208">
+      <type name="int"/>
+    </constant>
+    <constant name="Eabovedot" value="972">
+      <type name="int"/>
+    </constant>
+    <constant name="Eacute" value="201">
+      <type name="int"/>
+    </constant>
+    <constant name="Ebelowdot" value="16785080">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecaron" value="460">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecircumflex" value="202">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecircumflexacute" value="16785086">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecircumflexbelowdot" value="16785094">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecircumflexgrave" value="16785088">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecircumflexhook" value="16785090">
+      <type name="int"/>
+    </constant>
+    <constant name="Ecircumflextilde" value="16785092">
+      <type name="int"/>
+    </constant>
+    <constant name="EcuSign" value="16785568">
+      <type name="int"/>
+    </constant>
+    <constant name="Ediaeresis" value="203">
+      <type name="int"/>
+    </constant>
+    <constant name="Egrave" value="200">
+      <type name="int"/>
+    </constant>
+    <constant name="Ehook" value="16785082">
+      <type name="int"/>
+    </constant>
+    <constant name="Eisu_Shift" value="65327">
+      <type name="int"/>
+    </constant>
+    <constant name="Eisu_toggle" value="65328">
+      <type name="int"/>
+    </constant>
+    <constant name="Eject" value="269025068">
+      <type name="int"/>
+    </constant>
+    <constant name="Emacron" value="938">
+      <type name="int"/>
+    </constant>
+    <constant name="End" value="65367">
+      <type name="int"/>
+    </constant>
+    <constant name="Eogonek" value="458">
+      <type name="int"/>
+    </constant>
+    <constant name="Escape" value="65307">
+      <type name="int"/>
+    </constant>
+    <constant name="Eth" value="208">
+      <type name="int"/>
+    </constant>
+    <constant name="Etilde" value="16785084">
+      <type name="int"/>
+    </constant>
+    <constant name="EuroSign" value="8364">
+      <type name="int"/>
+    </constant>
+    <union name="Event"
+           c:type="GdkEvent"
+           glib:type-name="GdkEvent"
+           glib:get-type="gdk_event_get_type">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="any" writable="1">
+        <type name="EventAny" c:type="GdkEventAny"/>
+      </field>
+      <field name="expose" writable="1">
+        <type name="EventExpose" c:type="GdkEventExpose"/>
+      </field>
+      <field name="no_expose" writable="1">
+        <type name="EventNoExpose" c:type="GdkEventNoExpose"/>
+      </field>
+      <field name="visibility" writable="1">
+        <type name="EventVisibility" c:type="GdkEventVisibility"/>
+      </field>
+      <field name="motion" writable="1">
+        <type name="EventMotion" c:type="GdkEventMotion"/>
+      </field>
+      <field name="button" writable="1">
+        <type name="EventButton" c:type="GdkEventButton"/>
+      </field>
+      <field name="scroll" writable="1">
+        <type name="EventScroll" c:type="GdkEventScroll"/>
+      </field>
+      <field name="key" writable="1">
+        <type name="EventKey" c:type="GdkEventKey"/>
+      </field>
+      <field name="crossing" writable="1">
+        <type name="EventCrossing" c:type="GdkEventCrossing"/>
+      </field>
+      <field name="focus_change" writable="1">
+        <type name="EventFocus" c:type="GdkEventFocus"/>
+      </field>
+      <field name="configure" writable="1">
+        <type name="EventConfigure" c:type="GdkEventConfigure"/>
+      </field>
+      <field name="property" writable="1">
+        <type name="EventProperty" c:type="GdkEventProperty"/>
+      </field>
+      <field name="selection" writable="1">
+        <type name="EventSelection" c:type="GdkEventSelection"/>
+      </field>
+      <field name="owner_change" writable="1">
+        <type name="EventOwnerChange" c:type="GdkEventOwnerChange"/>
+      </field>
+      <field name="proximity" writable="1">
+        <type name="EventProximity" c:type="GdkEventProximity"/>
+      </field>
+      <field name="client" writable="1">
+        <type name="EventClient" c:type="GdkEventClient"/>
+      </field>
+      <field name="dnd" writable="1">
+        <type name="EventDND" c:type="GdkEventDND"/>
+      </field>
+      <field name="window_state" writable="1">
+        <type name="EventWindowState" c:type="GdkEventWindowState"/>
+      </field>
+      <field name="setting" writable="1">
+        <type name="EventSetting" c:type="GdkEventSetting"/>
+      </field>
+      <field name="grab_broken" writable="1">
+        <type name="EventGrabBroken" c:type="GdkEventGrabBroken"/>
+      </field>
+      <constructor name="new"
+                   c:identifier="gdk_event_new"
+                   doc="Creates a new event of the given type. All fields are set to 0.
+should be freed with gdk_event_free()."
+                   version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="a newly-allocated #GdkEvent. The returned #GdkEvent">
+          <type name="Event" c:type="GdkEvent*"/>
+        </return-value>
+        <parameters>
+          <parameter name="type"
+                     transfer-ownership="none"
+                     doc="a #GdkEventType">
+            <type name="EventType" c:type="GdkEventType"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="put"
+              c:identifier="gdk_event_put"
+              doc="Appends a copy of the given event onto the front of the event
+queue for event-&gt;any.window&apos;s display, or the default event
+queue if event-&gt;any.window is %NULL. See gdk_display_put_event().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="copy"
+              c:identifier="gdk_event_copy"
+              doc="Copies a #GdkEvent, copying or incrementing the reference count of the
+resources associated with it (e.g. #GdkWindow&apos;s and strings).
+gdk_event_free().">
+        <return-value transfer-ownership="full"
+                      doc="a copy of @event. The returned #GdkEvent should be freed with">
+          <type name="Event" c:type="GdkEvent*"/>
+        </return-value>
+      </method>
+      <method name="free"
+              c:identifier="gdk_event_free"
+              doc="Frees a #GdkEvent, freeing or decrementing any resources associated with it.
+Note that this function should only be called with events returned from
+functions such as gdk_event_peek(), gdk_event_get(),
+gdk_event_get_graphics_expose() and gdk_event_copy() and gdk_event_new().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_time"
+              c:identifier="gdk_event_get_time"
+              doc="Returns the time stamp from @event, if there is one; otherwise
+returns #GDK_CURRENT_TIME. If @event is %NULL, returns #GDK_CURRENT_TIME.">
+        <return-value transfer-ownership="none"
+                      doc="time stamp field from @event">
+          <type name="uint32" c:type="guint32"/>
+        </return-value>
+      </method>
+      <method name="get_state"
+              c:identifier="gdk_event_get_state"
+              doc="If the event contains a &quot;state&quot; field, puts that field in @state. Otherwise
+stores an empty state (0). Returns %TRUE if there was a state field
+in the event. @event may be %NULL, in which case it&apos;s treated
+as if the event had no state field.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if there was a state field in the event">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="state"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none"
+                     doc="return location for state">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_coords"
+              c:identifier="gdk_event_get_coords"
+              doc="Extract the event window relative x/y coordinates from an event.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the event delivered event window coordinates">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="x_win"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to put event window x coordinate">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="y_win"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to put event window y coordinate">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_root_coords"
+              c:identifier="gdk_event_get_root_coords"
+              doc="Extract the root window relative x/y coordinates from an event.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the event delivered root window coordinates">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="x_root"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to put root window x coordinate">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="y_root"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to put root window y coordinate">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_axis"
+              c:identifier="gdk_event_get_axis"
+              doc="Extract the axis value for a particular axis use from
+an event structure.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the specified axis was found, otherwise %FALSE">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="axis_use"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none"
+                     doc="the axis use to look for">
+            <type name="AxisUse" c:type="GdkAxisUse"/>
+          </parameter>
+          <parameter name="value"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store the value found">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_screen"
+              c:identifier="gdk_event_set_screen"
+              doc="Sets the screen for @event to @screen. The event must
+have been allocated by GTK+, for instance, by
+gdk_event_copy()."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     doc="a #GdkScreen">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_screen"
+              c:identifier="gdk_event_get_screen"
+              doc="Returns the screen for the event. The screen is
+typically the screen for &lt;literal&gt;event-&gt;any.window&lt;/literal&gt;, but
+for events such as mouse events, it is the screen
+where the pointer was when the event occurs -
+that is, the screen which has the root window 
+to which &lt;literal&gt;event-&gt;motion.x_root&lt;/literal&gt; and
+&lt;literal&gt;event-&gt;motion.y_root&lt;/literal&gt; are relative."
+              version="2.2">
+        <return-value transfer-ownership="full" doc="the screen for the event">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </method>
+      <method name="send_client_message"
+              c:identifier="gdk_event_send_client_message"
+              doc="Sends an X ClientMessage event to a given window (which must be
+on the default #GdkDisplay.)
+This could be used for communicating between different applications,
+though the amount of data is limited to 20 bytes.">
+        <return-value transfer-ownership="none" doc="non-zero on success.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="winid"
+                     transfer-ownership="none"
+                     doc="the window to send the X ClientMessage event to.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="send_clientmessage_toall"
+              c:identifier="gdk_event_send_clientmessage_toall"
+              doc="Sends an X ClientMessage event to all toplevel windows on the default
+#GdkScreen.
+Toplevel windows are determined by checking for the WM_STATE property, as
+described in the Inter-Client Communication Conventions Manual (ICCCM).
+If no windows are found with the WM_STATE property set, the message is sent
+to all children of the root window.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+    </union>
+    <record name="EventAny" c:type="GdkEventAny">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+    </record>
+    <record name="EventButton" c:type="GdkEventButton">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="x" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="axes" writable="1">
+        <type name="any" c:type="gdouble*"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="button" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="device" writable="1">
+        <type name="Device" c:type="GdkDevice*"/>
+      </field>
+      <field name="x_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+    </record>
+    <record name="EventClient" c:type="GdkEventClient">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="message_type" writable="1">
+        <type name="Atom" c:type="GdkAtom"/>
+      </field>
+      <field name="data_format" writable="1">
+        <type name="ushort" c:type="gushort"/>
+      </field>
+      <union name="data" c:type="data">
+        <field name="b" writable="1">
+          <array zero-terminated="0" c:type="char" fixed-size="20">
+            <type name="int8"/>
+          </array>
+        </field>
+        <field name="s" writable="1">
+          <array zero-terminated="0" c:type="short" fixed-size="10">
+            <type name="short"/>
+          </array>
+        </field>
+        <field name="l" writable="1">
+          <array zero-terminated="0" c:type="long" fixed-size="5">
+            <type name="long"/>
+          </array>
+        </field>
+      </union>
+    </record>
+    <record name="EventConfigure" c:type="GdkEventConfigure">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="x" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="height" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <record name="EventCrossing" c:type="GdkEventCrossing">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="subwindow" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="x" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="x_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="mode" writable="1">
+        <type name="CrossingMode" c:type="GdkCrossingMode"/>
+      </field>
+      <field name="detail" writable="1">
+        <type name="NotifyType" c:type="GdkNotifyType"/>
+      </field>
+      <field name="focus" writable="1">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+    </record>
+    <record name="EventDND" c:type="GdkEventDND">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="context" writable="1">
+        <type name="DragContext" c:type="GdkDragContext*"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="x_root" writable="1">
+        <type name="short" c:type="gshort"/>
+      </field>
+      <field name="y_root" writable="1">
+        <type name="short" c:type="gshort"/>
+      </field>
+    </record>
+    <record name="EventExpose" c:type="GdkEventExpose">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="area" writable="1">
+        <type name="Rectangle" c:type="GdkRectangle"/>
+      </field>
+      <field name="region" writable="1">
+        <type name="Region" c:type="GdkRegion*"/>
+      </field>
+      <field name="count" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <record name="EventFocus" c:type="GdkEventFocus">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="in" writable="1">
+        <type name="int16" c:type="gint16"/>
+      </field>
+    </record>
+    <callback name="EventFunc" c:type="GdkEventFunc">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="event" transfer-ownership="none">
+          <type name="Event" c:type="GdkEvent*"/>
+        </parameter>
+        <parameter name="data" transfer-ownership="none">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <record name="EventGrabBroken" c:type="GdkEventGrabBroken">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="keyboard" writable="1">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="implicit" writable="1">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="grab_window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+    </record>
+    <record name="EventKey" c:type="GdkEventKey">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="keyval" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="length" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="string" writable="1">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="hardware_keycode" writable="1">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="group" writable="1">
+        <type name="uint8" c:type="guint8"/>
+      </field>
+      <field name="is_modifier" writable="1" bits="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+    </record>
+    <bitfield name="EventMask"
+              glib:type-name="GdkEventMask"
+              glib:get-type="gdk_event_mask_get_type"
+              c:type="GdkEventMask">
+      <member name="exposure_mask"
+              value="2"
+              c:identifier="GDK_EXPOSURE_MASK"
+              glib:nick="exposure-mask"/>
+      <member name="pointer_motion_mask"
+              value="4"
+              c:identifier="GDK_POINTER_MOTION_MASK"
+              glib:nick="pointer-motion-mask"/>
+      <member name="pointer_motion_hint_mask"
+              value="8"
+              c:identifier="GDK_POINTER_MOTION_HINT_MASK"
+              glib:nick="pointer-motion-hint-mask"/>
+      <member name="button_motion_mask"
+              value="16"
+              c:identifier="GDK_BUTTON_MOTION_MASK"
+              glib:nick="button-motion-mask"/>
+      <member name="button1_motion_mask"
+              value="32"
+              c:identifier="GDK_BUTTON1_MOTION_MASK"
+              glib:nick="button1-motion-mask"/>
+      <member name="button2_motion_mask"
+              value="64"
+              c:identifier="GDK_BUTTON2_MOTION_MASK"
+              glib:nick="button2-motion-mask"/>
+      <member name="button3_motion_mask"
+              value="128"
+              c:identifier="GDK_BUTTON3_MOTION_MASK"
+              glib:nick="button3-motion-mask"/>
+      <member name="button_press_mask"
+              value="256"
+              c:identifier="GDK_BUTTON_PRESS_MASK"
+              glib:nick="button-press-mask"/>
+      <member name="button_release_mask"
+              value="512"
+              c:identifier="GDK_BUTTON_RELEASE_MASK"
+              glib:nick="button-release-mask"/>
+      <member name="key_press_mask"
+              value="1024"
+              c:identifier="GDK_KEY_PRESS_MASK"
+              glib:nick="key-press-mask"/>
+      <member name="key_release_mask"
+              value="2048"
+              c:identifier="GDK_KEY_RELEASE_MASK"
+              glib:nick="key-release-mask"/>
+      <member name="enter_notify_mask"
+              value="4096"
+              c:identifier="GDK_ENTER_NOTIFY_MASK"
+              glib:nick="enter-notify-mask"/>
+      <member name="leave_notify_mask"
+              value="8192"
+              c:identifier="GDK_LEAVE_NOTIFY_MASK"
+              glib:nick="leave-notify-mask"/>
+      <member name="focus_change_mask"
+              value="16384"
+              c:identifier="GDK_FOCUS_CHANGE_MASK"
+              glib:nick="focus-change-mask"/>
+      <member name="structure_mask"
+              value="32768"
+              c:identifier="GDK_STRUCTURE_MASK"
+              glib:nick="structure-mask"/>
+      <member name="property_change_mask"
+              value="65536"
+              c:identifier="GDK_PROPERTY_CHANGE_MASK"
+              glib:nick="property-change-mask"/>
+      <member name="visibility_notify_mask"
+              value="131072"
+              c:identifier="GDK_VISIBILITY_NOTIFY_MASK"
+              glib:nick="visibility-notify-mask"/>
+      <member name="proximity_in_mask"
+              value="262144"
+              c:identifier="GDK_PROXIMITY_IN_MASK"
+              glib:nick="proximity-in-mask"/>
+      <member name="proximity_out_mask"
+              value="524288"
+              c:identifier="GDK_PROXIMITY_OUT_MASK"
+              glib:nick="proximity-out-mask"/>
+      <member name="substructure_mask"
+              value="1048576"
+              c:identifier="GDK_SUBSTRUCTURE_MASK"
+              glib:nick="substructure-mask"/>
+      <member name="scroll_mask"
+              value="2097152"
+              c:identifier="GDK_SCROLL_MASK"
+              glib:nick="scroll-mask"/>
+      <member name="all_events_mask"
+              value="4194302"
+              c:identifier="GDK_ALL_EVENTS_MASK"
+              glib:nick="all-events-mask"/>
+    </bitfield>
+    <record name="EventMotion" c:type="GdkEventMotion">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="x" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="axes" writable="1">
+        <type name="any" c:type="gdouble*"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="is_hint" writable="1">
+        <type name="int16" c:type="gint16"/>
+      </field>
+      <field name="device" writable="1">
+        <type name="Device" c:type="GdkDevice*"/>
+      </field>
+      <field name="x_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+    </record>
+    <record name="EventNoExpose" c:type="GdkEventNoExpose">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+    </record>
+    <record name="EventOwnerChange" c:type="GdkEventOwnerChange">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="owner" writable="1">
+        <type name="NativeWindow" c:type="GdkNativeWindow"/>
+      </field>
+      <field name="reason" writable="1">
+        <type name="OwnerChange" c:type="GdkOwnerChange"/>
+      </field>
+      <field name="selection" writable="1">
+        <type name="Atom" c:type="GdkAtom"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="selection_time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+    </record>
+    <record name="EventProperty" c:type="GdkEventProperty">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="atom" writable="1">
+        <type name="Atom" c:type="GdkAtom"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+    </record>
+    <record name="EventProximity" c:type="GdkEventProximity">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="device" writable="1">
+        <type name="Device" c:type="GdkDevice*"/>
+      </field>
+    </record>
+    <record name="EventScroll" c:type="GdkEventScroll">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="x" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="direction" writable="1">
+        <type name="ScrollDirection" c:type="GdkScrollDirection"/>
+      </field>
+      <field name="device" writable="1">
+        <type name="Device" c:type="GdkDevice*"/>
+      </field>
+      <field name="x_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="y_root" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+    </record>
+    <record name="EventSelection" c:type="GdkEventSelection">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="selection" writable="1">
+        <type name="Atom" c:type="GdkAtom"/>
+      </field>
+      <field name="target" writable="1">
+        <type name="Atom" c:type="GdkAtom"/>
+      </field>
+      <field name="property" writable="1">
+        <type name="Atom" c:type="GdkAtom"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="requestor" writable="1">
+        <type name="NativeWindow" c:type="GdkNativeWindow"/>
+      </field>
+    </record>
+    <record name="EventSetting" c:type="GdkEventSetting">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="action" writable="1">
+        <type name="SettingAction" c:type="GdkSettingAction"/>
+      </field>
+      <field name="name" writable="1">
+        <type name="utf8" c:type="char*"/>
+      </field>
+    </record>
+    <enumeration name="EventType"
+                 glib:type-name="GdkEventType"
+                 glib:get-type="gdk_event_type_get_type"
+                 c:type="GdkEventType">
+      <member name="nothing"
+              value="-1"
+              c:identifier="GDK_NOTHING"
+              glib:nick="nothing"/>
+      <member name="delete"
+              value="0"
+              c:identifier="GDK_DELETE"
+              glib:nick="delete"/>
+      <member name="destroy"
+              value="1"
+              c:identifier="GDK_DESTROY"
+              glib:nick="destroy"/>
+      <member name="expose"
+              value="2"
+              c:identifier="GDK_EXPOSE"
+              glib:nick="expose"/>
+      <member name="motion_notify"
+              value="3"
+              c:identifier="GDK_MOTION_NOTIFY"
+              glib:nick="motion-notify"/>
+      <member name="button_press"
+              value="4"
+              c:identifier="GDK_BUTTON_PRESS"
+              glib:nick="button-press"/>
+      <member name="2button_press"
+              value="5"
+              c:identifier="GDK_2BUTTON_PRESS"
+              glib:nick="2button-press"/>
+      <member name="3button_press"
+              value="6"
+              c:identifier="GDK_3BUTTON_PRESS"
+              glib:nick="3button-press"/>
+      <member name="button_release"
+              value="7"
+              c:identifier="GDK_BUTTON_RELEASE"
+              glib:nick="button-release"/>
+      <member name="key_press"
+              value="8"
+              c:identifier="GDK_KEY_PRESS"
+              glib:nick="key-press"/>
+      <member name="key_release"
+              value="9"
+              c:identifier="GDK_KEY_RELEASE"
+              glib:nick="key-release"/>
+      <member name="enter_notify"
+              value="10"
+              c:identifier="GDK_ENTER_NOTIFY"
+              glib:nick="enter-notify"/>
+      <member name="leave_notify"
+              value="11"
+              c:identifier="GDK_LEAVE_NOTIFY"
+              glib:nick="leave-notify"/>
+      <member name="focus_change"
+              value="12"
+              c:identifier="GDK_FOCUS_CHANGE"
+              glib:nick="focus-change"/>
+      <member name="configure"
+              value="13"
+              c:identifier="GDK_CONFIGURE"
+              glib:nick="configure"/>
+      <member name="map" value="14" c:identifier="GDK_MAP" glib:nick="map"/>
+      <member name="unmap"
+              value="15"
+              c:identifier="GDK_UNMAP"
+              glib:nick="unmap"/>
+      <member name="property_notify"
+              value="16"
+              c:identifier="GDK_PROPERTY_NOTIFY"
+              glib:nick="property-notify"/>
+      <member name="selection_clear"
+              value="17"
+              c:identifier="GDK_SELECTION_CLEAR"
+              glib:nick="selection-clear"/>
+      <member name="selection_request"
+              value="18"
+              c:identifier="GDK_SELECTION_REQUEST"
+              glib:nick="selection-request"/>
+      <member name="selection_notify"
+              value="19"
+              c:identifier="GDK_SELECTION_NOTIFY"
+              glib:nick="selection-notify"/>
+      <member name="proximity_in"
+              value="20"
+              c:identifier="GDK_PROXIMITY_IN"
+              glib:nick="proximity-in"/>
+      <member name="proximity_out"
+              value="21"
+              c:identifier="GDK_PROXIMITY_OUT"
+              glib:nick="proximity-out"/>
+      <member name="drag_enter"
+              value="22"
+              c:identifier="GDK_DRAG_ENTER"
+              glib:nick="drag-enter"/>
+      <member name="drag_leave"
+              value="23"
+              c:identifier="GDK_DRAG_LEAVE"
+              glib:nick="drag-leave"/>
+      <member name="drag_motion"
+              value="24"
+              c:identifier="GDK_DRAG_MOTION"
+              glib:nick="drag-motion"/>
+      <member name="drag_status"
+              value="25"
+              c:identifier="GDK_DRAG_STATUS"
+              glib:nick="drag-status"/>
+      <member name="drop_start"
+              value="26"
+              c:identifier="GDK_DROP_START"
+              glib:nick="drop-start"/>
+      <member name="drop_finished"
+              value="27"
+              c:identifier="GDK_DROP_FINISHED"
+              glib:nick="drop-finished"/>
+      <member name="client_event"
+              value="28"
+              c:identifier="GDK_CLIENT_EVENT"
+              glib:nick="client-event"/>
+      <member name="visibility_notify"
+              value="29"
+              c:identifier="GDK_VISIBILITY_NOTIFY"
+              glib:nick="visibility-notify"/>
+      <member name="no_expose"
+              value="30"
+              c:identifier="GDK_NO_EXPOSE"
+              glib:nick="no-expose"/>
+      <member name="scroll"
+              value="31"
+              c:identifier="GDK_SCROLL"
+              glib:nick="scroll"/>
+      <member name="window_state"
+              value="32"
+              c:identifier="GDK_WINDOW_STATE"
+              glib:nick="window-state"/>
+      <member name="setting"
+              value="33"
+              c:identifier="GDK_SETTING"
+              glib:nick="setting"/>
+      <member name="owner_change"
+              value="34"
+              c:identifier="GDK_OWNER_CHANGE"
+              glib:nick="owner-change"/>
+      <member name="grab_broken"
+              value="35"
+              c:identifier="GDK_GRAB_BROKEN"
+              glib:nick="grab-broken"/>
+      <member name="damage"
+              value="36"
+              c:identifier="GDK_DAMAGE"
+              glib:nick="damage"/>
+      <member name="event_last"
+              value="37"
+              c:identifier="GDK_EVENT_LAST"
+              glib:nick="event-last"/>
+    </enumeration>
+    <record name="EventVisibility" c:type="GdkEventVisibility">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="VisibilityState" c:type="GdkVisibilityState"/>
+      </field>
+    </record>
+    <record name="EventWindowState" c:type="GdkEventWindowState">
+      <field name="type" writable="1">
+        <type name="EventType" c:type="GdkEventType"/>
+      </field>
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="send_event" writable="1">
+        <type name="int8" c:type="gint8"/>
+      </field>
+      <field name="changed_mask" writable="1">
+        <type name="WindowState" c:type="GdkWindowState"/>
+      </field>
+      <field name="new_window_state" writable="1">
+        <type name="WindowState" c:type="GdkWindowState"/>
+      </field>
+    </record>
+    <constant name="Excel" value="269025116">
+      <type name="int"/>
+    </constant>
+    <constant name="Execute" value="65378">
+      <type name="int"/>
+    </constant>
+    <constant name="Explorer" value="269025117">
+      <type name="int"/>
+    </constant>
+    <enumeration name="ExtensionMode"
+                 glib:type-name="GdkExtensionMode"
+                 glib:get-type="gdk_extension_mode_get_type"
+                 c:type="GdkExtensionMode">
+      <member name="none"
+              value="0"
+              c:identifier="GDK_EXTENSION_EVENTS_NONE"
+              glib:nick="none"/>
+      <member name="all"
+              value="1"
+              c:identifier="GDK_EXTENSION_EVENTS_ALL"
+              glib:nick="all"/>
+      <member name="cursor"
+              value="2"
+              c:identifier="GDK_EXTENSION_EVENTS_CURSOR"
+              glib:nick="cursor"/>
+    </enumeration>
+    <constant name="F" value="70">
+      <type name="int"/>
+    </constant>
+    <constant name="F1" value="65470">
+      <type name="int"/>
+    </constant>
+    <constant name="F10" value="65479">
+      <type name="int"/>
+    </constant>
+    <constant name="F11" value="65480">
+      <type name="int"/>
+    </constant>
+    <constant name="F12" value="65481">
+      <type name="int"/>
+    </constant>
+    <constant name="F13" value="65482">
+      <type name="int"/>
+    </constant>
+    <constant name="F14" value="65483">
+      <type name="int"/>
+    </constant>
+    <constant name="F15" value="65484">
+      <type name="int"/>
+    </constant>
+    <constant name="F16" value="65485">
+      <type name="int"/>
+    </constant>
+    <constant name="F17" value="65486">
+      <type name="int"/>
+    </constant>
+    <constant name="F18" value="65487">
+      <type name="int"/>
+    </constant>
+    <constant name="F19" value="65488">
+      <type name="int"/>
+    </constant>
+    <constant name="F2" value="65471">
+      <type name="int"/>
+    </constant>
+    <constant name="F20" value="65489">
+      <type name="int"/>
+    </constant>
+    <constant name="F21" value="65490">
+      <type name="int"/>
+    </constant>
+    <constant name="F22" value="65491">
+      <type name="int"/>
+    </constant>
+    <constant name="F23" value="65492">
+      <type name="int"/>
+    </constant>
+    <constant name="F24" value="65493">
+      <type name="int"/>
+    </constant>
+    <constant name="F25" value="65494">
+      <type name="int"/>
+    </constant>
+    <constant name="F26" value="65495">
+      <type name="int"/>
+    </constant>
+    <constant name="F27" value="65496">
+      <type name="int"/>
+    </constant>
+    <constant name="F28" value="65497">
+      <type name="int"/>
+    </constant>
+    <constant name="F29" value="65498">
+      <type name="int"/>
+    </constant>
+    <constant name="F3" value="65472">
+      <type name="int"/>
+    </constant>
+    <constant name="F30" value="65499">
+      <type name="int"/>
+    </constant>
+    <constant name="F31" value="65500">
+      <type name="int"/>
+    </constant>
+    <constant name="F32" value="65501">
+      <type name="int"/>
+    </constant>
+    <constant name="F33" value="65502">
+      <type name="int"/>
+    </constant>
+    <constant name="F34" value="65503">
+      <type name="int"/>
+    </constant>
+    <constant name="F35" value="65504">
+      <type name="int"/>
+    </constant>
+    <constant name="F4" value="65473">
+      <type name="int"/>
+    </constant>
+    <constant name="F5" value="65474">
+      <type name="int"/>
+    </constant>
+    <constant name="F6" value="65475">
+      <type name="int"/>
+    </constant>
+    <constant name="F7" value="65476">
+      <type name="int"/>
+    </constant>
+    <constant name="F8" value="65477">
+      <type name="int"/>
+    </constant>
+    <constant name="F9" value="65478">
+      <type name="int"/>
+    </constant>
+    <constant name="FFrancSign" value="16785571">
+      <type name="int"/>
+    </constant>
+    <constant name="Fabovedot" value="16784926">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_0" value="16778992">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_1" value="16778993">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_2" value="16778994">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_3" value="16778995">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_4" value="16778996">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_5" value="16778997">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_6" value="16778998">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_7" value="16778999">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_8" value="16779000">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_9" value="16779001">
+      <type name="int"/>
+    </constant>
+    <constant name="Farsi_yeh" value="16778956">
+      <type name="int"/>
+    </constant>
+    <constant name="Favorites" value="269025072">
+      <type name="int"/>
+    </constant>
+    <enumeration name="Fill"
+                 glib:type-name="GdkFill"
+                 glib:get-type="gdk_fill_get_type"
+                 c:type="GdkFill">
+      <member name="solid"
+              value="0"
+              c:identifier="GDK_SOLID"
+              glib:nick="solid"/>
+      <member name="tiled"
+              value="1"
+              c:identifier="GDK_TILED"
+              glib:nick="tiled"/>
+      <member name="stippled"
+              value="2"
+              c:identifier="GDK_STIPPLED"
+              glib:nick="stippled"/>
+      <member name="opaque_stippled"
+              value="3"
+              c:identifier="GDK_OPAQUE_STIPPLED"
+              glib:nick="opaque-stippled"/>
+    </enumeration>
+    <enumeration name="FillRule"
+                 glib:type-name="GdkFillRule"
+                 glib:get-type="gdk_fill_rule_get_type"
+                 c:type="GdkFillRule">
+      <member name="even_odd_rule"
+              value="0"
+              c:identifier="GDK_EVEN_ODD_RULE"
+              glib:nick="even-odd-rule"/>
+      <member name="winding_rule"
+              value="1"
+              c:identifier="GDK_WINDING_RULE"
+              glib:nick="winding-rule"/>
+    </enumeration>
+    <callback name="FilterFunc" c:type="GdkFilterFunc">
+      <return-value transfer-ownership="full">
+        <type name="FilterReturn" c:type="GdkFilterReturn"/>
+      </return-value>
+      <parameters>
+        <parameter name="xevent" transfer-ownership="none">
+          <type name="XEvent" c:type="GdkXEvent*"/>
+        </parameter>
+        <parameter name="event" transfer-ownership="none">
+          <type name="Event" c:type="GdkEvent*"/>
+        </parameter>
+        <parameter name="data" transfer-ownership="none">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <enumeration name="FilterReturn"
+                 glib:type-name="GdkFilterReturn"
+                 glib:get-type="gdk_filter_return_get_type"
+                 c:type="GdkFilterReturn">
+      <member name="continue"
+              value="0"
+              c:identifier="GDK_FILTER_CONTINUE"
+              glib:nick="continue"/>
+      <member name="translate"
+              value="1"
+              c:identifier="GDK_FILTER_TRANSLATE"
+              glib:nick="translate"/>
+      <member name="remove"
+              value="2"
+              c:identifier="GDK_FILTER_REMOVE"
+              glib:nick="remove"/>
+    </enumeration>
+    <constant name="Finance" value="269025084">
+      <type name="int"/>
+    </constant>
+    <constant name="Find" value="65384">
+      <type name="int"/>
+    </constant>
+    <constant name="First_Virtual_Screen" value="65232">
+      <type name="int"/>
+    </constant>
+    <record name="Font"
+            c:type="GdkFont"
+            glib:type-name="GdkFont"
+            glib:get-type="gdk_font_get_type">
+      <field name="type" writable="1">
+        <type name="FontType" c:type="GdkFontType"/>
+      </field>
+      <field name="ascent" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="descent" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <method name="ref"
+              c:identifier="gdk_font_ref"
+              doc="Increases the reference count of a font by one.">
+        <return-value transfer-ownership="full" doc="@font">
+          <type name="Font" c:type="GdkFont*"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_font_unref"
+              doc="Decreases the reference count of a font by one.
+If the result is zero, destroys the font.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="id"
+              c:identifier="gdk_font_id"
+              doc="Returns the X Font ID for the given font. ">
+        <return-value transfer-ownership="none" doc="the numeric X Font ID">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="equal"
+              c:identifier="gdk_font_equal"
+              doc="Compares two fonts for equality. Single fonts compare equal
+if they have the same X font ID. This operation does
+not currently work correctly for fontsets.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the fonts are equal.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="fontb"
+                     transfer-ownership="none"
+                     doc="another #GdkFont.">
+            <type name="Font" c:type="GdkFont*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_display" c:identifier="gdk_font_get_display">
+        <return-value transfer-ownership="full">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </method>
+    </record>
+    <enumeration name="FontType"
+                 glib:type-name="GdkFontType"
+                 glib:get-type="gdk_font_type_get_type"
+                 c:type="GdkFontType">
+      <member name="font"
+              value="0"
+              c:identifier="GDK_FONT_FONT"
+              glib:nick="font"/>
+      <member name="fontset"
+              value="1"
+              c:identifier="GDK_FONT_FONTSET"
+              glib:nick="fontset"/>
+    </enumeration>
+    <constant name="Forward" value="269025063">
+      <type name="int"/>
+    </constant>
+    <constant name="FrameBack" value="269025181">
+      <type name="int"/>
+    </constant>
+    <constant name="FrameForward" value="269025182">
+      <type name="int"/>
+    </constant>
+    <enumeration name="Function"
+                 glib:type-name="GdkFunction"
+                 glib:get-type="gdk_function_get_type"
+                 c:type="GdkFunction">
+      <member name="copy" value="0" c:identifier="GDK_COPY" glib:nick="copy"/>
+      <member name="invert"
+              value="1"
+              c:identifier="GDK_INVERT"
+              glib:nick="invert"/>
+      <member name="xor" value="2" c:identifier="GDK_XOR" glib:nick="xor"/>
+      <member name="clear"
+              value="3"
+              c:identifier="GDK_CLEAR"
+              glib:nick="clear"/>
+      <member name="and" value="4" c:identifier="GDK_AND" glib:nick="and"/>
+      <member name="and_reverse"
+              value="5"
+              c:identifier="GDK_AND_REVERSE"
+              glib:nick="and-reverse"/>
+      <member name="and_invert"
+              value="6"
+              c:identifier="GDK_AND_INVERT"
+              glib:nick="and-invert"/>
+      <member name="noop" value="7" c:identifier="GDK_NOOP" glib:nick="noop"/>
+      <member name="or" value="8" c:identifier="GDK_OR" glib:nick="or"/>
+      <member name="equiv"
+              value="9"
+              c:identifier="GDK_EQUIV"
+              glib:nick="equiv"/>
+      <member name="or_reverse"
+              value="10"
+              c:identifier="GDK_OR_REVERSE"
+              glib:nick="or-reverse"/>
+      <member name="copy_invert"
+              value="11"
+              c:identifier="GDK_COPY_INVERT"
+              glib:nick="copy-invert"/>
+      <member name="or_invert"
+              value="12"
+              c:identifier="GDK_OR_INVERT"
+              glib:nick="or-invert"/>
+      <member name="nand" value="13" c:identifier="GDK_NAND" glib:nick="nand"/>
+      <member name="nor" value="14" c:identifier="GDK_NOR" glib:nick="nor"/>
+      <member name="set" value="15" c:identifier="GDK_SET" glib:nick="set"/>
+    </enumeration>
+    <constant name="G" value="71">
+      <type name="int"/>
+    </constant>
+    <class name="GC"
+           c:type="GdkGC"
+           parent="GObject.Object"
+           glib:type-name="GdkGC"
+           glib:get-type="gdk_gc_get_type"
+           glib:type-struct="GCClass">
+      <constructor name="new"
+                   c:identifier="gdk_gc_new"
+                   doc="Create a new graphics context with default values. ">
+        <return-value transfer-ownership="full"
+                      doc="the new graphics context.">
+          <type name="GC" c:type="GdkGC*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable. The created GC must always be used with drawables of the same depth as this one.">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_with_values"
+                   c:identifier="gdk_gc_new_with_values"
+                   doc="Create a new GC with the given initial values.">
+        <return-value transfer-ownership="full"
+                      doc="the new graphics context.">
+          <type name="GC" c:type="GdkGC*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable. The created GC must always be used with drawables of the same depth as this one.">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="values"
+                     transfer-ownership="none"
+                     doc="a structure containing initial values for the GC.">
+            <type name="GCValues" c:type="GdkGCValues*"/>
+          </parameter>
+          <parameter name="values_mask"
+                     transfer-ownership="none"
+                     doc="a bit mask indicating which fields in @values are set.">
+            <type name="GCValuesMask" c:type="GdkGCValuesMask"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <virtual-method name="get_values"
+                      invoker="get_values"
+                      doc="Retrieves the current values from a graphics context. Note that 
+only the pixel values of the @values-&gt;foreground and @values-&gt;background
+are filled, use gdk_colormap_query_color() to obtain the rgb values
+if you need them.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="values"
+                     transfer-ownership="none"
+                     doc="the #GdkGCValues structure in which to store the results.">
+            <type name="GCValues" c:type="GdkGCValues*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="set_values">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="values" transfer-ownership="none">
+            <type name="GCValues" c:type="GdkGCValues*"/>
+          </parameter>
+          <parameter name="mask" transfer-ownership="none">
+            <type name="GCValuesMask" c:type="GdkGCValuesMask"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="set_dashes"
+                      invoker="set_dashes"
+                      doc="Sets the way dashed-lines are drawn. Lines will be
+drawn with alternating on and off segments of the
+lengths specified in @dash_list. The manner in
+which the on and off segments are drawn is determined
+by the @line_style value of the GC. (This can
+be changed with gdk_gc_set_line_attributes().)
+The @dash_offset defines the phase of the pattern, 
+specifying how many pixels into the dash-list the pattern 
+should actually begin.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="dash_offset"
+                     transfer-ownership="none"
+                     doc="the phase of the dash pattern.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dash_list"
+                     transfer-ownership="none"
+                     doc="an array of dash lengths.">
+            <type name="int8" c:type="gint8"/>
+          </parameter>
+          <parameter name="n"
+                     transfer-ownership="none"
+                     doc="the number of elements in @dash_list.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <method name="ref"
+              c:identifier="gdk_gc_ref"
+              doc="Deprecated function; use g_object_ref() instead."
+              deprecated="Use g_object_ref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="full" doc="the gc.">
+          <type name="GC" c:type="GdkGC*"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_gc_unref"
+              doc="Decrement the reference count of @gc."
+              deprecated="Use g_object_unref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_values"
+              c:identifier="gdk_gc_get_values"
+              doc="Retrieves the current values from a graphics context. Note that 
+only the pixel values of the @values-&gt;foreground and @values-&gt;background
+are filled, use gdk_colormap_query_color() to obtain the rgb values
+if you need them.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="values"
+                     transfer-ownership="none"
+                     doc="the #GdkGCValues structure in which to store the results.">
+            <type name="GCValues" c:type="GdkGCValues*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_values"
+              c:identifier="gdk_gc_set_values"
+              doc="Sets attributes of a graphics context in bulk. For each flag set in
+set as the new value for @gc. If you&apos;re only setting a few values
+on @gc, calling individual &quot;setter&quot; functions is likely more
+convenient.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="values"
+                     transfer-ownership="none"
+                     doc="struct containing the new values">
+            <type name="GCValues" c:type="GdkGCValues*"/>
+          </parameter>
+          <parameter name="values_mask"
+                     transfer-ownership="none"
+                     doc="mask indicating which struct fields are to be used">
+            <type name="GCValuesMask" c:type="GdkGCValuesMask"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_foreground"
+              c:identifier="gdk_gc_set_foreground"
+              doc="Sets the foreground color for a graphics context.
+Note that this function uses @color-&gt;pixel, use 
+gdk_gc_set_rgb_fg_color() to specify the foreground 
+color as red, green, blue components.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="the new foreground color.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_background"
+              c:identifier="gdk_gc_set_background"
+              doc="Sets the background color for a graphics context.
+Note that this function uses @color-&gt;pixel, use 
+gdk_gc_set_rgb_bg_color() to specify the background 
+color as red, green, blue components.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="the new background color.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_font"
+              c:identifier="gdk_gc_set_font"
+              doc="Sets the font for a graphics context. (Note that
+all text-drawing functions in GDK take a @font
+argument; the value set here is used when that
+argument is %NULL.)">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="font" transfer-ownership="none" doc="the new font.">
+            <type name="Font" c:type="GdkFont*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_function"
+              c:identifier="gdk_gc_set_function"
+              doc="Determines how the current pixel values and the
+pixel values being drawn are combined to produce
+the final pixel values.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="function"
+                     transfer-ownership="none"
+                     doc="the #GdkFunction to use">
+            <type name="Function" c:type="GdkFunction"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_fill"
+              c:identifier="gdk_gc_set_fill"
+              doc="Set the fill mode for a graphics context.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="fill"
+                     transfer-ownership="none"
+                     doc="the new fill mode.">
+            <type name="Fill" c:type="GdkFill"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_tile"
+              c:identifier="gdk_gc_set_tile"
+              doc="Set a tile pixmap for a graphics context.
+This will only be used if the fill mode
+is %GDK_TILED.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="tile"
+                     transfer-ownership="none"
+                     doc="the new tile pixmap.">
+            <type name="Pixmap" c:type="GdkPixmap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_stipple"
+              c:identifier="gdk_gc_set_stipple"
+              doc="Set the stipple bitmap for a graphics context. The
+stipple will only be used if the fill mode is
+%GDK_STIPPLED or %GDK_OPAQUE_STIPPLED.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="stipple"
+                     transfer-ownership="none"
+                     doc="the new stipple bitmap.">
+            <type name="Pixmap" c:type="GdkPixmap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_ts_origin"
+              c:identifier="gdk_gc_set_ts_origin"
+              doc="Set the origin when using tiles or stipples with
+the GC. The tile or stipple will be aligned such
+that the upper left corner of the tile or stipple
+will coincide with this point.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the x-coordinate of the origin.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the y-coordinate of the origin.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_clip_origin"
+              c:identifier="gdk_gc_set_clip_origin"
+              doc="Sets the origin of the clip mask. The coordinates are
+interpreted relative to the upper-left corner of
+the destination drawable of the current operation.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the x-coordinate of the origin.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the y-coordinate of the origin.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_clip_mask"
+              c:identifier="gdk_gc_set_clip_mask"
+              doc="Sets the clip mask for a graphics context from a bitmap.
+The clip mask is interpreted relative to the clip
+origin. (See gdk_gc_set_clip_origin()).">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mask" transfer-ownership="none" doc="a bitmap.">
+            <type name="Bitmap" c:type="GdkBitmap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_clip_rectangle"
+              c:identifier="gdk_gc_set_clip_rectangle"
+              doc="Sets the clip mask for a graphics context from a
+rectangle. The clip mask is interpreted relative to the clip
+origin. (See gdk_gc_set_clip_origin()).">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rectangle"
+                     transfer-ownership="none"
+                     doc="the rectangle to clip to.">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_clip_region"
+              c:identifier="gdk_gc_set_clip_region"
+              doc="Sets the clip mask for a graphics context from a region structure.
+The clip mask is interpreted relative to the clip origin. (See
+gdk_gc_set_clip_origin()).">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="region"
+                     transfer-ownership="none"
+                     doc="the #GdkRegion.">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_subwindow"
+              c:identifier="gdk_gc_set_subwindow"
+              doc="Sets how drawing with this GC on a window will affect child
+windows of that window. ">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mode"
+                     transfer-ownership="none"
+                     doc="the subwindow mode.">
+            <type name="SubwindowMode" c:type="GdkSubwindowMode"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_exposures"
+              c:identifier="gdk_gc_set_exposures"
+              doc="Sets whether copying non-visible portions of a drawable
+using this graphics context generate exposure events
+for the corresponding regions of the destination
+drawable. (See gdk_draw_drawable()).">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="exposures"
+                     transfer-ownership="none"
+                     doc="if %TRUE, exposure events will be generated.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_line_attributes"
+              c:identifier="gdk_gc_set_line_attributes"
+              doc="Sets various attributes of how lines are drawn. See
+the corresponding members of #GdkGCValues for full
+explanations of the arguments.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="line_width"
+                     transfer-ownership="none"
+                     doc="the width of lines.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="line_style"
+                     transfer-ownership="none"
+                     doc="the dash-style for lines.">
+            <type name="LineStyle" c:type="GdkLineStyle"/>
+          </parameter>
+          <parameter name="cap_style"
+                     transfer-ownership="none"
+                     doc="the manner in which the ends of lines are drawn.">
+            <type name="CapStyle" c:type="GdkCapStyle"/>
+          </parameter>
+          <parameter name="join_style"
+                     transfer-ownership="none"
+                     doc="the in which lines are joined together.">
+            <type name="JoinStyle" c:type="GdkJoinStyle"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_dashes"
+              c:identifier="gdk_gc_set_dashes"
+              doc="Sets the way dashed-lines are drawn. Lines will be
+drawn with alternating on and off segments of the
+lengths specified in @dash_list. The manner in
+which the on and off segments are drawn is determined
+by the @line_style value of the GC. (This can
+be changed with gdk_gc_set_line_attributes().)
+The @dash_offset defines the phase of the pattern, 
+specifying how many pixels into the dash-list the pattern 
+should actually begin.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="dash_offset"
+                     transfer-ownership="none"
+                     doc="the phase of the dash pattern.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dash_list"
+                     transfer-ownership="none"
+                     doc="an array of dash lengths.">
+            <type name="int8" c:type="gint8"/>
+          </parameter>
+          <parameter name="n"
+                     transfer-ownership="none"
+                     doc="the number of elements in @dash_list.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="offset"
+              c:identifier="gdk_gc_offset"
+              doc="Offset attributes such as the clip and tile-stipple origins
+of the GC so that drawing at x - x_offset, y - y_offset with
+the offset GC  has the same effect as drawing at x, y with the original
+GC.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x_offset"
+                     transfer-ownership="none"
+                     doc="amount by which to offset the GC in the X direction">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y_offset"
+                     transfer-ownership="none"
+                     doc="amount by which to offset the GC in the Y direction">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="copy"
+              c:identifier="gdk_gc_copy"
+              doc="Copy the set of values from one graphics context
+onto another graphics context.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="src_gc"
+                     transfer-ownership="none"
+                     doc="the source graphics context.">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_colormap"
+              c:identifier="gdk_gc_set_colormap"
+              doc="Sets the colormap for the GC to the given colormap. The depth
+of the colormap&apos;s visual must match the depth of the drawable
+for which the GC was created.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="colormap"
+                     transfer-ownership="none"
+                     doc="a #GdkColormap">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_colormap"
+              c:identifier="gdk_gc_get_colormap"
+              doc="Retrieves the colormap for a given GC, if it exists.
+A GC will have a colormap if the drawable for which it was created
+has a colormap, or if a colormap was set explicitely with
+gdk_gc_set_colormap.">
+        <return-value transfer-ownership="full"
+                      doc="the colormap of @gc, or %NULL if @gc doesn&apos;t have one.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="set_rgb_fg_color"
+              c:identifier="gdk_gc_set_rgb_fg_color"
+              doc="Set the foreground color of a GC using an unallocated color. The
+pixel value for the color will be determined using GdkRGB. If the
+colormap for the GC has not previously been initialized for GdkRGB,
+then for pseudo-color colormaps (colormaps with a small modifiable
+number of colors), a colorcube will be allocated in the colormap.
+Calling this function for a GC without a colormap is an error.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="an unallocated #GdkColor.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_rgb_bg_color"
+              c:identifier="gdk_gc_set_rgb_bg_color"
+              doc="Set the background color of a GC using an unallocated color. The
+pixel value for the color will be determined using GdkRGB. If the
+colormap for the GC has not previously been initialized for GdkRGB,
+then for pseudo-color colormaps (colormaps with a small modifiable
+number of colors), a colorcube will be allocated in the colormap.
+Calling this function for a GC without a colormap is an error.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="an unallocated #GdkColor.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_screen"
+              c:identifier="gdk_gc_get_screen"
+              doc="Gets the #GdkScreen for which @gc was created"
+              version="2.2">
+        <return-value transfer-ownership="full" doc="the #GdkScreen for @gc.">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="clip_x_origin">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="clip_y_origin">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="ts_x_origin">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="ts_y_origin">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="colormap">
+        <type name="Colormap" c:type="GdkColormap*"/>
+      </field>
+    </class>
+    <record name="GCClass" c:type="GdkGCClass" glib:is-gtype-struct-for="GC">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="get_values">
+        <callback name="get_values" c:type="get_values">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="values"
+                       transfer-ownership="none"
+                       doc="the #GdkGCValues structure in which to store the results.">
+              <type name="GCValues" c:type="GdkGCValues*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="set_values">
+        <callback name="set_values" c:type="set_values">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="values" transfer-ownership="none">
+              <type name="GCValues" c:type="GdkGCValues*"/>
+            </parameter>
+            <parameter name="mask" transfer-ownership="none">
+              <type name="GCValuesMask" c:type="GdkGCValuesMask"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="set_dashes">
+        <callback name="set_dashes" c:type="set_dashes">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="gc" transfer-ownership="none">
+              <type name="GC" c:type="GdkGC*"/>
+            </parameter>
+            <parameter name="dash_offset"
+                       transfer-ownership="none"
+                       doc="the phase of the dash pattern.">
+              <type name="int" c:type="gint"/>
+            </parameter>
+            <parameter name="dash_list"
+                       transfer-ownership="none"
+                       doc="an array of dash lengths.">
+              <type name="int8" c:type="gint8"/>
+            </parameter>
+            <parameter name="n"
+                       transfer-ownership="none"
+                       doc="the number of elements in @dash_list.">
+              <type name="int" c:type="gint"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="gdk_reserved1">
+        <callback name="gdk_reserved1" c:type="_gdk_reserved1">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved2">
+        <callback name="gdk_reserved2" c:type="_gdk_reserved2">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved3">
+        <callback name="gdk_reserved3" c:type="_gdk_reserved3">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+      <field name="gdk_reserved4">
+        <callback name="gdk_reserved4" c:type="_gdk_reserved4">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+        </callback>
+      </field>
+    </record>
+    <record name="GCValues" c:type="GdkGCValues">
+      <field name="foreground" writable="1">
+        <type name="Color" c:type="GdkColor"/>
+      </field>
+      <field name="background" writable="1">
+        <type name="Color" c:type="GdkColor"/>
+      </field>
+      <field name="font" writable="1">
+        <type name="Font" c:type="GdkFont*"/>
+      </field>
+      <field name="function" writable="1">
+        <type name="Function" c:type="GdkFunction"/>
+      </field>
+      <field name="fill" writable="1">
+        <type name="Fill" c:type="GdkFill"/>
+      </field>
+      <field name="tile" writable="1">
+        <type name="Pixmap" c:type="GdkPixmap*"/>
+      </field>
+      <field name="stipple" writable="1">
+        <type name="Pixmap" c:type="GdkPixmap*"/>
+      </field>
+      <field name="clip_mask" writable="1">
+        <type name="Pixmap" c:type="GdkPixmap*"/>
+      </field>
+      <field name="subwindow_mode" writable="1">
+        <type name="SubwindowMode" c:type="GdkSubwindowMode"/>
+      </field>
+      <field name="ts_x_origin" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="ts_y_origin" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="clip_x_origin" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="clip_y_origin" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="graphics_exposures" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="line_width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="line_style" writable="1">
+        <type name="LineStyle" c:type="GdkLineStyle"/>
+      </field>
+      <field name="cap_style" writable="1">
+        <type name="CapStyle" c:type="GdkCapStyle"/>
+      </field>
+      <field name="join_style" writable="1">
+        <type name="JoinStyle" c:type="GdkJoinStyle"/>
+      </field>
+    </record>
+    <bitfield name="GCValuesMask"
+              glib:type-name="GdkGCValuesMask"
+              glib:get-type="gdk_gc_values_mask_get_type"
+              c:type="GdkGCValuesMask">
+      <member name="foreground"
+              value="1"
+              c:identifier="GDK_GC_FOREGROUND"
+              glib:nick="foreground"/>
+      <member name="background"
+              value="2"
+              c:identifier="GDK_GC_BACKGROUND"
+              glib:nick="background"/>
+      <member name="font"
+              value="4"
+              c:identifier="GDK_GC_FONT"
+              glib:nick="font"/>
+      <member name="function"
+              value="8"
+              c:identifier="GDK_GC_FUNCTION"
+              glib:nick="function"/>
+      <member name="fill"
+              value="16"
+              c:identifier="GDK_GC_FILL"
+              glib:nick="fill"/>
+      <member name="tile"
+              value="32"
+              c:identifier="GDK_GC_TILE"
+              glib:nick="tile"/>
+      <member name="stipple"
+              value="64"
+              c:identifier="GDK_GC_STIPPLE"
+              glib:nick="stipple"/>
+      <member name="clip_mask"
+              value="128"
+              c:identifier="GDK_GC_CLIP_MASK"
+              glib:nick="clip-mask"/>
+      <member name="subwindow"
+              value="256"
+              c:identifier="GDK_GC_SUBWINDOW"
+              glib:nick="subwindow"/>
+      <member name="ts_x_origin"
+              value="512"
+              c:identifier="GDK_GC_TS_X_ORIGIN"
+              glib:nick="ts-x-origin"/>
+      <member name="ts_y_origin"
+              value="1024"
+              c:identifier="GDK_GC_TS_Y_ORIGIN"
+              glib:nick="ts-y-origin"/>
+      <member name="clip_x_origin"
+              value="2048"
+              c:identifier="GDK_GC_CLIP_X_ORIGIN"
+              glib:nick="clip-x-origin"/>
+      <member name="clip_y_origin"
+              value="4096"
+              c:identifier="GDK_GC_CLIP_Y_ORIGIN"
+              glib:nick="clip-y-origin"/>
+      <member name="exposures"
+              value="8192"
+              c:identifier="GDK_GC_EXPOSURES"
+              glib:nick="exposures"/>
+      <member name="line_width"
+              value="16384"
+              c:identifier="GDK_GC_LINE_WIDTH"
+              glib:nick="line-width"/>
+      <member name="line_style"
+              value="32768"
+              c:identifier="GDK_GC_LINE_STYLE"
+              glib:nick="line-style"/>
+      <member name="cap_style"
+              value="65536"
+              c:identifier="GDK_GC_CAP_STYLE"
+              glib:nick="cap-style"/>
+      <member name="join_style"
+              value="131072"
+              c:identifier="GDK_GC_JOIN_STYLE"
+              glib:nick="join-style"/>
+    </bitfield>
+    <constant name="Gabovedot" value="725">
+      <type name="int"/>
+    </constant>
+    <constant name="Game" value="269025118">
+      <type name="int"/>
+    </constant>
+    <constant name="Gbreve" value="683">
+      <type name="int"/>
+    </constant>
+    <constant name="Gcaron" value="16777702">
+      <type name="int"/>
+    </constant>
+    <constant name="Gcedilla" value="939">
+      <type name="int"/>
+    </constant>
+    <constant name="Gcircumflex" value="728">
+      <type name="int"/>
+    </constant>
+    <record name="Geometry" c:type="GdkGeometry">
+      <field name="min_width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="min_height" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="max_width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="max_height" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="base_width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="base_height" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="width_inc" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="height_inc" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="min_aspect" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="max_aspect" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="win_gravity" writable="1">
+        <type name="Gravity" c:type="GdkGravity"/>
+      </field>
+    </record>
+    <constant name="Georgian_an" value="16781520">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_ban" value="16781521">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_can" value="16781546">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_char" value="16781549">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_chin" value="16781545">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_cil" value="16781548">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_don" value="16781523">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_en" value="16781524">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_fi" value="16781558">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_gan" value="16781522">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_ghan" value="16781542">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_hae" value="16781552">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_har" value="16781556">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_he" value="16781553">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_hie" value="16781554">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_hoe" value="16781557">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_in" value="16781528">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_jhan" value="16781551">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_jil" value="16781547">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_kan" value="16781529">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_khar" value="16781541">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_las" value="16781530">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_man" value="16781531">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_nar" value="16781532">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_on" value="16781533">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_par" value="16781534">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_phar" value="16781540">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_qar" value="16781543">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_rae" value="16781536">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_san" value="16781537">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_shin" value="16781544">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_tan" value="16781527">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_tar" value="16781538">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_un" value="16781539">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_vin" value="16781525">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_we" value="16781555">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_xan" value="16781550">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_zen" value="16781526">
+      <type name="int"/>
+    </constant>
+    <constant name="Georgian_zhar" value="16781535">
+      <type name="int"/>
+    </constant>
+    <constant name="Go" value="269025119">
+      <type name="int"/>
+    </constant>
+    <enumeration name="GrabStatus"
+                 glib:type-name="GdkGrabStatus"
+                 glib:get-type="gdk_grab_status_get_type"
+                 c:type="GdkGrabStatus">
+      <member name="success"
+              value="0"
+              c:identifier="GDK_GRAB_SUCCESS"
+              glib:nick="success"/>
+      <member name="already_grabbed"
+              value="1"
+              c:identifier="GDK_GRAB_ALREADY_GRABBED"
+              glib:nick="already-grabbed"/>
+      <member name="invalid_time"
+              value="2"
+              c:identifier="GDK_GRAB_INVALID_TIME"
+              glib:nick="invalid-time"/>
+      <member name="not_viewable"
+              value="3"
+              c:identifier="GDK_GRAB_NOT_VIEWABLE"
+              glib:nick="not-viewable"/>
+      <member name="frozen"
+              value="4"
+              c:identifier="GDK_GRAB_FROZEN"
+              glib:nick="frozen"/>
+    </enumeration>
+    <enumeration name="Gravity"
+                 glib:type-name="GdkGravity"
+                 glib:get-type="gdk_gravity_get_type"
+                 c:type="GdkGravity">
+      <member name="north_west"
+              value="1"
+              c:identifier="GDK_GRAVITY_NORTH_WEST"
+              glib:nick="north-west"/>
+      <member name="north"
+              value="2"
+              c:identifier="GDK_GRAVITY_NORTH"
+              glib:nick="north"/>
+      <member name="north_east"
+              value="3"
+              c:identifier="GDK_GRAVITY_NORTH_EAST"
+              glib:nick="north-east"/>
+      <member name="west"
+              value="4"
+              c:identifier="GDK_GRAVITY_WEST"
+              glib:nick="west"/>
+      <member name="center"
+              value="5"
+              c:identifier="GDK_GRAVITY_CENTER"
+              glib:nick="center"/>
+      <member name="east"
+              value="6"
+              c:identifier="GDK_GRAVITY_EAST"
+              glib:nick="east"/>
+      <member name="south_west"
+              value="7"
+              c:identifier="GDK_GRAVITY_SOUTH_WEST"
+              glib:nick="south-west"/>
+      <member name="south"
+              value="8"
+              c:identifier="GDK_GRAVITY_SOUTH"
+              glib:nick="south"/>
+      <member name="south_east"
+              value="9"
+              c:identifier="GDK_GRAVITY_SOUTH_EAST"
+              glib:nick="south-east"/>
+      <member name="static"
+              value="10"
+              c:identifier="GDK_GRAVITY_STATIC"
+              glib:nick="static"/>
+    </enumeration>
+    <constant name="Greek_ALPHA" value="1985">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_ALPHAaccent" value="1953">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_BETA" value="1986">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_CHI" value="2007">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_DELTA" value="1988">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_EPSILON" value="1989">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_EPSILONaccent" value="1954">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_ETA" value="1991">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_ETAaccent" value="1955">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_GAMMA" value="1987">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_IOTA" value="1993">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_IOTAaccent" value="1956">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_IOTAdiaeresis" value="1957">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_IOTAdieresis" value="1957">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_KAPPA" value="1994">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_LAMBDA" value="1995">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_LAMDA" value="1995">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_MU" value="1996">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_NU" value="1997">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_OMEGA" value="2009">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_OMEGAaccent" value="1963">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_OMICRON" value="1999">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_OMICRONaccent" value="1959">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_PHI" value="2006">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_PI" value="2000">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_PSI" value="2008">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_RHO" value="2001">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_SIGMA" value="2002">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_TAU" value="2004">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_THETA" value="1992">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_UPSILON" value="2005">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_UPSILONaccent" value="1960">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_UPSILONdieresis" value="1961">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_XI" value="1998">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_ZETA" value="1990">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_accentdieresis" value="1966">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_alpha" value="2017">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_alphaaccent" value="1969">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_beta" value="2018">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_chi" value="2039">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_delta" value="2020">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_epsilon" value="2021">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_epsilonaccent" value="1970">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_eta" value="2023">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_etaaccent" value="1971">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_finalsmallsigma" value="2035">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_gamma" value="2019">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_horizbar" value="1967">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_iota" value="2025">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_iotaaccent" value="1972">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_iotaaccentdieresis" value="1974">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_iotadieresis" value="1973">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_kappa" value="2026">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_lambda" value="2027">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_lamda" value="2027">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_mu" value="2028">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_nu" value="2029">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_omega" value="2041">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_omegaaccent" value="1979">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_omicron" value="2031">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_omicronaccent" value="1975">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_phi" value="2038">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_pi" value="2032">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_psi" value="2040">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_rho" value="2033">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_sigma" value="2034">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_tau" value="2036">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_theta" value="2024">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_upsilon" value="2037">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_upsilonaccent" value="1976">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_upsilonaccentdieresis" value="1978">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_upsilondieresis" value="1977">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_xi" value="2030">
+      <type name="int"/>
+    </constant>
+    <constant name="Greek_zeta" value="2022">
+      <type name="int"/>
+    </constant>
+    <constant name="Green" value="269025188">
+      <type name="int"/>
+    </constant>
+    <constant name="H" value="72">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul" value="65329">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_A" value="3775">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_AE" value="3776">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_AraeA" value="3830">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_AraeAE" value="3831">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Banja" value="65337">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Cieuc" value="3770">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Codeinput" value="65335">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Dikeud" value="3751">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_E" value="3780">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_EO" value="3779">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_EU" value="3793">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_End" value="65331">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Hanja" value="65332">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Hieuh" value="3774">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_I" value="3795">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Ieung" value="3767">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Cieuc" value="3818">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Dikeud" value="3802">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Hieuh" value="3822">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Ieung" value="3816">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Jieuj" value="3817">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Khieuq" value="3819">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Kiyeog" value="3796">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_KiyeogSios" value="3798">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_KkogjiDalrinIeung" value="3833">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Mieum" value="3811">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Nieun" value="3799">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_NieunHieuh" value="3801">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_NieunJieuj" value="3800">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_PanSios" value="3832">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Phieuf" value="3821">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Pieub" value="3812">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_PieubSios" value="3813">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Rieul" value="3803">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulHieuh" value="3810">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulKiyeog" value="3804">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulMieum" value="3805">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulPhieuf" value="3809">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulPieub" value="3806">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulSios" value="3807">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_RieulTieut" value="3808">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Sios" value="3814">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_SsangKiyeog" value="3797">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_SsangSios" value="3815">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_Tieut" value="3820">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_J_YeorinHieuh" value="3834">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Jamo" value="65333">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Jeonja" value="65336">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Jieuj" value="3768">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Khieuq" value="3771">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Kiyeog" value="3745">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_KiyeogSios" value="3747">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_KkogjiDalrinIeung" value="3827">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Mieum" value="3761">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_MultipleCandidate" value="65341">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Nieun" value="3748">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_NieunHieuh" value="3750">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_NieunJieuj" value="3749">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_O" value="3783">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_OE" value="3786">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_PanSios" value="3826">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Phieuf" value="3773">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Pieub" value="3762">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_PieubSios" value="3764">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_PostHanja" value="65339">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_PreHanja" value="65338">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_PreviousCandidate" value="65342">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Rieul" value="3753">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulHieuh" value="3760">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulKiyeog" value="3754">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulMieum" value="3755">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulPhieuf" value="3759">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulPieub" value="3756">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulSios" value="3757">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulTieut" value="3758">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_RieulYeorinHieuh" value="3823">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Romaja" value="65334">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SingleCandidate" value="65340">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Sios" value="3765">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Special" value="65343">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SsangDikeud" value="3752">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SsangJieuj" value="3769">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SsangKiyeog" value="3746">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SsangPieub" value="3763">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SsangSios" value="3766">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Start" value="65330">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SunkyeongeumMieum" value="3824">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SunkyeongeumPhieuf" value="3828">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_SunkyeongeumPieub" value="3825">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_Tieut" value="3772">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_U" value="3788">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_WA" value="3784">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_WAE" value="3785">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_WE" value="3790">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_WEO" value="3789">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_WI" value="3791">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YA" value="3777">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YAE" value="3778">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YE" value="3782">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YEO" value="3781">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YI" value="3794">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YO" value="3787">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YU" value="3792">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_YeorinHieuh" value="3829">
+      <type name="int"/>
+    </constant>
+    <constant name="Hangul_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="Hankaku" value="65321">
+      <type name="int"/>
+    </constant>
+    <constant name="Hcircumflex" value="678">
+      <type name="int"/>
+    </constant>
+    <constant name="Hebrew_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="Help" value="65386">
+      <type name="int"/>
+    </constant>
+    <constant name="Henkan" value="65315">
+      <type name="int"/>
+    </constant>
+    <constant name="Henkan_Mode" value="65315">
+      <type name="int"/>
+    </constant>
+    <constant name="Hibernate" value="269025192">
+      <type name="int"/>
+    </constant>
+    <constant name="Hiragana" value="65317">
+      <type name="int"/>
+    </constant>
+    <constant name="Hiragana_Katakana" value="65319">
+      <type name="int"/>
+    </constant>
+    <constant name="History" value="269025079">
+      <type name="int"/>
+    </constant>
+    <constant name="Home" value="65360">
+      <type name="int"/>
+    </constant>
+    <constant name="HomePage" value="269025048">
+      <type name="int"/>
+    </constant>
+    <constant name="HotLinks" value="269025082">
+      <type name="int"/>
+    </constant>
+    <constant name="Hstroke" value="673">
+      <type name="int"/>
+    </constant>
+    <constant name="Hyper_L" value="65517">
+      <type name="int"/>
+    </constant>
+    <constant name="Hyper_R" value="65518">
+      <type name="int"/>
+    </constant>
+    <constant name="I" value="73">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Center_Object" value="65075">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Continuous_Underline" value="65072">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Discontinuous_Underline" value="65073">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Emphasize" value="65074">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Enter" value="65076">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Fast_Cursor_Down" value="65071">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Fast_Cursor_Left" value="65068">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Fast_Cursor_Right" value="65069">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Fast_Cursor_Up" value="65070">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_First_Group" value="65036">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_First_Group_Lock" value="65037">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Group_Latch" value="65030">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Group_Lock" value="65031">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Group_Shift" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Last_Group" value="65038">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Last_Group_Lock" value="65039">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Left_Tab" value="65056">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level2_Latch" value="65026">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level3_Latch" value="65028">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level3_Lock" value="65029">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level3_Shift" value="65027">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level5_Latch" value="65042">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level5_Lock" value="65043">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Level5_Shift" value="65041">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Lock" value="65025">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Move_Line_Down" value="65058">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Move_Line_Up" value="65057">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Next_Group" value="65032">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Next_Group_Lock" value="65033">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Partial_Line_Down" value="65060">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Partial_Line_Up" value="65059">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Partial_Space_Left" value="65061">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Partial_Space_Right" value="65062">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Prev_Group" value="65034">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Prev_Group_Lock" value="65035">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Release_Both_Margins" value="65067">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Release_Margin_Left" value="65065">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Release_Margin_Right" value="65066">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Set_Margin_Left" value="65063">
+      <type name="int"/>
+    </constant>
+    <constant name="ISO_Set_Margin_Right" value="65064">
+      <type name="int"/>
+    </constant>
+    <constant name="Iabovedot" value="681">
+      <type name="int"/>
+    </constant>
+    <constant name="Iacute" value="205">
+      <type name="int"/>
+    </constant>
+    <constant name="Ibelowdot" value="16785098">
+      <type name="int"/>
+    </constant>
+    <constant name="Ibreve" value="16777516">
+      <type name="int"/>
+    </constant>
+    <constant name="Icircumflex" value="206">
+      <type name="int"/>
+    </constant>
+    <constant name="Idiaeresis" value="207">
+      <type name="int"/>
+    </constant>
+    <constant name="Igrave" value="204">
+      <type name="int"/>
+    </constant>
+    <constant name="Ihook" value="16785096">
+      <type name="int"/>
+    </constant>
+    <constant name="Imacron" value="975">
+      <type name="int"/>
+    </constant>
+    <class name="Image"
+           c:type="GdkImage"
+           parent="GObject.Object"
+           glib:type-name="GdkImage"
+           glib:get-type="gdk_image_get_type"
+           glib:type-struct="ImageClass">
+      <constructor name="new" c:identifier="gdk_image_new">
+        <return-value transfer-ownership="full">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="type" transfer-ownership="none">
+            <type name="ImageType" c:type="GdkImageType"/>
+          </parameter>
+          <parameter name="visual" transfer-ownership="none">
+            <type name="Visual" c:type="GdkVisual*"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <function name="get"
+                c:identifier="gdk_image_get"
+                doc="This is a deprecated wrapper for gdk_drawable_get_image();
+most cases gdk_pixbuf_get_from_drawable() is the most convenient
+choice.">
+        <return-value transfer-ownership="full" doc="a new #GdkImage or %NULL">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="x coordinate in @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="y coordinate in @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of area in @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height of area in @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <method name="ref"
+              c:identifier="gdk_image_ref"
+              doc="Deprecated function; use g_object_ref() instead."
+              deprecated="Use g_object_ref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="full" doc="the image">
+          <type name="Image" c:type="GdkImage*"/>
+        </return-value>
+      </method>
+      <method name="unref"
+              c:identifier="gdk_image_unref"
+              doc="Deprecated function; use g_object_unref() instead."
+              deprecated="Use g_object_unref() instead."
+              deprecated-version="2.0">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="put_pixel" c:identifier="gdk_image_put_pixel">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="pixel" transfer-ownership="none">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_pixel" c:identifier="gdk_image_get_pixel">
+        <return-value transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </return-value>
+        <parameters>
+          <parameter name="x" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_colormap"
+              c:identifier="gdk_image_set_colormap"
+              doc="Sets the colormap for the image to the given colormap.  Normally
+there&apos;s no need to use this function, images are created with the
+correct colormap if you get the image from a drawable. If you
+create the image from scratch, use the colormap of the drawable you
+intend to render the image to.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="colormap"
+                     transfer-ownership="none"
+                     doc="a #GdkColormap">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_colormap"
+              c:identifier="gdk_image_get_colormap"
+              doc="Retrieves the colormap for a given image, if it exists.  An image
+will have a colormap if the drawable from which it was created has
+a colormap, or if a colormap was set explicitely with
+gdk_image_set_colormap().">
+        <return-value transfer-ownership="full" doc="colormap for the image">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="get_image_type"
+              c:identifier="gdk_image_get_image_type"
+              doc="Determines the type of a given image."
+              version="2.22">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkImageType of the image">
+          <type name="ImageType" c:type="GdkImageType"/>
+        </return-value>
+      </method>
+      <method name="get_visual"
+              c:identifier="gdk_image_get_visual"
+              doc="Determines the visual that was used to create the image."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkVisual">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </method>
+      <method name="get_byte_order"
+              c:identifier="gdk_image_get_byte_order"
+              doc="Determines the byte order of the image."
+              version="2.22">
+        <return-value transfer-ownership="full" doc="a #GdkVisual">
+          <type name="ByteOrder" c:type="GdkByteOrder"/>
+        </return-value>
+      </method>
+      <method name="get_width"
+              c:identifier="gdk_image_get_width"
+              doc="Determines the width of the image."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="the width">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_height"
+              c:identifier="gdk_image_get_height"
+              doc="Determines the height of the image."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="the height">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_depth"
+              c:identifier="gdk_image_get_depth"
+              doc="Determines the depth of the image."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="the depth">
+          <type name="uint16" c:type="guint16"/>
+        </return-value>
+      </method>
+      <method name="get_bytes_per_pixel"
+              c:identifier="gdk_image_get_bytes_per_pixel"
+              doc="Determines the number of bytes per pixel of the image."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="the bytes per pixel">
+          <type name="uint16" c:type="guint16"/>
+        </return-value>
+      </method>
+      <method name="get_bytes_per_line"
+              c:identifier="gdk_image_get_bytes_per_line"
+              doc="Determines the number of bytes per line of the image."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="the bytes per line">
+          <type name="uint16" c:type="guint16"/>
+        </return-value>
+      </method>
+      <method name="get_bits_per_pixel"
+              c:identifier="gdk_image_get_bits_per_pixel"
+              doc="Determines the number of bits per pixel of the image."
+              version="2.22">
+        <return-value transfer-ownership="none" doc="the bits per pixel">
+          <type name="uint16" c:type="guint16"/>
+        </return-value>
+      </method>
+      <method name="get_pixels"
+              c:identifier="gdk_image_get_pixels"
+              doc="Returns a pointer to the pixel data of the image."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="the pixel data of the image">
+          <type name="any" c:type="gpointer"/>
+        </return-value>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="type">
+        <type name="ImageType" c:type="GdkImageType"/>
+      </field>
+      <field name="visual">
+        <type name="Visual" c:type="GdkVisual*"/>
+      </field>
+      <field name="byte_order">
+        <type name="ByteOrder" c:type="GdkByteOrder"/>
+      </field>
+      <field name="width">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="height">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="depth">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="bpp">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="bpl">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="bits_per_pixel">
+        <type name="uint16" c:type="guint16"/>
+      </field>
+      <field name="mem">
+        <type name="any" c:type="gpointer"/>
+      </field>
+      <field name="colormap">
+        <type name="Colormap" c:type="GdkColormap*"/>
+      </field>
+      <field name="windowing_data">
+        <type name="any" c:type="gpointer"/>
+      </field>
+    </class>
+    <record name="ImageClass"
+            c:type="GdkImageClass"
+            glib:is-gtype-struct-for="Image">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+    </record>
+    <enumeration name="ImageType"
+                 glib:type-name="GdkImageType"
+                 glib:get-type="gdk_image_type_get_type"
+                 c:type="GdkImageType">
+      <member name="normal"
+              value="0"
+              c:identifier="GDK_IMAGE_NORMAL"
+              glib:nick="normal"/>
+      <member name="shared"
+              value="1"
+              c:identifier="GDK_IMAGE_SHARED"
+              glib:nick="shared"/>
+      <member name="fastest"
+              value="2"
+              c:identifier="GDK_IMAGE_FASTEST"
+              glib:nick="fastest"/>
+    </enumeration>
+    <bitfield name="InputCondition"
+              glib:type-name="GdkInputCondition"
+              glib:get-type="gdk_input_condition_get_type"
+              c:type="GdkInputCondition">
+      <member name="read"
+              value="1"
+              c:identifier="GDK_INPUT_READ"
+              glib:nick="read"/>
+      <member name="write"
+              value="2"
+              c:identifier="GDK_INPUT_WRITE"
+              glib:nick="write"/>
+      <member name="exception"
+              value="4"
+              c:identifier="GDK_INPUT_EXCEPTION"
+              glib:nick="exception"/>
+    </bitfield>
+    <callback name="InputFunction" c:type="GdkInputFunction">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="data" transfer-ownership="none">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="source" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="condition" transfer-ownership="none">
+          <type name="InputCondition" c:type="GdkInputCondition"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <enumeration name="InputMode"
+                 glib:type-name="GdkInputMode"
+                 glib:get-type="gdk_input_mode_get_type"
+                 c:type="GdkInputMode">
+      <member name="disabled"
+              value="0"
+              c:identifier="GDK_MODE_DISABLED"
+              glib:nick="disabled"/>
+      <member name="screen"
+              value="1"
+              c:identifier="GDK_MODE_SCREEN"
+              glib:nick="screen"/>
+      <member name="window"
+              value="2"
+              c:identifier="GDK_MODE_WINDOW"
+              glib:nick="window"/>
+    </enumeration>
+    <enumeration name="InputSource"
+                 glib:type-name="GdkInputSource"
+                 glib:get-type="gdk_input_source_get_type"
+                 c:type="GdkInputSource">
+      <member name="mouse"
+              value="0"
+              c:identifier="GDK_SOURCE_MOUSE"
+              glib:nick="mouse"/>
+      <member name="pen"
+              value="1"
+              c:identifier="GDK_SOURCE_PEN"
+              glib:nick="pen"/>
+      <member name="eraser"
+              value="2"
+              c:identifier="GDK_SOURCE_ERASER"
+              glib:nick="eraser"/>
+      <member name="cursor"
+              value="3"
+              c:identifier="GDK_SOURCE_CURSOR"
+              glib:nick="cursor"/>
+    </enumeration>
+    <constant name="Insert" value="65379">
+      <type name="int"/>
+    </constant>
+    <constant name="Iogonek" value="967">
+      <type name="int"/>
+    </constant>
+    <constant name="Itilde" value="933">
+      <type name="int"/>
+    </constant>
+    <constant name="J" value="74">
+      <type name="int"/>
+    </constant>
+    <constant name="Jcircumflex" value="684">
+      <type name="int"/>
+    </constant>
+    <enumeration name="JoinStyle"
+                 glib:type-name="GdkJoinStyle"
+                 glib:get-type="gdk_join_style_get_type"
+                 c:type="GdkJoinStyle">
+      <member name="miter"
+              value="0"
+              c:identifier="GDK_JOIN_MITER"
+              glib:nick="miter"/>
+      <member name="round"
+              value="1"
+              c:identifier="GDK_JOIN_ROUND"
+              glib:nick="round"/>
+      <member name="bevel"
+              value="2"
+              c:identifier="GDK_JOIN_BEVEL"
+              glib:nick="bevel"/>
+    </enumeration>
+    <constant name="K" value="75">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_0" value="65456">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_1" value="65457">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_2" value="65458">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_3" value="65459">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_4" value="65460">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_5" value="65461">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_6" value="65462">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_7" value="65463">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_8" value="65464">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_9" value="65465">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Add" value="65451">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Begin" value="65437">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Decimal" value="65454">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Delete" value="65439">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Divide" value="65455">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Down" value="65433">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_End" value="65436">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Enter" value="65421">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Equal" value="65469">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_F1" value="65425">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_F2" value="65426">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_F3" value="65427">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_F4" value="65428">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Home" value="65429">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Insert" value="65438">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Left" value="65430">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Multiply" value="65450">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Next" value="65435">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Page_Down" value="65435">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Page_Up" value="65434">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Prior" value="65434">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Right" value="65432">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Separator" value="65452">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Space" value="65408">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Subtract" value="65453">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Tab" value="65417">
+      <type name="int"/>
+    </constant>
+    <constant name="KP_Up" value="65431">
+      <type name="int"/>
+    </constant>
+    <constant name="Kana_Lock" value="65325">
+      <type name="int"/>
+    </constant>
+    <constant name="Kana_Shift" value="65326">
+      <type name="int"/>
+    </constant>
+    <constant name="Kanji" value="65313">
+      <type name="int"/>
+    </constant>
+    <constant name="Kanji_Bangou" value="65335">
+      <type name="int"/>
+    </constant>
+    <constant name="Katakana" value="65318">
+      <type name="int"/>
+    </constant>
+    <constant name="KbdBrightnessDown" value="269025030">
+      <type name="int"/>
+    </constant>
+    <constant name="KbdBrightnessUp" value="269025029">
+      <type name="int"/>
+    </constant>
+    <constant name="KbdLightOnOff" value="269025028">
+      <type name="int"/>
+    </constant>
+    <constant name="Kcedilla" value="979">
+      <type name="int"/>
+    </constant>
+    <record name="KeyboardGrabInfo" c:type="GdkKeyboardGrabInfo">
+      <field name="window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="native_window" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="serial" writable="1">
+        <type name="ulong" c:type="gulong"/>
+      </field>
+      <field name="owner_events" writable="1">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+    </record>
+    <class name="Keymap"
+           c:type="GdkKeymap"
+           parent="GObject.Object"
+           glib:type-name="GdkKeymap"
+           glib:get-type="gdk_keymap_get_type"
+           glib:type-struct="KeymapClass">
+      <function name="get_default" c:identifier="gdk_keymap_get_default">
+        <return-value transfer-ownership="full">
+          <type name="Keymap" c:type="GdkKeymap*"/>
+        </return-value>
+      </function>
+      <function name="get_for_display"
+                c:identifier="gdk_keymap_get_for_display">
+        <return-value transfer-ownership="full">
+          <type name="Keymap" c:type="GdkKeymap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display" transfer-ownership="none">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <method name="lookup_key"
+              c:identifier="gdk_keymap_lookup_key"
+              doc="Looks up the keyval mapped to a keycode/group/level triplet.
+If no keyval is bound to @key, returns 0. For normal user input,
+you want to use gdk_keymap_translate_keyboard_state() instead of
+this function, since the effective group/level may not be
+the same as the current keyboard state.">
+        <return-value transfer-ownership="none"
+                      doc="a keyval, or 0 if none was mapped to the given @key">
+          <type name="uint" c:type="guint"/>
+        </return-value>
+        <parameters>
+          <parameter name="key"
+                     transfer-ownership="none"
+                     doc="a #GdkKeymapKey with keycode, group, and level initialized">
+            <type name="KeymapKey" c:type="GdkKeymapKey*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="translate_keyboard_state"
+              c:identifier="gdk_keymap_translate_keyboard_state"
+              doc="Translates the contents of a #GdkEventKey into a keyval, effective
+group, and level. Modifiers that affected the translation and
+are thus unavailable for application use are returned in
+groups and levels.  The @effective_group is the group that was
+actually used for the translation; some keys such as Enter are not
+affected by the active keyboard group. The @level is derived from
+keyval, so this function isn&apos;t as useful as you might think.
+&lt;note&gt;&lt;para&gt;
+from @state when comparing this key press to a hot key. For
+instance, on a US keyboard, the &lt;literal&gt;plus&lt;/literal&gt;
+symbol is shifted, so when comparing a key press to a
+&lt;literal&gt;&amp;lt;Control&amp;gt;plus&lt;/literal&gt; accelerator &amp;lt;Shift&amp;gt; should
+be masked out.
+&lt;/para&gt;
+&lt;informalexample&gt;&lt;programlisting&gt;
+&amp;sol;* We want to ignore irrelevant modifiers like ScrollLock *&amp;sol;
+&amp;num;define ALL_ACCELS_MASK (GDK_CONTROL_MASK | GDK_SHIFT_MASK | GDK_MOD1_MASK)
+gdk_keymap_translate_keyboard_state (keymap, event-&gt;hardware_keycode,
+event-&gt;state, event-&gt;group,
+&amp;amp;keyval, NULL, NULL, &amp;amp;consumed);
+if (keyval == GDK_PLUS &amp;&amp;
+(event-&gt;state &amp;amp; ~consumed &amp;amp; ALL_ACCELS_MASK) == GDK_CONTROL_MASK)
+&amp;sol;* Control was pressed *&amp;sol;
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+&lt;para&gt;
+An older interpretation @consumed_modifiers was that it contained
+all modifiers that might affect the translation of the key;
+this allowed accelerators to be stored with irrelevant consumed
+modifiers, by doing:&lt;/para&gt;
+&lt;informalexample&gt;&lt;programlisting&gt;
+&amp;sol;* XXX Don&apos;t do this XXX *&amp;sol;
+if (keyval == accel_keyval &amp;&amp;
+(event-&gt;state &amp;amp; ~consumed &amp;amp; ALL_ACCELS_MASK) == (accel_mods &amp;amp; ~consumed))
+&amp;sol;* Accelerator was pressed *&amp;sol;
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+&lt;para&gt;
+However, this did not work if multi-modifier combinations were
+used in the keymap, since, for instance, &lt;literal&gt;&amp;lt;Control&amp;gt;&lt;/literal&gt;
+would be masked out even if only &lt;literal&gt;&amp;lt;Control&amp;gt;&amp;lt;Alt&amp;gt;&lt;/literal&gt;
+was used in the keymap. To support this usage as well as well as
+possible, all &lt;emphasis&gt;single modifier&lt;/emphasis&gt; combinations
+that could affect the key for any combination of modifiers will
+be returned in @consumed_modifiers; multi-modifier combinations
+are returned only when actually found in @state. When you store
+accelerators, you should always store them with consumed modifiers
+removed. Store &lt;literal&gt;&amp;lt;Control&amp;gt;plus&lt;/literal&gt;,
+not &lt;literal&gt;&amp;lt;Control&amp;gt;&amp;lt;Shift&amp;gt;plus&lt;/literal&gt;,
+&lt;/para&gt;&lt;/note&gt;">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if there was a keyval bound to the keycode/state/group">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="hardware_keycode"
+                     transfer-ownership="none"
+                     doc="a keycode">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="state"
+                     transfer-ownership="none"
+                     doc="a modifier state">
+            <type name="ModifierType" c:type="GdkModifierType"/>
+          </parameter>
+          <parameter name="group"
+                     transfer-ownership="none"
+                     doc="active keyboard group">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="keyval"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for keyval, or %NULL">
+            <type name="uint" c:type="guint*"/>
+          </parameter>
+          <parameter name="effective_group"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for effective group, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="level"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for level, or %NULL">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="consumed_modifiers"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="return location for modifiers that were used to determine the group or level, or %NULL">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_entries_for_keyval"
+              c:identifier="gdk_keymap_get_entries_for_keyval"
+              doc="Obtains a list of keycode/group/level combinations that will
+generate @keyval. Groups and levels are two kinds of keyboard mode;
+in general, the level determines whether the top or bottom symbol
+on a key is used, and the group determines whether the left or
+right symbol is used. On US keyboards, the shift key changes the
+keyboard level, and there are no groups. A group switch key might
+convert a keyboard between Hebrew to English modes, for example.
+#GdkEventKey contains a %group field that indicates the active
+keyboard group. The level is computed from the modifier mask.
+The returned array should be freed
+with g_free().">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if keys were found and returned">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="keyval"
+                     transfer-ownership="none"
+                     doc="a keyval, such as %GDK_a, %GDK_Up, %GDK_Return, etc.">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="keys"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for an array of #GdkKeymapKey">
+            <type name="KeymapKey" c:type="GdkKeymapKey**"/>
+          </parameter>
+          <parameter name="n_keys"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for number of elements in returned array">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_entries_for_keycode"
+              c:identifier="gdk_keymap_get_entries_for_keycode"
+              doc="Returns the keyvals bound to @hardware_keycode.
+The Nth #GdkKeymapKey in @keys is bound to the Nth
+keyval in @keyvals. Free the returned arrays with g_free().
+When a keycode is pressed by the user, the keyval from
+this list of entries is selected by considering the effective
+keyboard group and level. See gdk_keymap_translate_keyboard_state().">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if there were any entries">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="hardware_keycode"
+                     transfer-ownership="none"
+                     doc="a keycode">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="keys"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for array of #GdkKeymapKey, or %NULL">
+            <type name="KeymapKey" c:type="GdkKeymapKey**"/>
+          </parameter>
+          <parameter name="keyvals"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for array of keyvals, or %NULL">
+            <type name="uint" c:type="guint**"/>
+          </parameter>
+          <parameter name="n_entries"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="length of @keys and @keyvals">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_direction" c:identifier="gdk_keymap_get_direction">
+        <return-value transfer-ownership="full">
+          <type name="Pango.Direction" c:type="PangoDirection"/>
+        </return-value>
+      </method>
+      <method name="have_bidi_layouts"
+              c:identifier="gdk_keymap_have_bidi_layouts">
+        <return-value transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="get_caps_lock_state"
+              c:identifier="gdk_keymap_get_caps_lock_state"
+              doc="Returns whether the Caps Lock modifer is locked. "
+              version="2.16">
+        <return-value transfer-ownership="none" doc="%TRUE if Caps Lock is on">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="add_virtual_modifiers"
+              c:identifier="gdk_keymap_add_virtual_modifiers"
+              doc="Adds virtual modifiers (i.e. Super, Hyper and Meta) which correspond
+to the real modifiers (i.e Mod2, Mod3, ...) in @modifiers.
+are set in @state to their non-virtual counterparts (i.e. Mod2,
+Mod3,...) and set the corresponding bits in @state.
+GDK already does this before delivering key events, but for
+compatibility reasons, it only sets the first virtual modifier
+it finds, whereas this function sets all matching virtual modifiers.
+This function is useful when matching key events against
+accelerators."
+              version="2.20">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="state"
+                     transfer-ownership="none"
+                     doc="pointer to the modifier mask to change">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="map_virtual_modifiers"
+              c:identifier="gdk_keymap_map_virtual_modifiers"
+              doc="Maps the virtual modifiers (i.e. Super, Hyper and Meta) which
+are set in @state to their non-virtual counterparts (i.e. Mod2,
+Mod3,...) and set the corresponding bits in @state.
+This function is useful when matching key events against
+accelerators.
+same non-virtual modifier. Note that %FALSE is also returned
+if a virtual modifier is mapped to a non-virtual modifier that
+was already set in @state."
+              version="2.20">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if no virtual modifiers were mapped to the">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="state"
+                     transfer-ownership="none"
+                     doc="pointer to the modifier state to map">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="display">
+        <type name="Display" c:type="GdkDisplay*"/>
+      </field>
+      <glib:signal name="direction-changed"
+                   doc="The ::direction-changed signal gets emitted when the direction of
+the keymap changes. "
+                   version="2.0">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="keys-changed"
+                   doc="The ::keys-changed signal is emitted when the mapping represented by"
+                   version="2.2">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="state-changed"
+                   doc="The ::state-changed signal is emitted when the state of the
+keyboard changes, e.g when Caps Lock is turned on or off.
+See gdk_keymap_get_caps_lock_state()."
+                   version="2.16">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+    </class>
+    <record name="KeymapClass"
+            c:type="GdkKeymapClass"
+            glib:is-gtype-struct-for="Keymap">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="direction_changed">
+        <callback name="direction_changed" c:type="direction_changed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="keymap" transfer-ownership="none">
+              <type name="Keymap" c:type="GdkKeymap*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="keys_changed">
+        <callback name="keys_changed" c:type="keys_changed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="keymap" transfer-ownership="none">
+              <type name="Keymap" c:type="GdkKeymap*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="state_changed">
+        <callback name="state_changed" c:type="state_changed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="keymap" transfer-ownership="none">
+              <type name="Keymap" c:type="GdkKeymap*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+    </record>
+    <record name="KeymapKey" c:type="GdkKeymapKey">
+      <field name="keycode" writable="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="group" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="level" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <constant name="Korean_Won" value="3839">
+      <type name="int"/>
+    </constant>
+    <constant name="L" value="76">
+      <type name="int"/>
+    </constant>
+    <constant name="L1" value="65480">
+      <type name="int"/>
+    </constant>
+    <constant name="L10" value="65489">
+      <type name="int"/>
+    </constant>
+    <constant name="L2" value="65481">
+      <type name="int"/>
+    </constant>
+    <constant name="L3" value="65482">
+      <type name="int"/>
+    </constant>
+    <constant name="L4" value="65483">
+      <type name="int"/>
+    </constant>
+    <constant name="L5" value="65484">
+      <type name="int"/>
+    </constant>
+    <constant name="L6" value="65485">
+      <type name="int"/>
+    </constant>
+    <constant name="L7" value="65486">
+      <type name="int"/>
+    </constant>
+    <constant name="L8" value="65487">
+      <type name="int"/>
+    </constant>
+    <constant name="L9" value="65488">
+      <type name="int"/>
+    </constant>
+    <constant name="Lacute" value="453">
+      <type name="int"/>
+    </constant>
+    <constant name="Last_Virtual_Screen" value="65236">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch0" value="269025088">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch1" value="269025089">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch2" value="269025090">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch3" value="269025091">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch4" value="269025092">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch5" value="269025093">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch6" value="269025094">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch7" value="269025095">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch8" value="269025096">
+      <type name="int"/>
+    </constant>
+    <constant name="Launch9" value="269025097">
+      <type name="int"/>
+    </constant>
+    <constant name="LaunchA" value="269025098">
+      <type name="int"/>
+    </constant>
+    <constant name="LaunchB" value="269025099">
+      <type name="int"/>
+    </constant>
+    <constant name="LaunchC" value="269025100">
+      <type name="int"/>
+    </constant>
+    <constant name="LaunchD" value="269025101">
+      <type name="int"/>
+    </constant>
+    <constant name="LaunchE" value="269025102">
+      <type name="int"/>
+    </constant>
+    <constant name="LaunchF" value="269025103">
+      <type name="int"/>
+    </constant>
+    <constant name="Lbelowdot" value="16784950">
+      <type name="int"/>
+    </constant>
+    <constant name="Lcaron" value="421">
+      <type name="int"/>
+    </constant>
+    <constant name="Lcedilla" value="934">
+      <type name="int"/>
+    </constant>
+    <constant name="Left" value="65361">
+      <type name="int"/>
+    </constant>
+    <constant name="LightBulb" value="269025077">
+      <type name="int"/>
+    </constant>
+    <enumeration name="LineStyle"
+                 glib:type-name="GdkLineStyle"
+                 glib:get-type="gdk_line_style_get_type"
+                 c:type="GdkLineStyle">
+      <member name="solid"
+              value="0"
+              c:identifier="GDK_LINE_SOLID"
+              glib:nick="solid"/>
+      <member name="on_off_dash"
+              value="1"
+              c:identifier="GDK_LINE_ON_OFF_DASH"
+              glib:nick="on-off-dash"/>
+      <member name="double_dash"
+              value="2"
+              c:identifier="GDK_LINE_DOUBLE_DASH"
+              glib:nick="double-dash"/>
+    </enumeration>
+    <constant name="Linefeed" value="65290">
+      <type name="int"/>
+    </constant>
+    <constant name="LiraSign" value="16785572">
+      <type name="int"/>
+    </constant>
+    <constant name="LogOff" value="269025121">
+      <type name="int"/>
+    </constant>
+    <constant name="Lstroke" value="419">
+      <type name="int"/>
+    </constant>
+    <constant name="M" value="77">
+      <type name="int"/>
+    </constant>
+    <constant name="MAX_TIMECOORD_AXES" value="128">
+      <type name="int"/>
+    </constant>
+    <constant name="Mabovedot" value="16784960">
+      <type name="int"/>
+    </constant>
+    <constant name="Macedonia_DSE" value="1717">
+      <type name="int"/>
+    </constant>
+    <constant name="Macedonia_GJE" value="1714">
+      <type name="int"/>
+    </constant>
+    <constant name="Macedonia_KJE" value="1724">
+      <type name="int"/>
+    </constant>
+    <constant name="Macedonia_dse" value="1701">
+      <type name="int"/>
+    </constant>
+    <constant name="Macedonia_gje" value="1698">
+      <type name="int"/>
+    </constant>
+    <constant name="Macedonia_kje" value="1708">
+      <type name="int"/>
+    </constant>
+    <constant name="Mae_Koho" value="65342">
+      <type name="int"/>
+    </constant>
+    <constant name="Mail" value="269025049">
+      <type name="int"/>
+    </constant>
+    <constant name="MailForward" value="269025168">
+      <type name="int"/>
+    </constant>
+    <constant name="Market" value="269025122">
+      <type name="int"/>
+    </constant>
+    <constant name="Massyo" value="65324">
+      <type name="int"/>
+    </constant>
+    <constant name="Meeting" value="269025123">
+      <type name="int"/>
+    </constant>
+    <constant name="Memo" value="269025054">
+      <type name="int"/>
+    </constant>
+    <constant name="Menu" value="65383">
+      <type name="int"/>
+    </constant>
+    <constant name="MenuKB" value="269025125">
+      <type name="int"/>
+    </constant>
+    <constant name="MenuPB" value="269025126">
+      <type name="int"/>
+    </constant>
+    <constant name="Messenger" value="269025166">
+      <type name="int"/>
+    </constant>
+    <constant name="Meta_L" value="65511">
+      <type name="int"/>
+    </constant>
+    <constant name="Meta_R" value="65512">
+      <type name="int"/>
+    </constant>
+    <constant name="MillSign" value="16785573">
+      <type name="int"/>
+    </constant>
+    <constant name="ModeLock" value="269025025">
+      <type name="int"/>
+    </constant>
+    <constant name="Mode_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <bitfield name="ModifierType"
+              glib:type-name="GdkModifierType"
+              glib:get-type="gdk_modifier_type_get_type"
+              c:type="GdkModifierType">
+      <member name="shift_mask"
+              value="1"
+              c:identifier="GDK_SHIFT_MASK"
+              glib:nick="shift-mask"/>
+      <member name="lock_mask"
+              value="2"
+              c:identifier="GDK_LOCK_MASK"
+              glib:nick="lock-mask"/>
+      <member name="control_mask"
+              value="4"
+              c:identifier="GDK_CONTROL_MASK"
+              glib:nick="control-mask"/>
+      <member name="mod1_mask"
+              value="8"
+              c:identifier="GDK_MOD1_MASK"
+              glib:nick="mod1-mask"/>
+      <member name="mod2_mask"
+              value="16"
+              c:identifier="GDK_MOD2_MASK"
+              glib:nick="mod2-mask"/>
+      <member name="mod3_mask"
+              value="32"
+              c:identifier="GDK_MOD3_MASK"
+              glib:nick="mod3-mask"/>
+      <member name="mod4_mask"
+              value="64"
+              c:identifier="GDK_MOD4_MASK"
+              glib:nick="mod4-mask"/>
+      <member name="mod5_mask"
+              value="128"
+              c:identifier="GDK_MOD5_MASK"
+              glib:nick="mod5-mask"/>
+      <member name="button1_mask"
+              value="256"
+              c:identifier="GDK_BUTTON1_MASK"
+              glib:nick="button1-mask"/>
+      <member name="button2_mask"
+              value="512"
+              c:identifier="GDK_BUTTON2_MASK"
+              glib:nick="button2-mask"/>
+      <member name="button3_mask"
+              value="1024"
+              c:identifier="GDK_BUTTON3_MASK"
+              glib:nick="button3-mask"/>
+      <member name="button4_mask"
+              value="2048"
+              c:identifier="GDK_BUTTON4_MASK"
+              glib:nick="button4-mask"/>
+      <member name="button5_mask"
+              value="4096"
+              c:identifier="GDK_BUTTON5_MASK"
+              glib:nick="button5-mask"/>
+      <member name="super_mask"
+              value="67108864"
+              c:identifier="GDK_SUPER_MASK"
+              glib:nick="super-mask"/>
+      <member name="hyper_mask"
+              value="134217728"
+              c:identifier="GDK_HYPER_MASK"
+              glib:nick="hyper-mask"/>
+      <member name="meta_mask"
+              value="268435456"
+              c:identifier="GDK_META_MASK"
+              glib:nick="meta-mask"/>
+      <member name="release_mask"
+              value="1073741824"
+              c:identifier="GDK_RELEASE_MASK"
+              glib:nick="release-mask"/>
+      <member name="modifier_mask"
+              value="1543512063"
+              c:identifier="GDK_MODIFIER_MASK"
+              glib:nick="modifier-mask"/>
+    </bitfield>
+    <constant name="MonBrightnessDown" value="269025027">
+      <type name="int"/>
+    </constant>
+    <constant name="MonBrightnessUp" value="269025026">
+      <type name="int"/>
+    </constant>
+    <constant name="MouseKeys_Accel_Enable" value="65143">
+      <type name="int"/>
+    </constant>
+    <constant name="MouseKeys_Enable" value="65142">
+      <type name="int"/>
+    </constant>
+    <constant name="Muhenkan" value="65314">
+      <type name="int"/>
+    </constant>
+    <constant name="Multi_key" value="65312">
+      <type name="int"/>
+    </constant>
+    <constant name="MultipleCandidate" value="65341">
+      <type name="int"/>
+    </constant>
+    <constant name="Music" value="269025170">
+      <type name="int"/>
+    </constant>
+    <constant name="MyComputer" value="269025075">
+      <type name="int"/>
+    </constant>
+    <constant name="MySites" value="269025127">
+      <type name="int"/>
+    </constant>
+    <constant name="N" value="78">
+      <type name="int"/>
+    </constant>
+    <constant name="Nacute" value="465">
+      <type name="int"/>
+    </constant>
+    <constant name="NairaSign" value="16785574">
+      <type name="int"/>
+    </constant>
+    <constant name="Ncaron" value="466">
+      <type name="int"/>
+    </constant>
+    <constant name="Ncedilla" value="977">
+      <type name="int"/>
+    </constant>
+    <constant name="New" value="269025128">
+      <type name="int"/>
+    </constant>
+    <constant name="NewSheqelSign" value="16785578">
+      <type name="int"/>
+    </constant>
+    <constant name="News" value="269025129">
+      <type name="int"/>
+    </constant>
+    <constant name="Next" value="65366">
+      <type name="int"/>
+    </constant>
+    <constant name="Next_VMode" value="269024802">
+      <type name="int"/>
+    </constant>
+    <constant name="Next_Virtual_Screen" value="65234">
+      <type name="int"/>
+    </constant>
+    <enumeration name="NotifyType"
+                 glib:type-name="GdkNotifyType"
+                 glib:get-type="gdk_notify_type_get_type"
+                 c:type="GdkNotifyType">
+      <member name="ancestor"
+              value="0"
+              c:identifier="GDK_NOTIFY_ANCESTOR"
+              glib:nick="ancestor"/>
+      <member name="virtual"
+              value="1"
+              c:identifier="GDK_NOTIFY_VIRTUAL"
+              glib:nick="virtual"/>
+      <member name="inferior"
+              value="2"
+              c:identifier="GDK_NOTIFY_INFERIOR"
+              glib:nick="inferior"/>
+      <member name="nonlinear"
+              value="3"
+              c:identifier="GDK_NOTIFY_NONLINEAR"
+              glib:nick="nonlinear"/>
+      <member name="nonlinear_virtual"
+              value="4"
+              c:identifier="GDK_NOTIFY_NONLINEAR_VIRTUAL"
+              glib:nick="nonlinear-virtual"/>
+      <member name="unknown"
+              value="5"
+              c:identifier="GDK_NOTIFY_UNKNOWN"
+              glib:nick="unknown"/>
+    </enumeration>
+    <constant name="Ntilde" value="209">
+      <type name="int"/>
+    </constant>
+    <constant name="Num_Lock" value="65407">
+      <type name="int"/>
+    </constant>
+    <constant name="O" value="79">
+      <type name="int"/>
+    </constant>
+    <constant name="OE" value="5052">
+      <type name="int"/>
+    </constant>
+    <constant name="Oacute" value="211">
+      <type name="int"/>
+    </constant>
+    <constant name="Obarred" value="16777631">
+      <type name="int"/>
+    </constant>
+    <constant name="Obelowdot" value="16785100">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocaron" value="16777681">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocircumflex" value="212">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocircumflexacute" value="16785104">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocircumflexbelowdot" value="16785112">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocircumflexgrave" value="16785106">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocircumflexhook" value="16785108">
+      <type name="int"/>
+    </constant>
+    <constant name="Ocircumflextilde" value="16785110">
+      <type name="int"/>
+    </constant>
+    <constant name="Odiaeresis" value="214">
+      <type name="int"/>
+    </constant>
+    <constant name="Odoubleacute" value="469">
+      <type name="int"/>
+    </constant>
+    <constant name="OfficeHome" value="269025130">
+      <type name="int"/>
+    </constant>
+    <constant name="Ograve" value="210">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohook" value="16785102">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohorn" value="16777632">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohornacute" value="16785114">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohornbelowdot" value="16785122">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohorngrave" value="16785116">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohornhook" value="16785118">
+      <type name="int"/>
+    </constant>
+    <constant name="Ohorntilde" value="16785120">
+      <type name="int"/>
+    </constant>
+    <constant name="Omacron" value="978">
+      <type name="int"/>
+    </constant>
+    <constant name="Ooblique" value="216">
+      <type name="int"/>
+    </constant>
+    <constant name="Open" value="269025131">
+      <type name="int"/>
+    </constant>
+    <constant name="OpenURL" value="269025080">
+      <type name="int"/>
+    </constant>
+    <constant name="Option" value="269025132">
+      <type name="int"/>
+    </constant>
+    <constant name="Oslash" value="216">
+      <type name="int"/>
+    </constant>
+    <constant name="Otilde" value="213">
+      <type name="int"/>
+    </constant>
+    <enumeration name="OverlapType"
+                 glib:type-name="GdkOverlapType"
+                 glib:get-type="gdk_overlap_type_get_type"
+                 c:type="GdkOverlapType">
+      <member name="in"
+              value="0"
+              c:identifier="GDK_OVERLAP_RECTANGLE_IN"
+              glib:nick="in"/>
+      <member name="out"
+              value="1"
+              c:identifier="GDK_OVERLAP_RECTANGLE_OUT"
+              glib:nick="out"/>
+      <member name="part"
+              value="2"
+              c:identifier="GDK_OVERLAP_RECTANGLE_PART"
+              glib:nick="part"/>
+    </enumeration>
+    <constant name="Overlay1_Enable" value="65144">
+      <type name="int"/>
+    </constant>
+    <constant name="Overlay2_Enable" value="65145">
+      <type name="int"/>
+    </constant>
+    <enumeration name="OwnerChange"
+                 glib:type-name="GdkOwnerChange"
+                 glib:get-type="gdk_owner_change_get_type"
+                 c:type="GdkOwnerChange">
+      <member name="new_owner"
+              value="0"
+              c:identifier="GDK_OWNER_CHANGE_NEW_OWNER"
+              glib:nick="new-owner"/>
+      <member name="destroy"
+              value="1"
+              c:identifier="GDK_OWNER_CHANGE_DESTROY"
+              glib:nick="destroy"/>
+      <member name="close"
+              value="2"
+              c:identifier="GDK_OWNER_CHANGE_CLOSE"
+              glib:nick="close"/>
+    </enumeration>
+    <constant name="P" value="80">
+      <type name="int"/>
+    </constant>
+    <constant name="PARENT_RELATIVE" value="1">
+      <type name="int"/>
+    </constant>
+    <constant name="PRIORITY_REDRAW" value="20">
+      <type name="int"/>
+    </constant>
+    <constant name="Pabovedot" value="16784982">
+      <type name="int"/>
+    </constant>
+    <constant name="Page_Down" value="65366">
+      <type name="int"/>
+    </constant>
+    <constant name="Page_Up" value="65365">
+      <type name="int"/>
+    </constant>
+    <record name="PangoAttrEmbossColor" c:type="GdkPangoAttrEmbossColor">
+      <field name="attr" writable="1">
+        <type name="Pango.Attribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="color" writable="1">
+        <type name="Pango.Color" c:type="PangoColor"/>
+      </field>
+      <constructor name="new"
+                   c:identifier="gdk_pango_attr_emboss_color_new"
+                   doc="Creates a new attribute specifying the color to emboss text with."
+                   version="2.12">
+        <return-value transfer-ownership="full" doc="new #PangoAttribute">
+          <type name="PangoAttrEmbossColor" c:type="PangoAttribute*"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="a GdkColor representing the color to emboss with">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+    </record>
+    <record name="PangoAttrEmbossed" c:type="GdkPangoAttrEmbossed">
+      <field name="attr" writable="1">
+        <type name="Pango.Attribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="embossed" writable="1">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <constructor name="new"
+                   c:identifier="gdk_pango_attr_embossed_new"
+                   doc="Creates a new attribute flagging a region as embossed or not.">
+        <return-value transfer-ownership="full" doc="new #PangoAttribute">
+          <type name="PangoAttrEmbossed" c:type="PangoAttribute*"/>
+        </return-value>
+        <parameters>
+          <parameter name="embossed"
+                     transfer-ownership="none"
+                     doc="if the region should be embossed">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </constructor>
+    </record>
+    <record name="PangoAttrStipple" c:type="GdkPangoAttrStipple">
+      <field name="attr" writable="1">
+        <type name="Pango.Attribute" c:type="PangoAttribute"/>
+      </field>
+      <field name="stipple" writable="1">
+        <type name="Bitmap" c:type="GdkBitmap*"/>
+      </field>
+      <constructor name="new"
+                   c:identifier="gdk_pango_attr_stipple_new"
+                   doc="Creates a new attribute containing a stipple bitmap to be used when
+rendering the text.">
+        <return-value transfer-ownership="full" doc="new #PangoAttribute">
+          <type name="PangoAttrStipple" c:type="PangoAttribute*"/>
+        </return-value>
+        <parameters>
+          <parameter name="stipple"
+                     transfer-ownership="none"
+                     doc="a bitmap to be set as stipple">
+            <type name="Bitmap" c:type="GdkBitmap*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+    </record>
+    <class name="PangoRenderer"
+           c:type="GdkPangoRenderer"
+           doc="#GdkPangoRenderer is a subclass of #PangoRenderer used for rendering
+Pango objects into GDK drawables. The default renderer for a particular
+screen is obtained with gdk_pango_renderer_get_default(); Pango
+functions like pango_renderer_draw_layout() and
+pango_renderer_draw_layout_line() are then used to draw objects with
+the renderer.
+In most simple cases, applications can just use gdk_draw_layout(), and
+don&apos;t need to directly use #GdkPangoRenderer at all. Using the
+#GdkPangoRenderer directly is most useful when working with a
+transformation such as a rotation, because the Pango drawing functions
+take user space coordinates (coordinates before the transformation)
+instead of device coordinates.
+In certain cases it can be useful to subclass #GdkPangoRenderer. Examples
+of reasons to do this are to add handling of custom attributes by
+overriding &apos;prepare_run&apos; or to do custom drawing of embedded objects
+by overriding &apos;draw_shape&apos;."
+           version="2.6"
+           parent="Pango.Renderer"
+           glib:type-name="GdkPangoRenderer"
+           glib:get-type="gdk_pango_renderer_get_type"
+           glib:type-struct="PangoRendererClass">
+      <constructor name="new"
+                   c:identifier="gdk_pango_renderer_new"
+                   doc="Creates a new #PangoRenderer for @screen. Normally you can use the
+results of gdk_pango_renderer_get_default() rather than creating a new
+renderer."
+                   version="2.6">
+        <return-value transfer-ownership="full"
+                      doc="a newly created #PangoRenderer. Free with g_object_unref().">
+          <type name="PangoRenderer" c:type="PangoRenderer*"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     doc="a #GdkScreen">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <function name="get_default"
+                c:identifier="gdk_pango_renderer_get_default"
+                doc="Gets the default #PangoRenderer for a screen. This default renderer
+is shared by all users of the display, so properties such as the color
+or transformation matrix set for the renderer may be overwritten
+by functions such as gdk_draw_layout().
+Before using the renderer, you need to call gdk_pango_renderer_set_drawable()
+and gdk_pango_renderer_set_gc() to set the drawable and graphics context
+to use for drawing.
+renderer is owned by GTK+ and will be kept around until the
+screen is closed."
+                version="2.6">
+        <return-value transfer-ownership="full"
+                      doc="the default #PangoRenderer for @screen. The">
+          <type name="Pango.Renderer" c:type="PangoRenderer*"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     doc="a #GdkScreen">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <method name="set_drawable"
+              c:identifier="gdk_pango_renderer_set_drawable"
+              doc="Sets the drawable the renderer draws to."
+              version="2.6">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="the new target drawable, or %NULL">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_gc"
+              c:identifier="gdk_pango_renderer_set_gc"
+              doc="Sets the GC the renderer draws with. Note that the GC must not be
+modified until it is unset by calling the function again with
+%NULL for the @gc parameter, since GDK may make internal copies
+of the GC which won&apos;t be updated to follow changes to the
+original GC."
+              version="2.6">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="gc"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="the new GC to use for drawing, or %NULL">
+            <type name="GC" c:type="GdkGC*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_stipple"
+              c:identifier="gdk_pango_renderer_set_stipple"
+              doc="Sets the stipple for one render part (foreground, background, underline,
+etc.) Note that this is overwritten when iterating through the individual
+styled runs of a #PangoLayout or #PangoLayoutLine. This function is thus
+only useful when you call low level functions like pango_renderer_draw_glyphs()
+directly, or in the &apos;prepare_run&apos; virtual function of a subclass of
+#GdkPangoRenderer."
+              version="2.6">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="part"
+                     transfer-ownership="none"
+                     doc="the part to render with the stipple">
+            <type name="Pango.RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="stipple"
+                     transfer-ownership="none"
+                     doc="the new stipple value.">
+            <type name="Bitmap" c:type="GdkBitmap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_override_color"
+              c:identifier="gdk_pango_renderer_set_override_color"
+              doc="Sets the color for a particular render part (foreground,
+background, underline, etc.), overriding any attributes on the layouts
+renderered with this renderer."
+              version="2.6">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="part"
+                     transfer-ownership="none"
+                     doc="the part to render to set the color of">
+            <type name="Pango.RenderPart" c:type="PangoRenderPart"/>
+          </parameter>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="the color to use, or %NULL to unset a previously set override color.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <property name="screen"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="Screen" c:type="GdkScreen"/>
+      </property>
+      <field name="parent_instance">
+        <type name="Pango.Renderer" c:type="PangoRenderer"/>
+      </field>
+      <field name="priv">
+        <type name="PangoRendererPrivate" c:type="GdkPangoRendererPrivate*"/>
+      </field>
+    </class>
+    <record name="PangoRendererClass"
+            c:type="GdkPangoRendererClass"
+            glib:is-gtype-struct-for="PangoRenderer"
+            doc="#GdkPangoRenderer is the class structure for #GdkPangoRenderer."
+            version="2.6">
+      <field name="parent_class">
+        <type name="Pango.RendererClass" c:type="PangoRendererClass"/>
+      </field>
+    </record>
+    <record name="PangoRendererPrivate" c:type="GdkPangoRendererPrivate">
+    </record>
+    <constant name="Paste" value="269025133">
+      <type name="int"/>
+    </constant>
+    <constant name="Pause" value="65299">
+      <type name="int"/>
+    </constant>
+    <constant name="PesetaSign" value="16785575">
+      <type name="int"/>
+    </constant>
+    <constant name="Phone" value="269025134">
+      <type name="int"/>
+    </constant>
+    <constant name="Pictures" value="269025169">
+      <type name="int"/>
+    </constant>
+    <class name="Pixmap"
+           c:type="GdkPixmap"
+           parent="Drawable"
+           glib:type-name="GdkPixmap"
+           glib:get-type="gdk_pixmap_get_type">
+      <constructor name="new" c:identifier="gdk_pixmap_new">
+        <return-value transfer-ownership="full">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable" transfer-ownership="none">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="depth" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <function name="create_from_data"
+                c:identifier="gdk_pixmap_create_from_data">
+        <return-value transfer-ownership="full">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable" transfer-ownership="none">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="data" transfer-ownership="none">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="depth" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="fg" transfer-ownership="none">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="bg" transfer-ownership="none">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="create_from_xpm"
+                c:identifier="gdk_pixmap_create_from_xpm"
+                doc="Create a pixmap from a XPM file.">
+        <return-value transfer-ownership="none" doc="the #GdkPixmap">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable, used to determine default values for the new pixmap.">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     doc="(out) a pointer to a place to store a bitmap representing the transparency mask of the XPM file. Can be %NULL, in which case transparency will be ignored.">
+            <type name="Bitmap" c:type="GdkBitmap**"/>
+          </parameter>
+          <parameter name="transparent_color"
+                     transfer-ownership="none"
+                     doc="the color to be used for the pixels that are transparent in the input file. Can be %NULL, in which case a default color will be used.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="filename"
+                     transfer-ownership="none"
+                     doc="the filename of a file containing XPM data.">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="colormap_create_from_xpm"
+                c:identifier="gdk_pixmap_colormap_create_from_xpm"
+                doc="Create a pixmap from a XPM file using a particular colormap.">
+        <return-value transfer-ownership="none" doc="the #GdkPixmap.">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable, used to determine default values for the new pixmap. Can be %NULL if @colormap is given.">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="colormap"
+                     transfer-ownership="none"
+                     doc="the #GdkColormap that the new pixmap will be use. If omitted, the colormap for @window will be used.">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     doc="a pointer to a place to store a bitmap representing the transparency mask of the XPM file. Can be %NULL, in which case transparency will be ignored.">
+            <type name="Bitmap" c:type="GdkBitmap**"/>
+          </parameter>
+          <parameter name="transparent_color"
+                     transfer-ownership="none"
+                     doc="the color to be used for the pixels that are transparent in the input file. Can be %NULL, in which case a default color will be used.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="filename"
+                     transfer-ownership="none"
+                     doc="the filename of a file containing XPM data.">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="create_from_xpm_d"
+                c:identifier="gdk_pixmap_create_from_xpm_d"
+                doc="Create a pixmap from data in XPM format.">
+        <return-value transfer-ownership="none" doc="the #GdkPixmap.">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable, used to determine default values for the new pixmap.">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="mask"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="Pointer to a place to store a bitmap representing the transparency mask of the XPM file. Can be %NULL, in which case transparency will be ignored.">
+            <type name="Bitmap" c:type="GdkBitmap**"/>
+          </parameter>
+          <parameter name="transparent_color"
+                     transfer-ownership="none"
+                     doc="This color will be used for the pixels that are transparent in the input file. Can be %NULL in which case a default color will be used.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="Pointer to a string containing the XPM data.">
+            <array c:type="gchar**">
+              <type name="utf8"/>
+            </array>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="colormap_create_from_xpm_d"
+                c:identifier="gdk_pixmap_colormap_create_from_xpm_d"
+                doc="Create a pixmap from data in XPM format using a particular
+colormap.">
+        <return-value transfer-ownership="none" doc="the #GdkPixmap.">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable, used to determine default values for the new pixmap. Can be %NULL if @colormap is given.">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="colormap"
+                     transfer-ownership="none"
+                     doc="the #GdkColormap that the new pixmap will be use. If omitted, the colormap for @window will be used.">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     doc="a pointer to a place to store a bitmap representing the transparency mask of the XPM file. Can be %NULL, in which case transparency will be ignored.">
+            <type name="Bitmap" c:type="GdkBitmap**"/>
+          </parameter>
+          <parameter name="transparent_color"
+                     transfer-ownership="none"
+                     doc="the color to be used for the pixels that are transparent in the input file. Can be %NULL, in which case a default color will be used.">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="Pointer to a string containing the XPM data.">
+            <array c:type="gchar**">
+              <type name="utf8"/>
+            </array>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="foreign_new"
+                c:identifier="gdk_pixmap_foreign_new"
+                doc="Wraps a native window for the default display in a #GdkPixmap.
+This may fail if the pixmap has been destroyed.
+For example in the X backend, a native pixmap handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+native pixmap or %NULL if the pixmap has been destroyed.">
+        <return-value transfer-ownership="full"
+                      doc="the newly-created #GdkPixmap wrapper for the">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native pixmap handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="lookup"
+                c:identifier="gdk_pixmap_lookup"
+                doc="Looks up the #GdkPixmap that wraps the given native pixmap handle.
+For example in the X backend, a native pixmap handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+or %NULL if there is none.">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkPixmap wrapper for the native pixmap,">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native pixmap handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="foreign_new_for_display"
+                c:identifier="gdk_pixmap_foreign_new_for_display"
+                doc="Wraps a native pixmap in a #GdkPixmap.
+This may fail if the pixmap has been destroyed.
+For example in the X backend, a native pixmap handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+native pixmap or %NULL if the pixmap has been destroyed."
+                version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the newly-created #GdkPixmap wrapper for the">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="The #GdkDisplay where @anid is located.">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native pixmap handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="lookup_for_display"
+                c:identifier="gdk_pixmap_lookup_for_display"
+                doc="Looks up the #GdkPixmap that wraps the given native pixmap handle.
+For example in the X backend, a native pixmap handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+or %NULL if there is none."
+                version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkPixmap wrapper for the native pixmap,">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the #GdkDisplay associated with @anid">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native pixmap handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="foreign_new_for_screen"
+                c:identifier="gdk_pixmap_foreign_new_for_screen"
+                doc="Wraps a native pixmap in a #GdkPixmap.
+This may fail if the pixmap has been destroyed.
+For example in the X backend, a native pixmap handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+This function is an alternative to gdk_pixmap_foreign_new_for_display()
+for cases where the dimensions of the pixmap are known. For the X
+backend, this avoids a roundtrip to the server.
+native pixmap or %NULL if the pixmap has been destroyed."
+                version="2.10">
+        <return-value transfer-ownership="full"
+                      doc="the newly-created #GdkPixmap wrapper for the">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="screen"
+                     transfer-ownership="none"
+                     doc="a #GdkScreen">
+            <type name="Screen" c:type="GdkScreen*"/>
+          </parameter>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native pixmap handle">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="the width of the pixmap identified by @anid">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="the height of the pixmap identified by @anid">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="depth"
+                     transfer-ownership="none"
+                     doc="the depth of the pixmap identified by @anid">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </function>
+    </class>
+    <record name="PixmapObject" c:type="GdkPixmapObject">
+      <field name="parent_instance" writable="1">
+        <type name="Drawable" c:type="GdkDrawable"/>
+      </field>
+      <field name="impl" writable="1">
+        <type name="Drawable" c:type="GdkDrawable*"/>
+      </field>
+      <field name="depth" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <record name="PixmapObjectClass" c:type="GdkPixmapObjectClass">
+      <field name="parent_class" writable="1">
+        <type name="DrawableClass" c:type="GdkDrawableClass"/>
+      </field>
+    </record>
+    <record name="Point" c:type="GdkPoint">
+      <field name="x" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <record name="PointerHooks" c:type="GdkPointerHooks">
+      <field name="get_pointer">
+        <type name="any" c:type="pointer"/>
+      </field>
+      <field name="window_at_pointer">
+        <type name="any" c:type="pointer"/>
+      </field>
+    </record>
+    <record name="PointerWindowInfo" c:type="GdkPointerWindowInfo">
+      <field name="toplevel_under_pointer" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="window_under_pointer" writable="1">
+        <type name="Window" c:type="GdkWindow*"/>
+      </field>
+      <field name="toplevel_x" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="toplevel_y" writable="1">
+        <type name="double" c:type="gdouble"/>
+      </field>
+      <field name="state" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="button" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="motion_hint_serial" writable="1">
+        <type name="ulong" c:type="gulong"/>
+      </field>
+    </record>
+    <constant name="Pointer_Accelerate" value="65274">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Button1" value="65257">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Button2" value="65258">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Button3" value="65259">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Button4" value="65260">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Button5" value="65261">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Button_Dflt" value="65256">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DblClick1" value="65263">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DblClick2" value="65264">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DblClick3" value="65265">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DblClick4" value="65266">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DblClick5" value="65267">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DblClick_Dflt" value="65262">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DfltBtnNext" value="65275">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DfltBtnPrev" value="65276">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Down" value="65251">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DownLeft" value="65254">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_DownRight" value="65255">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Drag1" value="65269">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Drag2" value="65270">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Drag3" value="65271">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Drag4" value="65272">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Drag5" value="65277">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Drag_Dflt" value="65268">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_EnableKeys" value="65273">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Left" value="65248">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Right" value="65249">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_Up" value="65250">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_UpLeft" value="65252">
+      <type name="int"/>
+    </constant>
+    <constant name="Pointer_UpRight" value="65253">
+      <type name="int"/>
+    </constant>
+    <constant name="PowerDown" value="269025057">
+      <type name="int"/>
+    </constant>
+    <constant name="PowerOff" value="269025066">
+      <type name="int"/>
+    </constant>
+    <constant name="Prev_VMode" value="269024803">
+      <type name="int"/>
+    </constant>
+    <constant name="Prev_Virtual_Screen" value="65233">
+      <type name="int"/>
+    </constant>
+    <constant name="PreviousCandidate" value="65342">
+      <type name="int"/>
+    </constant>
+    <constant name="Print" value="65377">
+      <type name="int"/>
+    </constant>
+    <constant name="Prior" value="65365">
+      <type name="int"/>
+    </constant>
+    <enumeration name="PropMode"
+                 glib:type-name="GdkPropMode"
+                 glib:get-type="gdk_prop_mode_get_type"
+                 c:type="GdkPropMode">
+      <member name="replace"
+              value="0"
+              c:identifier="GDK_PROP_MODE_REPLACE"
+              glib:nick="replace"/>
+      <member name="prepend"
+              value="1"
+              c:identifier="GDK_PROP_MODE_PREPEND"
+              glib:nick="prepend"/>
+      <member name="append"
+              value="2"
+              c:identifier="GDK_PROP_MODE_APPEND"
+              glib:nick="append"/>
+    </enumeration>
+    <enumeration name="PropertyState"
+                 glib:type-name="GdkPropertyState"
+                 glib:get-type="gdk_property_state_get_type"
+                 c:type="GdkPropertyState">
+      <member name="new_value"
+              value="0"
+              c:identifier="GDK_PROPERTY_NEW_VALUE"
+              glib:nick="new-value"/>
+      <member name="delete"
+              value="1"
+              c:identifier="GDK_PROPERTY_DELETE"
+              glib:nick="delete"/>
+    </enumeration>
+    <constant name="Q" value="81">
+      <type name="int"/>
+    </constant>
+    <constant name="R" value="82">
+      <type name="int"/>
+    </constant>
+    <constant name="R1" value="65490">
+      <type name="int"/>
+    </constant>
+    <constant name="R10" value="65499">
+      <type name="int"/>
+    </constant>
+    <constant name="R11" value="65500">
+      <type name="int"/>
+    </constant>
+    <constant name="R12" value="65501">
+      <type name="int"/>
+    </constant>
+    <constant name="R13" value="65502">
+      <type name="int"/>
+    </constant>
+    <constant name="R14" value="65503">
+      <type name="int"/>
+    </constant>
+    <constant name="R15" value="65504">
+      <type name="int"/>
+    </constant>
+    <constant name="R2" value="65491">
+      <type name="int"/>
+    </constant>
+    <constant name="R3" value="65492">
+      <type name="int"/>
+    </constant>
+    <constant name="R4" value="65493">
+      <type name="int"/>
+    </constant>
+    <constant name="R5" value="65494">
+      <type name="int"/>
+    </constant>
+    <constant name="R6" value="65495">
+      <type name="int"/>
+    </constant>
+    <constant name="R7" value="65496">
+      <type name="int"/>
+    </constant>
+    <constant name="R8" value="65497">
+      <type name="int"/>
+    </constant>
+    <constant name="R9" value="65498">
+      <type name="int"/>
+    </constant>
+    <constant name="Racute" value="448">
+      <type name="int"/>
+    </constant>
+    <constant name="Rcaron" value="472">
+      <type name="int"/>
+    </constant>
+    <constant name="Rcedilla" value="931">
+      <type name="int"/>
+    </constant>
+    <record name="Rectangle"
+            c:type="GdkRectangle"
+            glib:type-name="GdkRectangle"
+            glib:get-type="gdk_rectangle_get_type">
+      <field name="x" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="height" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <method name="intersect"
+              c:identifier="gdk_rectangle_intersect"
+              doc="Calculates the intersection of two rectangles. It is allowed for
+do not intersect, @dest&apos;s width and height is set to 0 and its x 
+and y values are undefined. If you are only interested in whether
+the rectangles intersect, but not in the intersecting area itself,
+pass %NULL for @dest.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the rectangles intersect.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="src2"
+                     transfer-ownership="none"
+                     doc="a #GdkRectangle">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+          <parameter name="dest"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="return location for the intersection of @src1 and @src2, or %NULL">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="union"
+              c:identifier="gdk_rectangle_union"
+              doc="Calculates the union of two rectangles.
+The union of rectangles @src1 and @src2 is the smallest rectangle which
+includes both @src1 and @src2 within it.
+It is allowed for @dest to be the same as either @src1 or @src2.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="src2"
+                     transfer-ownership="none"
+                     doc="a #GdkRectangle">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+          <parameter name="dest"
+                     transfer-ownership="none"
+                     doc="return location for the union of @src1 and @src2">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+    </record>
+    <constant name="Red" value="269025187">
+      <type name="int"/>
+    </constant>
+    <constant name="Redo" value="65382">
+      <type name="int"/>
+    </constant>
+    <constant name="Refresh" value="269025065">
+      <type name="int"/>
+    </constant>
+    <record name="Region" c:type="GdkRegion">
+      <constructor name="new"
+                   c:identifier="gdk_region_new"
+                   doc="Creates a new empty #GdkRegion.">
+        <return-value transfer-ownership="full" doc="a new empty #GdkRegion">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </constructor>
+      <method name="copy"
+              c:identifier="gdk_region_copy"
+              doc="Copies @region, creating an identical new region.">
+        <return-value transfer-ownership="full"
+                      doc="a new region identical to @region">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </method>
+      <method name="destroy"
+              c:identifier="gdk_region_destroy"
+              doc="Destroys a #GdkRegion.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_clipbox"
+              c:identifier="gdk_region_get_clipbox"
+              doc="Obtains the smallest rectangle which includes the entire #GdkRegion.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rectangle"
+                     transfer-ownership="none"
+                     doc="return location for the clipbox">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_rectangles"
+              c:identifier="gdk_region_get_rectangles"
+              doc="Obtains the area covered by the region as a list of rectangles.
+The array returned in @rectangles must be freed with g_free().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rectangles"
+                     transfer-ownership="container"
+                     doc="return location for an array of rectangles">
+            <array length="2" c:type="GdkRectangle**">
+              <type name="Rectangle"/>
+            </array>
+          </parameter>
+          <parameter name="n_rectangles"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="length of returned array">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="empty"
+              c:identifier="gdk_region_empty"
+              doc="Finds out if the #GdkRegion is empty.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if @region is empty.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="equal"
+              c:identifier="gdk_region_equal"
+              doc="Finds out if the two regions are the same.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if @region1 and @region2 are equal.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="region2"
+                     transfer-ownership="none"
+                     doc="a #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="rect_equal"
+              c:identifier="gdk_region_rect_equal"
+              doc="Finds out if a regions is the same as a rectangle.
+achieve the same effect."
+              version="2.18"
+              deprecated="Use gdk_region_new_rect() and gdk_region_equal() to "
+              deprecated-version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if @region and @rectangle are equal.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="rectangle"
+                     transfer-ownership="none"
+                     doc="a #GdkRectangle">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="point_in"
+              c:identifier="gdk_region_point_in"
+              doc="Finds out if a point is in a region.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the point is in @region.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the x coordinate of a point">
+            <type name="int" c:type="int"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the y coordinate of a point">
+            <type name="int" c:type="int"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="rect_in"
+              c:identifier="gdk_region_rect_in"
+              doc="Tests whether a rectangle is within a region.
+%GDK_OVERLAP_RECTANGLE_PART, depending on whether the rectangle is inside,
+outside, or partly inside the #GdkRegion, respectively.">
+        <return-value transfer-ownership="full"
+                      doc="%GDK_OVERLAP_RECTANGLE_IN, %GDK_OVERLAP_RECTANGLE_OUT, or">
+          <type name="OverlapType" c:type="GdkOverlapType"/>
+        </return-value>
+        <parameters>
+          <parameter name="rectangle"
+                     transfer-ownership="none"
+                     doc="a #GdkRectangle.">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="offset"
+              c:identifier="gdk_region_offset"
+              doc="Moves a region the specified distance.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="dx"
+                     transfer-ownership="none"
+                     doc="the distance to move the region horizontally">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dy"
+                     transfer-ownership="none"
+                     doc="the distance to move the region vertically">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="shrink"
+              c:identifier="gdk_region_shrink"
+              doc="Resizes a region by the specified amount.
+Positive values shrink the region. Negative values expand it."
+              deprecated="There is no replacement for this function."
+              deprecated-version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="dx"
+                     transfer-ownership="none"
+                     doc="the number of pixels to shrink the region horizontally">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dy"
+                     transfer-ownership="none"
+                     doc="the number of pixels to shrink the region vertically">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="union_with_rect"
+              c:identifier="gdk_region_union_with_rect"
+              doc="Sets the area of @region to the union of the areas of @region and
+either @region or @rect.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rect"
+                     transfer-ownership="none"
+                     doc="a #GdkRectangle.">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="intersect"
+              c:identifier="gdk_region_intersect"
+              doc="Sets the area of @source1 to the intersection of the areas of @source1
+and @source2. The resulting area is the set of pixels contained in
+both @source1 and @source2.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="source2"
+                     transfer-ownership="none"
+                     doc="another #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="union"
+              c:identifier="gdk_region_union"
+              doc="Sets the area of @source1 to the union of the areas of @source1 and
+either @source1 or @source2.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="source2"
+                     transfer-ownership="none"
+                     doc="a #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="subtract"
+              c:identifier="gdk_region_subtract"
+              doc="Subtracts the area of @source2 from the area @source1. The resulting
+area is the set of pixels contained in @source1 but not in @source2.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="source2"
+                     transfer-ownership="none"
+                     doc="another #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="xor"
+              c:identifier="gdk_region_xor"
+              doc="Sets the area of @source1 to the exclusive-OR of the areas of @source1
+and @source2. The resulting area is the set of pixels contained in one
+or the other of the two sources but not in both.
+reimplemented using gdk_region_intersect() and
+gdk_region_subract() easily."
+              deprecated="There is no replacement, but the function can be"
+              deprecated-version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="source2"
+                     transfer-ownership="none"
+                     doc="another #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="spans_intersect_foreach"
+              c:identifier="gdk_region_spans_intersect_foreach"
+              doc="Calls a function on each span in the intersection of @region and @spans."
+              deprecated="There is no replacement."
+              deprecated-version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="spans"
+                     transfer-ownership="none"
+                     doc="an array of #GdkSpans">
+            <type name="Span" c:type="GdkSpan*"/>
+          </parameter>
+          <parameter name="n_spans"
+                     transfer-ownership="none"
+                     doc="the length of @spans">
+            <type name="int" c:type="int"/>
+          </parameter>
+          <parameter name="sorted"
+                     transfer-ownership="none"
+                     doc="%TRUE if @spans is sorted wrt. the y coordinate">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="function"
+                     transfer-ownership="none"
+                     scope="call"
+                     closure="5"
+                     doc="function to call on each span in the intersection">
+            <type name="SpanFunc" c:type="GdkSpanFunc"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="data to pass to @function">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+    </record>
+    <constant name="Reload" value="269025139">
+      <type name="int"/>
+    </constant>
+    <constant name="RepeatKeys_Enable" value="65138">
+      <type name="int"/>
+    </constant>
+    <constant name="Reply" value="269025138">
+      <type name="int"/>
+    </constant>
+    <constant name="Return" value="65293">
+      <type name="int"/>
+    </constant>
+    <record name="RgbCmap" c:type="GdkRgbCmap">
+      <field name="colors" writable="1">
+        <array zero-terminated="0" c:type="guint32" fixed-size="256">
+          <type name="uint32"/>
+        </array>
+      </field>
+      <field name="n_colors" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="info_list" writable="1">
+        <type name="GLib.SList" c:type="GSList*"/>
+      </field>
+      <constructor name="new" c:identifier="gdk_rgb_cmap_new">
+        <return-value transfer-ownership="full">
+          <type name="RgbCmap" c:type="GdkRgbCmap*"/>
+        </return-value>
+        <parameters>
+          <parameter name="colors"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <type name="uint32" c:type="guint32*"/>
+          </parameter>
+          <parameter name="n_colors" transfer-ownership="none">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="free" c:identifier="gdk_rgb_cmap_free">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+    </record>
+    <enumeration name="RgbDither"
+                 glib:type-name="GdkRgbDither"
+                 glib:get-type="gdk_rgb_dither_get_type"
+                 c:type="GdkRgbDither">
+      <member name="none"
+              value="0"
+              c:identifier="GDK_RGB_DITHER_NONE"
+              glib:nick="none"/>
+      <member name="normal"
+              value="1"
+              c:identifier="GDK_RGB_DITHER_NORMAL"
+              glib:nick="normal"/>
+      <member name="max"
+              value="2"
+              c:identifier="GDK_RGB_DITHER_MAX"
+              glib:nick="max"/>
+    </enumeration>
+    <constant name="Right" value="65363">
+      <type name="int"/>
+    </constant>
+    <constant name="RockerDown" value="269025060">
+      <type name="int"/>
+    </constant>
+    <constant name="RockerEnter" value="269025061">
+      <type name="int"/>
+    </constant>
+    <constant name="RockerUp" value="269025059">
+      <type name="int"/>
+    </constant>
+    <constant name="Romaji" value="65316">
+      <type name="int"/>
+    </constant>
+    <constant name="RotateWindows" value="269025140">
+      <type name="int"/>
+    </constant>
+    <constant name="RotationKB" value="269025142">
+      <type name="int"/>
+    </constant>
+    <constant name="RotationPB" value="269025141">
+      <type name="int"/>
+    </constant>
+    <constant name="RupeeSign" value="16785576">
+      <type name="int"/>
+    </constant>
+    <constant name="S" value="83">
+      <type name="int"/>
+    </constant>
+    <constant name="SCHWA" value="16777615">
+      <type name="int"/>
+    </constant>
+    <constant name="Sabovedot" value="16784992">
+      <type name="int"/>
+    </constant>
+    <constant name="Sacute" value="422">
+      <type name="int"/>
+    </constant>
+    <constant name="Save" value="269025143">
+      <type name="int"/>
+    </constant>
+    <constant name="Scaron" value="425">
+      <type name="int"/>
+    </constant>
+    <constant name="Scedilla" value="426">
+      <type name="int"/>
+    </constant>
+    <constant name="Scircumflex" value="734">
+      <type name="int"/>
+    </constant>
+    <class name="Screen"
+           c:type="GdkScreen"
+           parent="GObject.Object"
+           glib:type-name="GdkScreen"
+           glib:get-type="gdk_screen_get_type"
+           glib:type-struct="ScreenClass">
+      <function name="get_default"
+                c:identifier="gdk_screen_get_default"
+                doc="Gets the default screen for the default display. (See
+gdk_display_get_default ())."
+                version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="a #GdkScreen, or %NULL if there is no default display.">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </function>
+      <function name="width"
+                c:identifier="gdk_screen_width"
+                doc="Returns the width of the default screen in pixels.">
+        <return-value transfer-ownership="none"
+                      doc="the width of the default screen in pixels.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </function>
+      <function name="height"
+                c:identifier="gdk_screen_height"
+                doc="Returns the height of the default screen in pixels.">
+        <return-value transfer-ownership="none"
+                      doc="the height of the default screen in pixels.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </function>
+      <function name="width_mm"
+                c:identifier="gdk_screen_width_mm"
+                doc="Returns the width of the default screen in millimeters.
+Note that on many X servers this value will not be correct.
+though it is not always correct.">
+        <return-value transfer-ownership="none"
+                      doc="the width of the default screen in millimeters,">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </function>
+      <function name="height_mm"
+                c:identifier="gdk_screen_height_mm"
+                doc="Returns the height of the default screen in millimeters.
+Note that on many X servers this value will not be correct.
+though it is not always correct.">
+        <return-value transfer-ownership="none"
+                      doc="the height of the default screen in millimeters,">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </function>
+      <method name="get_default_colormap"
+              c:identifier="gdk_screen_get_default_colormap"
+              doc="Gets the default colormap for @screen."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the default #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="set_default_colormap"
+              c:identifier="gdk_screen_set_default_colormap"
+              doc="Sets the default @colormap for @screen."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="colormap"
+                     transfer-ownership="none"
+                     doc="a #GdkColormap">
+            <type name="Colormap" c:type="GdkColormap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_system_colormap"
+              c:identifier="gdk_screen_get_system_colormap"
+              doc="Gets the system&apos;s default colormap for @screen"
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the default colormap for @screen.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="get_system_visual"
+              c:identifier="gdk_screen_get_system_visual"
+              doc="Get the system&apos;s default visual for @screen.
+This is the visual for the root window of the display.
+The return value should not be freed."
+              version="2.2">
+        <return-value transfer-ownership="none" doc="the system visual">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </method>
+      <method name="get_rgb_colormap"
+              c:identifier="gdk_screen_get_rgb_colormap"
+              doc="Gets the preferred colormap for rendering image data on @screen.
+Not a very useful function; historically, GDK could only render RGB
+image data to one colormap and visual, but in the current version
+it can render to any colormap and visual. So there&apos;s no need to
+call this function."
+              version="2.2">
+        <return-value transfer-ownership="none" doc="the preferred colormap">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="get_rgb_visual"
+              c:identifier="gdk_screen_get_rgb_visual"
+              doc="Gets a &quot;preferred visual&quot; chosen by GdkRGB for rendering image data
+on @screen. In previous versions of
+GDK, this was the only visual GdkRGB could use for rendering. In
+current versions, it&apos;s simply the visual GdkRGB would have chosen as 
+the optimal one in those previous versions. GdkRGB can now render to 
+drawables with any visual."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="The #GdkVisual chosen by GdkRGB.">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </method>
+      <method name="get_rgba_colormap"
+              c:identifier="gdk_screen_get_rgba_colormap"
+              doc="Gets a colormap to use for creating windows or pixmaps with an
+alpha channel. The windowing system on which GTK+ is running
+may not support this capability, in which case %NULL will
+be returned. Even if a non-%NULL value is returned, its
+possible that the window&apos;s alpha channel won&apos;t be honored
+X an appropriate windowing manager and compositing manager
+must be running to provide appropriate display.
+This functionality is not implemented in the Windows backend.
+For setting an overall opacity for a top-level window, see
+gdk_window_set_opacity().
+an alpha channel or %NULL if the capability is not available."
+              version="2.8">
+        <return-value transfer-ownership="none"
+                      doc="a colormap to use for windows with">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </return-value>
+      </method>
+      <method name="get_rgba_visual"
+              c:identifier="gdk_screen_get_rgba_visual"
+              doc="Gets a visual to use for creating windows or pixmaps with an
+alpha channel. See the docs for gdk_screen_get_rgba_colormap()
+for caveats.
+alpha channel or %NULL if the capability is not available."
+              version="2.8">
+        <return-value transfer-ownership="none"
+                      doc="a visual to use for windows with an">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </method>
+      <method name="is_composited"
+              c:identifier="gdk_screen_is_composited"
+              doc="Returns whether windows with an RGBA visual can reasonably
+be expected to have their alpha channel drawn correctly on
+the screen.
+On X11 this function returns whether a compositing manager is
+compositing @screen.
+expected to have their alpha channels drawn correctly on the screen."
+              version="2.10">
+        <return-value transfer-ownership="none"
+                      doc="Whether windows with RGBA visuals can reasonably be">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="get_root_window"
+              c:identifier="gdk_screen_get_root_window"
+              doc="Gets the root window of @screen."
+              version="2.2">
+        <return-value transfer-ownership="none" doc="the root window">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="get_display"
+              c:identifier="gdk_screen_get_display"
+              doc="Gets the display to which the @screen belongs."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the display to which @screen belongs">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </return-value>
+      </method>
+      <method name="get_number"
+              c:identifier="gdk_screen_get_number"
+              doc="Gets the index of @screen among the screens in the display
+to which it belongs. (See gdk_screen_get_display())"
+              version="2.2">
+        <return-value transfer-ownership="none" doc="the index">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_width"
+              c:identifier="gdk_screen_get_width"
+              doc="Gets the width of @screen in pixels"
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the width of @screen in pixels.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_height"
+              c:identifier="gdk_screen_get_height"
+              doc="Gets the height of @screen in pixels"
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the height of @screen in pixels.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_width_mm"
+              c:identifier="gdk_screen_get_width_mm"
+              doc="Gets the width of @screen in millimeters. 
+Note that on some X servers this value will not be correct."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the width of @screen in millimeters.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_height_mm"
+              c:identifier="gdk_screen_get_height_mm"
+              doc="Returns the height of @screen in millimeters. 
+Note that on some X servers this value will not be correct."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the heigth of @screen in millimeters.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="list_visuals"
+              c:identifier="gdk_screen_list_visuals"
+              doc="Lists the available visuals for the specified @screen.
+A visual describes a hardware image data format.
+For example, a visual might support 24-bit color, or 8-bit color,
+and might expect pixels to be in a certain format.
+Call g_list_free() on the return value when you&apos;re finished with it.
+contents"
+              version="2.2"
+              introspectable="0">
+        <return-value transfer-ownership="full"
+                      doc="a list of visuals; the list must be freed, but not its">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <method name="get_toplevel_windows"
+              c:identifier="gdk_screen_get_toplevel_windows"
+              doc="Obtains a list of all toplevel windows known to GDK on the screen @screen.
+A toplevel window is a child of the root window (see
+gdk_get_default_root_window()).
+The returned list should be freed with g_list_free(), but
+its elements need not be freed."
+              version="2.2"
+              introspectable="0">
+        <return-value transfer-ownership="full"
+                      doc="list of toplevel windows, free with g_list_free()">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <method name="make_display_name"
+              c:identifier="gdk_screen_make_display_name"
+              doc="Determines the name to pass to gdk_display_open() to get
+a #GdkDisplay with this screen as the default screen."
+              version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="a newly allocated string, free with g_free()">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+      </method>
+      <method name="get_n_monitors"
+              c:identifier="gdk_screen_get_n_monitors"
+              doc="Returns the number of monitors which @screen consists of."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="number of monitors which @screen consists of">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_primary_monitor"
+              c:identifier="gdk_screen_get_primary_monitor"
+              doc="Gets the primary monitor for @screen.  The primary monitor
+is considered the monitor where the &apos;main desktop&apos; lives.
+While normal application windows typically allow the window
+manager to place the windows, specialized desktop applications
+such as panels should place themselves on the primary monitor.
+If no primary monitor is configured by the user, the return value
+will be 0, defaulting to the first monitor."
+              version="2.20">
+        <return-value transfer-ownership="none"
+                      doc="An integer index for the primary monitor, or 0 if none is configured.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_monitor_geometry"
+              c:identifier="gdk_screen_get_monitor_geometry"
+              doc="Retrieves the #GdkRectangle representing the size and position of
+the individual monitor within the entire screen area.
+Note that the size of the entire screen area can be retrieved via
+gdk_screen_get_width() and gdk_screen_get_height()."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="monitor_num"
+                     transfer-ownership="none"
+                     doc="the monitor number, between 0 and gdk_screen_get_n_monitors (screen)">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest" transfer-ownership="none">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_monitor_at_point"
+              c:identifier="gdk_screen_get_monitor_at_point"
+              doc="Returns the monitor number in which the point (@x,@y) is located.
+a monitor close to (@x,@y) if the point is not in any monitor."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the monitor number in which the point (@x,@y) lies, or">
+          <type name="int" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="the x coordinate in the virtual screen.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="the y coordinate in the virtual screen.">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_monitor_at_window"
+              c:identifier="gdk_screen_get_monitor_at_window"
+              doc="Returns the number of the monitor in which the largest area of the 
+bounding rectangle of @window resides."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the monitor number in which most of @window is located, or if @window does not intersect any monitors, a monitor, close to @window.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="window"
+                     transfer-ownership="none"
+                     doc="a #GdkWindow">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_monitor_width_mm"
+              c:identifier="gdk_screen_get_monitor_width_mm"
+              doc="Gets the width in millimeters of the specified monitor, if available."
+              version="2.14">
+        <return-value transfer-ownership="none"
+                      doc="the width of the monitor, or -1 if not available">
+          <type name="int" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="monitor_num"
+                     transfer-ownership="none"
+                     doc="number of the monitor, between 0 and gdk_screen_get_n_monitors (screen)">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_monitor_height_mm"
+              c:identifier="gdk_screen_get_monitor_height_mm"
+              doc="Gets the height in millimeters of the specified monitor."
+              version="2.14">
+        <return-value transfer-ownership="none"
+                      doc="the height of the monitor, or -1 if not available">
+          <type name="int" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="monitor_num"
+                     transfer-ownership="none"
+                     doc="number of the monitor, between 0 and gdk_screen_get_n_monitors (screen)">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_monitor_plug_name"
+              c:identifier="gdk_screen_get_monitor_plug_name"
+              doc="Returns the output name of the specified monitor.
+Usually something like VGA, DVI, or TV, not the actual
+product name of the display device.
+or %NULL if the name cannot be determined"
+              version="2.14">
+        <return-value transfer-ownership="full"
+                      doc="a newly-allocated string containing the name of the monitor,">
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+        <parameters>
+          <parameter name="monitor_num"
+                     transfer-ownership="none"
+                     doc="number of the monitor, between 0 and gdk_screen_get_n_monitors (screen)">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="broadcast_client_message"
+              c:identifier="gdk_screen_broadcast_client_message"
+              doc="On X11, sends an X ClientMessage event to all toplevel windows on
+Toplevel windows are determined by checking for the WM_STATE property, 
+as described in the Inter-Client Communication Conventions Manual (ICCCM).
+If no windows are found with the WM_STATE property set, the message is 
+sent to all children of the root window.
+On Windows, broadcasts a message registered with the name
+GDK_WIN32_CLIENT_MESSAGE to all top-level windows. The amount of
+data is limited to one long, i.e. four bytes."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="event"
+                     transfer-ownership="none"
+                     doc="the #GdkEvent.">
+            <type name="Event" c:type="GdkEvent*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_setting"
+              c:identifier="gdk_screen_get_setting"
+              doc="Retrieves a desktop-wide setting such as double-click time
+for the #GdkScreen @screen. 
+FIXME needs a list of valid settings here, or a link to 
+more information.
+in @value, %FALSE otherwise."
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the setting existed and a value was stored">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="name"
+                     transfer-ownership="none"
+                     doc="the name of the setting">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+          <parameter name="value"
+                     transfer-ownership="none"
+                     doc="location to store the value of the setting">
+            <type name="GObject.Value" c:type="GValue*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_font_options"
+              c:identifier="gdk_screen_set_font_options"
+              doc="Sets the default font options for the screen. These
+options will be set on any #PangoContext&apos;s newly created
+with gdk_pango_context_get_for_screen(). Changing the
+default set of font options does not affect contexts that
+have already been created."
+              version="2.10">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="options"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #cairo_font_options_t, or %NULL to unset any previously set default font options.">
+            <type name="cairo.FontOptions" c:type="cairo_font_options_t*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_font_options"
+              c:identifier="gdk_screen_get_font_options"
+              doc="Gets any options previously set with gdk_screen_set_font_options().
+font options have been set."
+              version="2.10">
+        <return-value transfer-ownership="none"
+                      doc="the current font options, or %NULL if no default">
+          <type name="cairo.FontOptions" c:type="cairo_font_options_t*"/>
+        </return-value>
+      </method>
+      <method name="set_resolution"
+              c:identifier="gdk_screen_set_resolution"
+              doc="Sets the resolution for font handling on the screen. This is a
+scale factor between points specified in a #PangoFontDescription
+and cairo units. The default value is 96, meaning that a 10 point
+font will be 13 units high. (10 * 96. / 72. = 13.3)."
+              version="2.10">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="dpi"
+                     transfer-ownership="none"
+                     doc="the resolution in &quot;dots per inch&quot;. (Physical inches aren&apos;t actually involved; the terminology is conventional.)">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_resolution"
+              c:identifier="gdk_screen_get_resolution"
+              doc="Gets the resolution for font handling on the screen; see
+gdk_screen_set_resolution() for full details.
+has been set."
+              version="2.10">
+        <return-value transfer-ownership="none"
+                      doc="the current resolution, or -1 if no resolution">
+          <type name="double" c:type="gdouble"/>
+        </return-value>
+      </method>
+      <method name="get_active_window"
+              c:identifier="gdk_screen_get_active_window">
+        <return-value transfer-ownership="full">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="get_window_stack"
+              c:identifier="gdk_screen_get_window_stack"
+              introspectable="0">
+        <return-value transfer-ownership="full">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <property name="font-options" writable="1" transfer-ownership="none">
+        <type name="any" c:type="gpointer"/>
+      </property>
+      <property name="resolution" writable="1" transfer-ownership="none">
+        <type name="double" c:type="gdouble"/>
+      </property>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="closed" bits="1">
+        <type name="uint" c:type="guint"/>
+      </field>
+      <field name="normal_gcs">
+        <array zero-terminated="0" c:type="GdkGC*" fixed-size="32">
+          <type name="GC"/>
+        </array>
+      </field>
+      <field name="exposure_gcs">
+        <array zero-terminated="0" c:type="GdkGC*" fixed-size="32">
+          <type name="GC"/>
+        </array>
+      </field>
+      <field name="subwindow_gcs">
+        <array zero-terminated="0" c:type="GdkGC*" fixed-size="32">
+          <type name="GC"/>
+        </array>
+      </field>
+      <field name="font_options">
+        <type name="cairo.FontOptions" c:type="cairo_font_options_t*"/>
+      </field>
+      <field name="resolution">
+        <type name="double" c:type="double"/>
+      </field>
+      <glib:signal name="composited-changed"
+                   doc="The ::composited-changed signal is emitted when the composited
+status of the screen changes"
+                   version="2.10">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="monitors-changed"
+                   doc="The ::monitors-changed signal is emitted when the number, size
+or position of the monitors attached to the screen change. 
+Only for X11 and OS X for now. A future implementation for Win32
+may be a possibility."
+                   version="2.14">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="size-changed"
+                   doc="The ::size-changed signal is emitted when the pixel width or 
+height of a screen changes."
+                   version="2.2">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+    </class>
+    <record name="ScreenClass"
+            c:type="GdkScreenClass"
+            glib:is-gtype-struct-for="Screen">
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="size_changed">
+        <callback name="size_changed" c:type="size_changed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="screen" transfer-ownership="none">
+              <type name="Screen" c:type="GdkScreen*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="composited_changed">
+        <callback name="composited_changed" c:type="composited_changed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="screen" transfer-ownership="none">
+              <type name="Screen" c:type="GdkScreen*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="monitors_changed">
+        <callback name="monitors_changed" c:type="monitors_changed">
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="screen" transfer-ownership="none">
+              <type name="Screen" c:type="GdkScreen*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+    </record>
+    <constant name="ScreenSaver" value="269025069">
+      <type name="int"/>
+    </constant>
+    <constant name="ScrollClick" value="269025146">
+      <type name="int"/>
+    </constant>
+    <enumeration name="ScrollDirection"
+                 glib:type-name="GdkScrollDirection"
+                 glib:get-type="gdk_scroll_direction_get_type"
+                 c:type="GdkScrollDirection">
+      <member name="up" value="0" c:identifier="GDK_SCROLL_UP" glib:nick="up"/>
+      <member name="down"
+              value="1"
+              c:identifier="GDK_SCROLL_DOWN"
+              glib:nick="down"/>
+      <member name="left"
+              value="2"
+              c:identifier="GDK_SCROLL_LEFT"
+              glib:nick="left"/>
+      <member name="right"
+              value="3"
+              c:identifier="GDK_SCROLL_RIGHT"
+              glib:nick="right"/>
+    </enumeration>
+    <constant name="ScrollDown" value="269025145">
+      <type name="int"/>
+    </constant>
+    <constant name="ScrollUp" value="269025144">
+      <type name="int"/>
+    </constant>
+    <constant name="Scroll_Lock" value="65300">
+      <type name="int"/>
+    </constant>
+    <constant name="Search" value="269025051">
+      <type name="int"/>
+    </constant>
+    <record name="Segment" c:type="GdkSegment">
+      <field name="x1" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y1" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="x2" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y2" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <constant name="Select" value="65376">
+      <type name="int"/>
+    </constant>
+    <constant name="SelectButton" value="269025184">
+      <type name="int"/>
+    </constant>
+    <constant name="Send" value="269025147">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_DJE" value="1713">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_DZE" value="1727">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_JE" value="1720">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_LJE" value="1721">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_NJE" value="1722">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_TSHE" value="1723">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_dje" value="1697">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_dze" value="1711">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_je" value="1704">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_lje" value="1705">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_nje" value="1706">
+      <type name="int"/>
+    </constant>
+    <constant name="Serbian_tshe" value="1707">
+      <type name="int"/>
+    </constant>
+    <enumeration name="SettingAction"
+                 glib:type-name="GdkSettingAction"
+                 glib:get-type="gdk_setting_action_get_type"
+                 c:type="GdkSettingAction">
+      <member name="new"
+              value="0"
+              c:identifier="GDK_SETTING_ACTION_NEW"
+              glib:nick="new"/>
+      <member name="changed"
+              value="1"
+              c:identifier="GDK_SETTING_ACTION_CHANGED"
+              glib:nick="changed"/>
+      <member name="deleted"
+              value="2"
+              c:identifier="GDK_SETTING_ACTION_DELETED"
+              glib:nick="deleted"/>
+    </enumeration>
+    <constant name="Shift_L" value="65505">
+      <type name="int"/>
+    </constant>
+    <constant name="Shift_Lock" value="65510">
+      <type name="int"/>
+    </constant>
+    <constant name="Shift_R" value="65506">
+      <type name="int"/>
+    </constant>
+    <constant name="Shop" value="269025078">
+      <type name="int"/>
+    </constant>
+    <constant name="SingleCandidate" value="65340">
+      <type name="int"/>
+    </constant>
+    <constant name="Sleep" value="269025071">
+      <type name="int"/>
+    </constant>
+    <constant name="SlowKeys_Enable" value="65139">
+      <type name="int"/>
+    </constant>
+    <record name="Span" c:type="GdkSpan">
+      <field name="x" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+    </record>
+    <callback name="SpanFunc" c:type="GdkSpanFunc">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="span" transfer-ownership="none">
+          <type name="Span" c:type="GdkSpan*"/>
+        </parameter>
+        <parameter name="data" transfer-ownership="none">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </callback>
+    <constant name="Spell" value="269025148">
+      <type name="int"/>
+    </constant>
+    <constant name="SplitScreen" value="269025149">
+      <type name="int"/>
+    </constant>
+    <constant name="Standby" value="269025040">
+      <type name="int"/>
+    </constant>
+    <constant name="Start" value="269025050">
+      <type name="int"/>
+    </constant>
+    <enumeration name="Status"
+                 glib:type-name="GdkStatus"
+                 glib:get-type="gdk_status_get_type"
+                 c:type="GdkStatus">
+      <member name="ok" value="0" c:identifier="GDK_OK" glib:nick="ok"/>
+      <member name="error"
+              value="-1"
+              c:identifier="GDK_ERROR"
+              glib:nick="error"/>
+      <member name="error_param"
+              value="-2"
+              c:identifier="GDK_ERROR_PARAM"
+              glib:nick="error-param"/>
+      <member name="error_file"
+              value="-3"
+              c:identifier="GDK_ERROR_FILE"
+              glib:nick="error-file"/>
+      <member name="error_mem"
+              value="-4"
+              c:identifier="GDK_ERROR_MEM"
+              glib:nick="error-mem"/>
+    </enumeration>
+    <constant name="StickyKeys_Enable" value="65141">
+      <type name="int"/>
+    </constant>
+    <constant name="Stop" value="269025064">
+      <type name="int"/>
+    </constant>
+    <constant name="Subtitle" value="269025178">
+      <type name="int"/>
+    </constant>
+    <enumeration name="SubwindowMode"
+                 glib:type-name="GdkSubwindowMode"
+                 glib:get-type="gdk_subwindow_mode_get_type"
+                 c:type="GdkSubwindowMode">
+      <member name="clip_by_children"
+              value="0"
+              c:identifier="GDK_CLIP_BY_CHILDREN"
+              glib:nick="clip-by-children"/>
+      <member name="include_inferiors"
+              value="1"
+              c:identifier="GDK_INCLUDE_INFERIORS"
+              glib:nick="include-inferiors"/>
+    </enumeration>
+    <constant name="Super_L" value="65515">
+      <type name="int"/>
+    </constant>
+    <constant name="Super_R" value="65516">
+      <type name="int"/>
+    </constant>
+    <constant name="Support" value="269025150">
+      <type name="int"/>
+    </constant>
+    <constant name="Suspend" value="269025191">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_1" value="269024769">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_10" value="269024778">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_11" value="269024779">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_12" value="269024780">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_2" value="269024770">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_3" value="269024771">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_4" value="269024772">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_5" value="269024773">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_6" value="269024774">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_7" value="269024775">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_8" value="269024776">
+      <type name="int"/>
+    </constant>
+    <constant name="Switch_VT_9" value="269024777">
+      <type name="int"/>
+    </constant>
+    <constant name="Sys_Req" value="65301">
+      <type name="int"/>
+    </constant>
+    <constant name="T" value="84">
+      <type name="int"/>
+    </constant>
+    <constant name="THORN" value="222">
+      <type name="int"/>
+    </constant>
+    <constant name="Tab" value="65289">
+      <type name="int"/>
+    </constant>
+    <constant name="Tabovedot" value="16785002">
+      <type name="int"/>
+    </constant>
+    <constant name="TaskPane" value="269025151">
+      <type name="int"/>
+    </constant>
+    <constant name="Tcaron" value="427">
+      <type name="int"/>
+    </constant>
+    <constant name="Tcedilla" value="478">
+      <type name="int"/>
+    </constant>
+    <constant name="Terminal" value="269025152">
+      <type name="int"/>
+    </constant>
+    <constant name="Terminate_Server" value="65237">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_baht" value="3551">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_bobaimai" value="3514">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_chochan" value="3496">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_chochang" value="3498">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_choching" value="3497">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_chochoe" value="3500">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_dochada" value="3502">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_dodek" value="3508">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_fofa" value="3517">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_fofan" value="3519">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_hohip" value="3531">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_honokhuk" value="3534">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_khokhai" value="3490">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_khokhon" value="3493">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_khokhuat" value="3491">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_khokhwai" value="3492">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_khorakhang" value="3494">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_kokai" value="3489">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lakkhangyao" value="3557">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lekchet" value="3575">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lekha" value="3573">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lekhok" value="3574">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lekkao" value="3577">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_leknung" value="3569">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lekpaet" value="3576">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_leksam" value="3571">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_leksi" value="3572">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_leksong" value="3570">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_leksun" value="3568">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lochula" value="3532">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_loling" value="3525">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_lu" value="3526">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maichattawa" value="3563">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maiek" value="3560">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maihanakat" value="3537">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maihanakat_maitho" value="3550">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maitaikhu" value="3559">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maitho" value="3561">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maitri" value="3562">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_maiyamok" value="3558">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_moma" value="3521">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_ngongu" value="3495">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_nikhahit" value="3565">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_nonen" value="3507">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_nonu" value="3513">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_oang" value="3533">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_paiyannoi" value="3535">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_phinthu" value="3546">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_phophan" value="3518">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_phophung" value="3516">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_phosamphao" value="3520">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_popla" value="3515">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_rorua" value="3523">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_ru" value="3524">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraa" value="3536">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraaa" value="3538">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraae" value="3553">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraaimaimalai" value="3556">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraaimaimuan" value="3555">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraam" value="3539">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sarae" value="3552">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sarai" value="3540">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraii" value="3541">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sarao" value="3554">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sarau" value="3544">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_saraue" value="3542">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sarauee" value="3543">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sarauu" value="3545">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sorusi" value="3529">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sosala" value="3528">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_soso" value="3499">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_sosua" value="3530">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thanthakhat" value="3564">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thonangmontho" value="3505">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thophuthao" value="3506">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thothahan" value="3511">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thothan" value="3504">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thothong" value="3512">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_thothung" value="3510">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_topatak" value="3503">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_totao" value="3509">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_wowaen" value="3527">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_yoyak" value="3522">
+      <type name="int"/>
+    </constant>
+    <constant name="Thai_yoying" value="3501">
+      <type name="int"/>
+    </constant>
+    <constant name="Thorn" value="222">
+      <type name="int"/>
+    </constant>
+    <constant name="Time" value="269025183">
+      <type name="int"/>
+    </constant>
+    <record name="TimeCoord" c:type="GdkTimeCoord">
+      <field name="time" writable="1">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="axes" writable="1">
+        <array zero-terminated="0" c:type="gdouble" fixed-size="128">
+          <type name="double"/>
+        </array>
+      </field>
+    </record>
+    <constant name="ToDoList" value="269025055">
+      <type name="int"/>
+    </constant>
+    <constant name="Tools" value="269025153">
+      <type name="int"/>
+    </constant>
+    <constant name="TopMenu" value="269025186">
+      <type name="int"/>
+    </constant>
+    <constant name="Touroku" value="65323">
+      <type name="int"/>
+    </constant>
+    <record name="Trapezoid" c:type="GdkTrapezoid">
+      <field name="y1" writable="1">
+        <type name="double" c:type="double"/>
+      </field>
+      <field name="x11" writable="1">
+        <type name="double" c:type="double"/>
+      </field>
+      <field name="x21" writable="1">
+        <type name="double" c:type="double"/>
+      </field>
+      <field name="y2" writable="1">
+        <type name="double" c:type="double"/>
+      </field>
+      <field name="x12" writable="1">
+        <type name="double" c:type="double"/>
+      </field>
+      <field name="x22" writable="1">
+        <type name="double" c:type="double"/>
+      </field>
+    </record>
+    <constant name="Travel" value="269025154">
+      <type name="int"/>
+    </constant>
+    <constant name="Tslash" value="940">
+      <type name="int"/>
+    </constant>
+    <constant name="U" value="85">
+      <type name="int"/>
+    </constant>
+    <constant name="UWB" value="269025174">
+      <type name="int"/>
+    </constant>
+    <constant name="Uacute" value="218">
+      <type name="int"/>
+    </constant>
+    <constant name="Ubelowdot" value="16785124">
+      <type name="int"/>
+    </constant>
+    <constant name="Ubreve" value="733">
+      <type name="int"/>
+    </constant>
+    <constant name="Ucircumflex" value="219">
+      <type name="int"/>
+    </constant>
+    <constant name="Udiaeresis" value="220">
+      <type name="int"/>
+    </constant>
+    <constant name="Udoubleacute" value="475">
+      <type name="int"/>
+    </constant>
+    <constant name="Ugrave" value="217">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhook" value="16785126">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhorn" value="16777647">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhornacute" value="16785128">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhornbelowdot" value="16785136">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhorngrave" value="16785130">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhornhook" value="16785132">
+      <type name="int"/>
+    </constant>
+    <constant name="Uhorntilde" value="16785134">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_GHE_WITH_UPTURN" value="1725">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_I" value="1718">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_IE" value="1716">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_YI" value="1719">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_ghe_with_upturn" value="1709">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_i" value="1702">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_ie" value="1700">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukrainian_yi" value="1703">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukranian_I" value="1718">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukranian_JE" value="1716">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukranian_YI" value="1719">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukranian_i" value="1702">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukranian_je" value="1700">
+      <type name="int"/>
+    </constant>
+    <constant name="Ukranian_yi" value="1703">
+      <type name="int"/>
+    </constant>
+    <constant name="Umacron" value="990">
+      <type name="int"/>
+    </constant>
+    <constant name="Undo" value="65381">
+      <type name="int"/>
+    </constant>
+    <constant name="Ungrab" value="269024800">
+      <type name="int"/>
+    </constant>
+    <constant name="Uogonek" value="985">
+      <type name="int"/>
+    </constant>
+    <constant name="Up" value="65362">
+      <type name="int"/>
+    </constant>
+    <constant name="Uring" value="473">
+      <type name="int"/>
+    </constant>
+    <constant name="User1KB" value="269025157">
+      <type name="int"/>
+    </constant>
+    <constant name="User2KB" value="269025158">
+      <type name="int"/>
+    </constant>
+    <constant name="UserPB" value="269025156">
+      <type name="int"/>
+    </constant>
+    <constant name="Utilde" value="989">
+      <type name="int"/>
+    </constant>
+    <constant name="V" value="86">
+      <type name="int"/>
+    </constant>
+    <constant name="VendorHome" value="269025076">
+      <type name="int"/>
+    </constant>
+    <constant name="Video" value="269025159">
+      <type name="int"/>
+    </constant>
+    <constant name="View" value="269025185">
+      <type name="int"/>
+    </constant>
+    <enumeration name="VisibilityState"
+                 glib:type-name="GdkVisibilityState"
+                 glib:get-type="gdk_visibility_state_get_type"
+                 c:type="GdkVisibilityState">
+      <member name="unobscured"
+              value="0"
+              c:identifier="GDK_VISIBILITY_UNOBSCURED"
+              glib:nick="unobscured"/>
+      <member name="partial"
+              value="1"
+              c:identifier="GDK_VISIBILITY_PARTIAL"
+              glib:nick="partial"/>
+      <member name="fully_obscured"
+              value="2"
+              c:identifier="GDK_VISIBILITY_FULLY_OBSCURED"
+              glib:nick="fully-obscured"/>
+    </enumeration>
+    <class name="Visual"
+           c:type="GdkVisual"
+           parent="GObject.Object"
+           glib:type-name="GdkVisual"
+           glib:get-type="gdk_visual_get_type"
+           glib:type-struct="VisualClass">
+      <function name="get_best_depth"
+                c:identifier="gdk_visual_get_best_depth"
+                doc="Get the best available depth for the default GDK screen.  &quot;Best&quot;
+means &quot;largest,&quot; i.e. 32 preferred over 24 preferred over 8 bits
+per pixel.">
+        <return-value transfer-ownership="none" doc="best available depth">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </function>
+      <function name="get_best_type"
+                c:identifier="gdk_visual_get_best_type"
+                doc="Return the best available visual type for the default GDK screen.">
+        <return-value transfer-ownership="full" doc="best visual type">
+          <type name="VisualType" c:type="GdkVisualType"/>
+        </return-value>
+      </function>
+      <function name="get_system"
+                c:identifier="gdk_visual_get_system"
+                doc="Get the system&apos;s default visual for the default GDK screen.
+This is the visual for the root window of the display.
+The return value should not be freed.">
+        <return-value transfer-ownership="none" doc="system visual">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </function>
+      <function name="get_best"
+                c:identifier="gdk_visual_get_best"
+                doc="Get the visual with the most available colors for the default
+GDK screen. The return value should not be freed.">
+        <return-value transfer-ownership="none" doc="best visual">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+      </function>
+      <function name="get_best_with_depth"
+                c:identifier="gdk_visual_get_best_with_depth"
+                doc="Get the best visual with depth @depth for the default GDK screen.
+Color visuals and visuals with mutable colormaps are preferred
+over grayscale or fixed-colormap visuals. The return value should not
+be freed. %NULL may be returned if no visual supports @depth.">
+        <return-value transfer-ownership="none"
+                      doc="best visual for the given depth">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+        <parameters>
+          <parameter name="depth" transfer-ownership="none" doc="a bit depth">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_best_with_type"
+                c:identifier="gdk_visual_get_best_with_type"
+                doc="Get the best visual of the given @visual_type for the default GDK screen.
+Visuals with higher color depths are considered better. The return value
+should not be freed. %NULL may be returned if no visual has type">
+        <return-value transfer-ownership="none"
+                      doc="best visual of the given type">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+        <parameters>
+          <parameter name="visual_type"
+                     transfer-ownership="none"
+                     doc="a visual type">
+            <type name="VisualType" c:type="GdkVisualType"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_best_with_both"
+                c:identifier="gdk_visual_get_best_with_both"
+                doc="Combines gdk_visual_get_best_with_depth() and gdk_visual_get_best_with_type().">
+        <return-value transfer-ownership="none"
+                      doc="best visual with both @depth and">
+          <type name="Visual" c:type="GdkVisual*"/>
+        </return-value>
+        <parameters>
+          <parameter name="depth" transfer-ownership="none" doc="a bit depth">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="visual_type"
+                     transfer-ownership="none"
+                     doc="a visual type">
+            <type name="VisualType" c:type="GdkVisualType"/>
+          </parameter>
+        </parameters>
+      </function>
+      <method name="get_screen"
+              c:identifier="gdk_visual_get_screen"
+              doc="Gets the screen to which this visual belongs"
+              version="2.2">
+        <return-value transfer-ownership="none"
+                      doc="the screen to which this visual belongs.">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </return-value>
+      </method>
+      <method name="get_visual_type"
+              c:identifier="gdk_visual_get_visual_type"
+              doc="Returns the type of visual this is (PseudoColor, TrueColor, etc)."
+              version="2.22">
+        <return-value transfer-ownership="full"
+                      doc="A #GdkVisualType stating the type of @visual.">
+          <type name="VisualType" c:type="GdkVisualType"/>
+        </return-value>
+      </method>
+      <method name="get_depth"
+              c:identifier="gdk_visual_get_depth"
+              doc="Returns the bit depth of this visual."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="The bit depth of this visual.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_byte_order"
+              c:identifier="gdk_visual_get_byte_order"
+              doc="Returns the byte order of this visual."
+              version="2.22">
+        <return-value transfer-ownership="full"
+                      doc="A #GdkByteOrder stating the byte order of @visual.">
+          <type name="ByteOrder" c:type="GdkByteOrder"/>
+        </return-value>
+      </method>
+      <method name="get_colormap_size"
+              c:identifier="gdk_visual_get_colormap_size"
+              doc="Returns the size of a colormap for this visual."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="The size of a colormap that is suitable for @visual.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_bits_per_rgb"
+              c:identifier="gdk_visual_get_bits_per_rgb"
+              doc="Returns the number of significant bits per red, green and blue value."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="The number of significant bits per color value for @visual.">
+          <type name="int" c:type="gint"/>
+        </return-value>
+      </method>
+      <method name="get_red_pixel_details"
+              c:identifier="gdk_visual_get_red_pixel_details"
+              doc="Obtains values that are needed to calculate red pixel values in TrueColor
+and DirectColor.  The &quot;mask&quot; is the significant bits within the pixel.
+The &quot;shift&quot; is the number of bits left we must shift a primary for it
+to be in position (according to the &quot;mask&quot;).  Finally, &quot;precision&quot; refers
+to how much precision the pixel value contains for a particular primary."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mask"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #guint32 to be filled in, or %NULL.">
+            <type name="uint32" c:type="guint32*"/>
+          </parameter>
+          <parameter name="shift"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #gint to be filled in, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="precision"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #gint to be filled in, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_green_pixel_details"
+              c:identifier="gdk_visual_get_green_pixel_details"
+              doc="Obtains values that are needed to calculate green pixel values in TrueColor
+and DirectColor.  The &quot;mask&quot; is the significant bits within the pixel.
+The &quot;shift&quot; is the number of bits left we must shift a primary for it
+to be in position (according to the &quot;mask&quot;).  Finally, &quot;precision&quot; refers
+to how much precision the pixel value contains for a particular primary."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mask"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #guint32 to be filled in, or %NULL.">
+            <type name="uint32" c:type="guint32*"/>
+          </parameter>
+          <parameter name="shift"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #gint to be filled in, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="precision"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #gint to be filled in, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_blue_pixel_details"
+              c:identifier="gdk_visual_get_blue_pixel_details"
+              doc="Obtains values that are needed to calculate blue pixel values in TrueColor
+and DirectColor.  The &quot;mask&quot; is the significant bits within the pixel.
+The &quot;shift&quot; is the number of bits left we must shift a primary for it
+to be in position (according to the &quot;mask&quot;).  Finally, &quot;precision&quot; refers
+to how much precision the pixel value contains for a particular primary."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mask"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #guint32 to be filled in, or %NULL.">
+            <type name="uint32" c:type="guint32*"/>
+          </parameter>
+          <parameter name="shift"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #gint to be filled in, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="precision"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="A pointer to a #gint to be filled in, or %NULL.">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <field name="parent_instance">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="type">
+        <type name="VisualType" c:type="GdkVisualType"/>
+      </field>
+      <field name="depth">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="byte_order">
+        <type name="ByteOrder" c:type="GdkByteOrder"/>
+      </field>
+      <field name="colormap_size">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="bits_per_rgb">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="red_mask">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="red_shift">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="red_prec">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="green_mask">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="green_shift">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="green_prec">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="blue_mask">
+        <type name="uint32" c:type="guint32"/>
+      </field>
+      <field name="blue_shift">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="blue_prec">
+        <type name="int" c:type="gint"/>
+      </field>
+    </class>
+    <record name="VisualClass"
+            c:type="GdkVisualClass"
+            glib:is-gtype-struct-for="Visual">
+    </record>
+    <enumeration name="VisualType"
+                 glib:type-name="GdkVisualType"
+                 glib:get-type="gdk_visual_type_get_type"
+                 c:type="GdkVisualType">
+      <member name="static_gray"
+              value="0"
+              c:identifier="GDK_VISUAL_STATIC_GRAY"
+              glib:nick="static-gray"/>
+      <member name="grayscale"
+              value="1"
+              c:identifier="GDK_VISUAL_GRAYSCALE"
+              glib:nick="grayscale"/>
+      <member name="static_color"
+              value="2"
+              c:identifier="GDK_VISUAL_STATIC_COLOR"
+              glib:nick="static-color"/>
+      <member name="pseudo_color"
+              value="3"
+              c:identifier="GDK_VISUAL_PSEUDO_COLOR"
+              glib:nick="pseudo-color"/>
+      <member name="true_color"
+              value="4"
+              c:identifier="GDK_VISUAL_TRUE_COLOR"
+              glib:nick="true-color"/>
+      <member name="direct_color"
+              value="5"
+              c:identifier="GDK_VISUAL_DIRECT_COLOR"
+              glib:nick="direct-color"/>
+    </enumeration>
+    <constant name="VoidSymbol" value="16777215">
+      <type name="int"/>
+    </constant>
+    <constant name="W" value="87">
+      <type name="int"/>
+    </constant>
+    <constant name="WLAN" value="269025173">
+      <type name="int"/>
+    </constant>
+    <bitfield name="WMDecoration"
+              glib:type-name="GdkWMDecoration"
+              glib:get-type="gdk_wm_decoration_get_type"
+              c:type="GdkWMDecoration">
+      <member name="all"
+              value="1"
+              c:identifier="GDK_DECOR_ALL"
+              glib:nick="all"/>
+      <member name="border"
+              value="2"
+              c:identifier="GDK_DECOR_BORDER"
+              glib:nick="border"/>
+      <member name="resizeh"
+              value="4"
+              c:identifier="GDK_DECOR_RESIZEH"
+              glib:nick="resizeh"/>
+      <member name="title"
+              value="8"
+              c:identifier="GDK_DECOR_TITLE"
+              glib:nick="title"/>
+      <member name="menu"
+              value="16"
+              c:identifier="GDK_DECOR_MENU"
+              glib:nick="menu"/>
+      <member name="minimize"
+              value="32"
+              c:identifier="GDK_DECOR_MINIMIZE"
+              glib:nick="minimize"/>
+      <member name="maximize"
+              value="64"
+              c:identifier="GDK_DECOR_MAXIMIZE"
+              glib:nick="maximize"/>
+    </bitfield>
+    <bitfield name="WMFunction"
+              glib:type-name="GdkWMFunction"
+              glib:get-type="gdk_wm_function_get_type"
+              c:type="GdkWMFunction">
+      <member name="all"
+              value="1"
+              c:identifier="GDK_FUNC_ALL"
+              glib:nick="all"/>
+      <member name="resize"
+              value="2"
+              c:identifier="GDK_FUNC_RESIZE"
+              glib:nick="resize"/>
+      <member name="move"
+              value="4"
+              c:identifier="GDK_FUNC_MOVE"
+              glib:nick="move"/>
+      <member name="minimize"
+              value="8"
+              c:identifier="GDK_FUNC_MINIMIZE"
+              glib:nick="minimize"/>
+      <member name="maximize"
+              value="16"
+              c:identifier="GDK_FUNC_MAXIMIZE"
+              glib:nick="maximize"/>
+      <member name="close"
+              value="32"
+              c:identifier="GDK_FUNC_CLOSE"
+              glib:nick="close"/>
+    </bitfield>
+    <constant name="WWW" value="269025070">
+      <type name="int"/>
+    </constant>
+    <constant name="Wacute" value="16785026">
+      <type name="int"/>
+    </constant>
+    <constant name="WakeUp" value="269025067">
+      <type name="int"/>
+    </constant>
+    <constant name="Wcircumflex" value="16777588">
+      <type name="int"/>
+    </constant>
+    <constant name="Wdiaeresis" value="16785028">
+      <type name="int"/>
+    </constant>
+    <constant name="WebCam" value="269025167">
+      <type name="int"/>
+    </constant>
+    <constant name="Wgrave" value="16785024">
+      <type name="int"/>
+    </constant>
+    <constant name="WheelButton" value="269025160">
+      <type name="int"/>
+    </constant>
+    <class name="Window"
+           c:type="GdkWindow"
+           parent="Drawable"
+           glib:type-name="GdkWindow"
+           glib:get-type="gdk_window_object_get_type">
+      <constructor name="new"
+                   c:identifier="gdk_window_new"
+                   doc="Creates a new #GdkWindow using the attributes from
+display, @parent must be specified.">
+        <return-value transfer-ownership="none" doc="the new #GdkWindow">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="parent"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #GdkWindow, or %NULL to create the window as a child of the default root window for the default display.">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="attributes"
+                     transfer-ownership="none"
+                     doc="attributes of the new window">
+            <type name="WindowAttr" c:type="GdkWindowAttr*"/>
+          </parameter>
+          <parameter name="attributes_mask"
+                     transfer-ownership="none"
+                     doc="mask indicating which fields in @attributes are valid">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <function name="at_pointer"
+                c:identifier="gdk_window_at_pointer"
+                doc="Obtains the window underneath the mouse pointer, returning the
+location of that window in @win_x, @win_y. Returns %NULL if the
+window under the mouse pointer is not known to GDK (if the window
+belongs to another application and a #GdkWindow hasn&apos;t been created
+for it with gdk_window_foreign_new())
+gdk_display_get_window_at_pointer() instead.">
+        <return-value transfer-ownership="none"
+                      doc="window under the mouse pointer">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="win_x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for origin of the window under the pointer">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="win_y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for origin of the window under the pointer">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="foreign_new"
+                c:identifier="gdk_window_foreign_new"
+                doc="Wraps a native window for the default display in a #GdkWindow.
+This may fail if the window has been destroyed.
+For example in the X backend, a native window handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+native window or %NULL if the window has been destroyed.">
+        <return-value transfer-ownership="full"
+                      doc="the newly-created #GdkWindow wrapper for the">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native window handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="lookup"
+                c:identifier="gdk_window_lookup"
+                doc="Looks up the #GdkWindow that wraps the given native window handle. 
+For example in the X backend, a native window handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+or %NULL if there is none.">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkWindow wrapper for the native window,">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native window handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="foreign_new_for_display"
+                c:identifier="gdk_window_foreign_new_for_display"
+                doc="Wraps a native window in a #GdkWindow.
+This may fail if the window has been destroyed. If the window
+was already known to GDK, a new reference to the existing 
+#GdkWindow is returned.
+For example in the X backend, a native window handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+%NULL if the window has been destroyed. The wrapper will be
+newly created, if one doesn&apos;t exist already."
+                version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkWindow wrapper for the native window or">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the #GdkDisplay where the window handle comes from.">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native window handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="lookup_for_display"
+                c:identifier="gdk_window_lookup_for_display"
+                doc="Looks up the #GdkWindow that wraps the given native window handle.
+For example in the X backend, a native window handle is an Xlib
+&lt;type&gt;XID&lt;/type&gt;.
+or %NULL if there is none."
+                version="2.2">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkWindow wrapper for the native window,">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="display"
+                     transfer-ownership="none"
+                     doc="the #GdkDisplay corresponding to the window handle">
+            <type name="Display" c:type="GdkDisplay*"/>
+          </parameter>
+          <parameter name="anid"
+                     transfer-ownership="none"
+                     doc="a native window handle.">
+            <type name="NativeWindow" c:type="GdkNativeWindow"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_toplevels"
+                c:identifier="gdk_window_get_toplevels"
+                doc="Obtains a list of all toplevel windows known to GDK on the default
+screen (see gdk_screen_get_toplevel_windows()).
+A toplevel window is a child of the root window (see
+gdk_get_default_root_window()).
+The returned list should be freed with g_list_free(), but
+its elements need not be freed."
+                introspectable="0"
+                deprecated="Use gdk_screen_get_toplevel_windows() instead."
+                deprecated-version="2.16">
+        <return-value transfer-ownership="full"
+                      doc="list of toplevel windows, free with g_list_free()">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </function>
+      <function name="process_all_updates"
+                c:identifier="gdk_window_process_all_updates"
+                doc="Calls gdk_window_process_updates() for all windows (see #GdkWindow)
+in the application.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </function>
+      <function name="set_debug_updates"
+                c:identifier="gdk_window_set_debug_updates"
+                doc="With update debugging enabled, calls to
+gdk_window_invalidate_region() clear the invalidated region of the
+screen to a noticeable color, and GDK pauses for a short time
+before sending exposes to windows during
+gdk_window_process_updates().  The net effect is that you can see
+the invalid region for each window and watch redraws as they
+occur. This allows you to diagnose inefficiencies in your application.
+In essence, because the GDK rendering model prevents all flicker,
+if you are redrawing the same region 400 times you may never
+notice, aside from noticing a speed problem. Enabling update
+debugging causes GTK to flicker slowly and noticeably, so you can
+see exactly what&apos;s being redrawn when, in what order.
+The --gtk-debug=updates command line option passed to GTK+ programs
+enables this debug option at application startup time. That&apos;s
+usually more useful than calling gdk_window_set_debug_updates()
+yourself, though you might want to use this function to enable
+updates sometime after application startup time.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="setting"
+                     transfer-ownership="none"
+                     doc="%TRUE to turn on update debugging">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="constrain_size"
+                c:identifier="gdk_window_constrain_size"
+                doc="Constrains a desired width and height according to a
+set of geometry hints (such as minimum and maximum size).">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="geometry"
+                     transfer-ownership="none"
+                     doc="a #GdkGeometry structure">
+            <type name="Geometry" c:type="GdkGeometry*"/>
+          </parameter>
+          <parameter name="flags"
+                     transfer-ownership="none"
+                     doc="a mask indicating what portions of @geometry are set">
+            <type name="uint" c:type="guint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="desired width of window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="desired height of the window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="new_width"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store resulting width">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="new_height"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store resulting height">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <method name="destroy"
+              c:identifier="gdk_window_destroy"
+              doc="Destroys the window system resources associated with @window and decrements @window&apos;s
+reference count. The window system resources for all children of @window are also
+destroyed, but the children&apos;s reference counts are not decremented.
+Note that a window will not be destroyed automatically when its reference count
+reaches zero. You must call this function yourself before that happens.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_window_type"
+              c:identifier="gdk_window_get_window_type"
+              doc="Gets the type of the window. See #GdkWindowType.">
+        <return-value transfer-ownership="full" doc="type of window">
+          <type name="WindowType" c:type="GdkWindowType"/>
+        </return-value>
+      </method>
+      <method name="is_destroyed"
+              c:identifier="gdk_window_is_destroyed"
+              doc="Check to see if a window is destroyed.."
+              version="2.18">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the window is destroyed">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="show"
+              c:identifier="gdk_window_show"
+              doc="Like gdk_window_show_unraised(), but also raises the window to the
+top of the window stack (moves the window to the front of the
+Z-order).
+This function maps a window so it&apos;s visible onscreen. Its opposite
+is gdk_window_hide().
+When implementing a #GtkWidget, you should call this function on the widget&apos;s
+#GdkWindow as part of the &quot;map&quot; method.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="hide"
+              c:identifier="gdk_window_hide"
+              doc="For toplevel windows, withdraws them, so they will no longer be
+known to the window manager; for all windows, unmaps them, so
+they won&apos;t be displayed. Normally done automatically as
+part of gtk_widget_hide().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="withdraw"
+              c:identifier="gdk_window_withdraw"
+              doc="Withdraws a window (unmaps it and asks the window manager to forget about it).
+This function is not really useful as gdk_window_hide() automatically
+withdraws toplevel windows before hiding them.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="show_unraised"
+              c:identifier="gdk_window_show_unraised"
+              doc="Shows a #GdkWindow onscreen, but does not modify its stacking
+order. In contrast, gdk_window_show() will raise the window
+to the top of the window stack.
+On the X11 platform, in Xlib terms, this function calls
+XMapWindow() (it also updates some internal GDK state, which means
+that you can&apos;t really use XMapWindow() directly on a GDK window).">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="move"
+              c:identifier="gdk_window_move"
+              doc="Repositions a window relative to its parent window.
+For toplevel windows, window managers may ignore or modify the move;
+you should probably use gtk_window_move() on a #GtkWindow widget
+anyway, instead of using GDK functions. For child windows,
+the move will reliably succeed.
+If you&apos;re also planning to resize the window, use gdk_window_move_resize()
+to both move and resize simultaneously, for a nicer visual effect.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="X coordinate relative to window&apos;s parent">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="Y coordinate relative to window&apos;s parent">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="resize"
+              c:identifier="gdk_window_resize"
+              doc="Resizes @window; for toplevel windows, asks the window manager to resize
+the window. The window manager may not allow the resize. When using GTK+,
+use gtk_window_resize() instead of this low-level GDK function.
+Windows may not be resized below 1x1.
+If you&apos;re also planning to move the window, use gdk_window_move_resize()
+to both move and resize simultaneously, for a nicer visual effect.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="new width of the window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="new height of the window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="move_resize"
+              c:identifier="gdk_window_move_resize"
+              doc="Equivalent to calling gdk_window_move() and gdk_window_resize(),
+except that both operations are performed at once, avoiding strange
+visual effects. (i.e. the user may be able to see the window first
+move, then resize, if you don&apos;t use gdk_window_move_resize().)">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="new X position relative to window&apos;s parent">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="new Y position relative to window&apos;s parent">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width" transfer-ownership="none" doc="new width">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height" transfer-ownership="none" doc="new height">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="reparent"
+              c:identifier="gdk_window_reparent"
+              doc="Reparents @window into the given @new_parent. The window being
+reparented will be unmapped as a side effect.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="new_parent"
+                     transfer-ownership="none"
+                     doc="new parent to move @window into">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="X location inside the new parent">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="Y location inside the new parent">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="clear"
+              c:identifier="gdk_window_clear"
+              doc="Clears an entire @window to the background color or background pixmap.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="clear_area"
+              c:identifier="gdk_window_clear_area"
+              doc="Clears an area of @window to the background color or background pixmap.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="x coordinate of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="y coordinate of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="clear_area_e"
+              c:identifier="gdk_window_clear_area_e"
+              doc="Like gdk_window_clear_area(), but also generates an expose event for
+the cleared area.
+This function has a stupid name because it dates back to the mists
+time, pre-GDK-1.0.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="x coordinate of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="y coordinate of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height of rectangle to clear">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="raise"
+              c:identifier="gdk_window_raise"
+              doc="Raises @window to the top of the Z-order (stacking order), so that
+other windows with the same parent window appear below @window.
+This is true whether or not the windows are visible.
+If @window is a toplevel, the window manager may choose to deny the
+request to move the window in the Z-order, gdk_window_raise() only
+requests the restack, does not guarantee it.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="lower"
+              c:identifier="gdk_window_lower"
+              doc="Lowers @window to the bottom of the Z-order (stacking order), so that
+other windows with the same parent window appear above @window.
+This is true whether or not the other windows are visible.
+If @window is a toplevel, the window manager may choose to deny the
+request to move the window in the Z-order, gdk_window_lower() only
+requests the restack, does not guarantee it.
+Note that gdk_window_show() raises the window again, so don&apos;t call this
+function before gdk_window_show(). (Try gdk_window_show_unraised().)">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="restack"
+              c:identifier="gdk_window_restack"
+              doc="Changes the position of  @window in the Z-order (stacking order), so that
+it is above @sibling (if @above is %TRUE) or below @sibling (if @above is
+%FALSE).
+If @sibling is %NULL, then this either raises (if @above is %TRUE) or
+lowers the window.
+If @window is a toplevel, the window manager may choose to deny the
+request to move the window in the Z-order, gdk_window_restack() only
+requests the restack, does not guarantee it."
+              version="2.18">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="sibling"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #GdkWindow that is a sibling of @window, or %NULL">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="above" transfer-ownership="none" doc="a boolean">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="focus"
+              c:identifier="gdk_window_focus"
+              doc="Sets keyboard focus to @window. In most cases, gtk_window_present() 
+should be used on a #GtkWindow, rather than calling this function.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="timestamp"
+                     transfer-ownership="none"
+                     doc="timestamp of the event triggering the window focus">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_user_data"
+              c:identifier="gdk_window_set_user_data"
+              doc="For most purposes this function is deprecated in favor of
+g_object_set_data(). However, for historical reasons GTK+ stores
+the #GtkWidget that owns a #GdkWindow as user data on the
+#GdkWindow. So, custom widget implementations should use
+this function for that. If GTK+ receives an event for a #GdkWindow,
+and the user data for the window is non-%NULL, GTK+ will assume the
+user data is a #GtkWidget, and forward the event to that widget.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     doc="user data">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_override_redirect"
+              c:identifier="gdk_window_set_override_redirect"
+              doc="An override redirect window is not under the control of the window manager.
+This means it won&apos;t have a titlebar, won&apos;t be minimizable, etc. - it will
+be entirely under the control of the application. The window manager
+can&apos;t see the override redirect window at all.
+Override redirect should only be used for short-lived temporary
+windows, such as popup menus. #GtkMenu uses an override redirect
+window in its implementation, for example.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="override_redirect"
+                     transfer-ownership="none"
+                     doc="%TRUE if window should be override redirect">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_accept_focus"
+              c:identifier="gdk_window_get_accept_focus"
+              doc="Determines whether or not the desktop environment shuld be hinted that
+the window does not want to receive input focus."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="whether or not the window should receive input focus.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="set_accept_focus"
+              c:identifier="gdk_window_set_accept_focus"
+              doc="Setting @accept_focus to %FALSE hints the desktop environment that the
+window doesn&apos;t want to receive input focus. 
+On X, it is the responsibility of the window manager to interpret this 
+hint. ICCCM-compliant window manager usually respect it."
+              version="2.4 ">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="accept_focus"
+                     transfer-ownership="none"
+                     doc="%TRUE if the window should receive input focus">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_focus_on_map"
+              c:identifier="gdk_window_get_focus_on_map"
+              doc="Determines whether or not the desktop environment should be hinted that the
+window does not want to receive input focus when it is mapped.
+it is mapped."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="whether or not the window wants to receive input focus when">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="set_focus_on_map"
+              c:identifier="gdk_window_set_focus_on_map"
+              doc="Setting @focus_on_map to %FALSE hints the desktop environment that the
+window doesn&apos;t want to receive input focus when it is mapped.  
+focus_on_map should be turned off for windows that aren&apos;t triggered
+interactively (such as popups from network activity).
+On X, it is the responsibility of the window manager to interpret
+this hint. Window managers following the freedesktop.org window
+manager extension specification should respect it."
+              version="2.6 ">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="focus_on_map"
+                     transfer-ownership="none"
+                     doc="%TRUE if the window should receive input focus when mapped">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="add_filter"
+              c:identifier="gdk_window_add_filter"
+              doc="Adds an event filter to @window, allowing you to intercept events
+before they reach GDK. This is a low-level operation and makes it
+easy to break GDK and/or GTK+, so you have to know what you&apos;re
+doing. Pass %NULL for @window to get all events for all windows,
+instead of events for a specific window.
+See gdk_display_add_client_message_filter() if you are interested
+in X ClientMessage events.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="function"
+                     transfer-ownership="none"
+                     scope="call"
+                     closure="2"
+                     doc="filter callback">
+            <type name="FilterFunc" c:type="GdkFilterFunc"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="data to pass to filter callback">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="remove_filter"
+              c:identifier="gdk_window_remove_filter"
+              doc="Remove a filter previously added with gdk_window_add_filter().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="function"
+                     transfer-ownership="none"
+                     scope="call"
+                     closure="2"
+                     doc="previously-added filter function">
+            <type name="FilterFunc" c:type="GdkFilterFunc"/>
+          </parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="user data for previously-added filter function">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="scroll"
+              c:identifier="gdk_window_scroll"
+              doc="Scroll the contents of @window, both pixels and children, by the
+given amount. @window itself does not move. Portions of the window
+that the scroll operation brings in from offscreen areas are
+invalidated. The invalidated region may be bigger than what would
+strictly be necessary.
+For X11, a minimum area will be invalidated if the window has no
+subwindows, or if the edges of the window&apos;s parent do not extend
+beyond the edges of the window. In other cases, a multi-step process
+is used to scroll the window which may produce temporary visual
+artifacts and unnecessary invalidations.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="dx"
+                     transfer-ownership="none"
+                     doc="Amount to scroll in the X direction">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dy"
+                     transfer-ownership="none"
+                     doc="Amount to scroll in the Y direction">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="move_region"
+              c:identifier="gdk_window_move_region"
+              doc="Move the part of @window indicated by @region by @dy pixels in the Y
+direction and @dx pixels in the X direction. The portions of @region
+that not covered by the new position of @region are invalidated.
+Child windows are not moved."
+              version="2.8">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="region"
+                     transfer-ownership="none"
+                     doc="The #GdkRegion to move">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+          <parameter name="dx"
+                     transfer-ownership="none"
+                     doc="Amount to move in the X direction">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dy"
+                     transfer-ownership="none"
+                     doc="Amount to move in the Y direction">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="ensure_native"
+              c:identifier="gdk_window_ensure_native"
+              doc="Tries to ensure that there is a window-system native window for this
+GdkWindow. This may fail in some situations, returning %FALSE.
+Offscreen window and children of them can never have native windows.
+Some backends may not support native child windows."
+              version="2.18">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the window has a native window, %FALSE otherwise">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="shape_combine_mask"
+              c:identifier="gdk_window_shape_combine_mask"
+              doc="Applies a shape mask to @window. Pixels in @window corresponding to
+set bits in the @mask will be visible; pixels in @window
+corresponding to unset bits in the @mask will be transparent. This
+gives a non-rectangular window.
+If @mask is %NULL, the shape mask will be unset, and the @x/@y
+parameters are not used.
+On the X11 platform, this uses an X server extension which is
+widely available on most common platforms, but not available on
+very old X servers, and occasionally the implementation will be
+buggy. On servers without the shape extension, this function
+will do nothing.
+This function works on both toplevel and child windows.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mask" transfer-ownership="none" doc="shape mask">
+            <type name="Bitmap" c:type="GdkBitmap*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="X position of shape mask with respect to @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="Y position of shape mask with respect to @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="shape_combine_region"
+              c:identifier="gdk_window_shape_combine_region"
+              doc="Makes pixels in @window outside @shape_region be transparent,
+so that the window may be nonrectangular. See also
+gdk_window_shape_combine_mask() to use a bitmap as the mask.
+If @shape_region is %NULL, the shape will be unset, so the whole
+window will be opaque again. @offset_x and @offset_y are ignored
+if @shape_region is %NULL.
+On the X11 platform, this uses an X server extension which is
+widely available on most common platforms, but not available on
+very old X servers, and occasionally the implementation will be
+buggy. On servers without the shape extension, this function
+will do nothing.
+This function works on both toplevel and child windows.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="shape_region"
+                     transfer-ownership="none"
+                     doc="region of window to be non-transparent">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+          <parameter name="offset_x"
+                     transfer-ownership="none"
+                     doc="X position of @shape_region in @window coordinates">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="offset_y"
+                     transfer-ownership="none"
+                     doc="Y position of @shape_region in @window coordinates">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_child_shapes"
+              c:identifier="gdk_window_set_child_shapes"
+              doc="Sets the shape mask of @window to the union of shape masks
+for all children of @window, ignoring the shape mask of @window
+itself. Contrast with gdk_window_merge_child_shapes() which includes
+the shape mask of @window in the masks to be merged.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="get_composited"
+              c:identifier="gdk_window_get_composited"
+              doc="Determines whether @window is composited.
+See gdk_window_set_composited()."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the window is composited.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="set_composited"
+              c:identifier="gdk_window_set_composited"
+              doc="Sets a #GdkWindow as composited, or unsets it. Composited
+windows do not automatically have their contents drawn to
+the screen. Drawing is redirected to an offscreen buffer
+and an expose event is emitted on the parent of the composited
+window. It is the responsibility of the parent&apos;s expose handler
+to manually merge the off-screen content onto the screen in
+whatever way it sees fit. See &lt;xref linkend=&quot;composited-window-example&quot;/&gt;
+for an example.
+It only makes sense for child windows to be composited; see
+gdk_window_set_opacity() if you need translucent toplevel
+windows.
+An additional effect of this call is that the area of this
+window is no longer clipped from regions marked for
+invalidation on its parent. Draws done on the parent
+window are also no longer clipped by the child.
+This call is only supported on some systems (currently,
+only X11 with new enough Xcomposite and Xdamage extensions).
+You must call gdk_display_supports_composite() to check if
+setting a window as composited is supported before
+attempting to do so."
+              version="2.12">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="composited"
+                     transfer-ownership="none"
+                     doc="%TRUE to set the window as composited">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="merge_child_shapes"
+              c:identifier="gdk_window_merge_child_shapes"
+              doc="Merges the shape masks for any child windows into the
+shape mask for @window. i.e. the union of all masks
+for @window and its children will become the new mask
+for @window. See gdk_window_shape_combine_mask().
+This function is distinct from gdk_window_set_child_shapes()
+because it includes @window&apos;s shape mask in the set of shapes to
+be merged.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="input_shape_combine_mask"
+              c:identifier="gdk_window_input_shape_combine_mask"
+              doc="Like gdk_window_shape_combine_mask(), but the shape applies
+only to event handling. Mouse events which happen while
+the pointer position corresponds to an unset bit in the
+mask will be passed on the window below @window.
+An input shape is typically used with RGBA windows.
+The alpha channel of the window defines which pixels are
+invisible and allows for nicely antialiased borders,
+and the input shape controls where the window is
+&quot;clickable&quot;.
+On the X11 platform, this requires version 1.1 of the
+shape extension.
+On the Win32 platform, this functionality is not present and the
+function does nothing."
+              version="2.10">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="shape mask, or %NULL">
+            <type name="Bitmap" c:type="GdkBitmap*"/>
+          </parameter>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="X position of shape mask with respect to @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="Y position of shape mask with respect to @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="input_shape_combine_region"
+              c:identifier="gdk_window_input_shape_combine_region"
+              doc="Like gdk_window_shape_combine_region(), but the shape applies
+only to event handling. Mouse events which happen while
+the pointer position corresponds to an unset bit in the
+mask will be passed on the window below @window.
+An input shape is typically used with RGBA windows.
+The alpha channel of the window defines which pixels are
+invisible and allows for nicely antialiased borders,
+and the input shape controls where the window is
+&quot;clickable&quot;.
+On the X11 platform, this requires version 1.1 of the
+shape extension.
+On the Win32 platform, this functionality is not present and the
+function does nothing."
+              version="2.10">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="shape_region"
+                     transfer-ownership="none"
+                     doc="region of window to be non-transparent">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+          <parameter name="offset_x"
+                     transfer-ownership="none"
+                     doc="X position of @shape_region in @window coordinates">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="offset_y"
+                     transfer-ownership="none"
+                     doc="Y position of @shape_region in @window coordinates">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_child_input_shapes"
+              c:identifier="gdk_window_set_child_input_shapes"
+              doc="Sets the input shape mask of @window to the union of input shape masks
+for all children of @window, ignoring the input shape mask of @window
+itself. Contrast with gdk_window_merge_child_input_shapes() which includes
+the input shape mask of @window in the masks to be merged."
+              version="2.10">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="merge_child_input_shapes"
+              c:identifier="gdk_window_merge_child_input_shapes"
+              doc="Merges the input shape masks for any child windows into the
+input shape mask for @window. i.e. the union of all input masks
+for @window and its children will become the new input mask
+for @window. See gdk_window_input_shape_combine_mask().
+This function is distinct from gdk_window_set_child_input_shapes()
+because it includes @window&apos;s input shape mask in the set of
+shapes to be merged."
+              version="2.10">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="is_visible"
+              c:identifier="gdk_window_is_visible"
+              doc="Checks whether the window has been mapped (with gdk_window_show() or
+gdk_window_show_unraised()).">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the window is mapped">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="is_viewable"
+              c:identifier="gdk_window_is_viewable"
+              doc="Check if the window and all ancestors of the window are
+mapped. (This is not necessarily &quot;viewable&quot; in the X sense, since
+we only check as far as we have GDK window parents, not to the root
+window.)">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the window is viewable">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="is_input_only"
+              c:identifier="gdk_window_is_input_only"
+              doc="Determines whether or not the window is an input only window."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if @window is input only">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="is_shaped"
+              c:identifier="gdk_window_is_shaped"
+              doc="Determines whether or not the window is shaped."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if @window is shaped">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="get_state"
+              c:identifier="gdk_window_get_state"
+              doc="Gets the bitwise OR of the currently active window state flags,
+from the #GdkWindowState enumeration.">
+        <return-value transfer-ownership="full" doc="window state bitfield">
+          <type name="WindowState" c:type="GdkWindowState"/>
+        </return-value>
+      </method>
+      <method name="set_static_gravities"
+              c:identifier="gdk_window_set_static_gravities"
+              doc="Set the bit gravity of the given window to static, and flag it so
+all children get static subwindow gravity. This is used if you are
+implementing scary features that involve deep knowledge of the
+windowing system. Don&apos;t worry about it unless you have to.">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the server supports static gravity">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="use_static"
+                     transfer-ownership="none"
+                     doc="%TRUE to turn on static gravity">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="has_native"
+              c:identifier="gdk_window_has_native"
+              doc="Checks whether the window has a native window or not. Note that
+you can use gdk_window_ensure_native() if a native window is needed."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="%TRUE if the %window has a native window, %FALSE otherwise.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="set_hints"
+              c:identifier="gdk_window_set_hints"
+              doc="This function is broken and useless and you should ignore it.
+If using GTK+, use functions such as gtk_window_resize(), gtk_window_set_size_request(),
+gtk_window_move(), gtk_window_parse_geometry(), and gtk_window_set_geometry_hints(),
+depending on what you&apos;re trying to do.
+If using GDK directly, use gdk_window_set_geometry_hints().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="ignored field, does not matter">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="ignored field, does not matter">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="min_width"
+                     transfer-ownership="none"
+                     doc="minimum width hint">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="min_height"
+                     transfer-ownership="none"
+                     doc="minimum height hint">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="max_width"
+                     transfer-ownership="none"
+                     doc="max width hint">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="max_height"
+                     transfer-ownership="none"
+                     doc="max height hint">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="flags"
+                     transfer-ownership="none"
+                     doc="logical OR of GDK_HINT_POS, GDK_HINT_MIN_SIZE, and/or GDK_HINT_MAX_SIZE">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_type_hint"
+              c:identifier="gdk_window_set_type_hint"
+              doc="The application can use this call to provide a hint to the window
+manager about the functionality of a window. The window manager
+can use this information when determining the decoration and behaviour
+of the window.
+The hint must be set before the window is mapped.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="hint"
+                     transfer-ownership="none"
+                     doc="A hint of the function this window will have">
+            <type name="WindowTypeHint" c:type="GdkWindowTypeHint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_type_hint"
+              c:identifier="gdk_window_get_type_hint"
+              doc="This function returns the type hint set for a window."
+              version="2.10">
+        <return-value transfer-ownership="full"
+                      doc="The type hint set for @window">
+          <type name="WindowTypeHint" c:type="GdkWindowTypeHint"/>
+        </return-value>
+      </method>
+      <method name="get_modal_hint"
+              c:identifier="gdk_window_get_modal_hint"
+              doc="Determines whether or not the window manager is hinted that @window
+has modal behaviour."
+              version="2.22">
+        <return-value transfer-ownership="none"
+                      doc="whether or not the window has the modal hint set.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+      </method>
+      <method name="set_modal_hint"
+              c:identifier="gdk_window_set_modal_hint"
+              doc="The application can use this hint to tell the window manager
+that a certain window has modal behaviour. The window manager
+can use this information to handle modal windows in a special
+way.
+You should only use this on windows for which you have
+previously called gdk_window_set_transient_for()">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="modal"
+                     transfer-ownership="none"
+                     doc="%TRUE if the window is modal, %FALSE otherwise.">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_skip_taskbar_hint"
+              c:identifier="gdk_window_set_skip_taskbar_hint"
+              doc="Toggles whether a window should appear in a task list or window
+list. If a window&apos;s semantic type as specified with
+gdk_window_set_type_hint() already fully describes the window, this
+function should &lt;emphasis&gt;not&lt;/emphasis&gt; be called in addition, 
+instead you should allow the window to be treated according to 
+standard policy for its semantic type."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="skips_taskbar"
+                     transfer-ownership="none"
+                     doc="%TRUE to skip the taskbar">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_skip_pager_hint"
+              c:identifier="gdk_window_set_skip_pager_hint"
+              doc="Toggles whether a window should appear in a pager (workspace
+switcher, or other desktop utility program that displays a small
+thumbnail representation of the windows on the desktop). If a
+window&apos;s semantic type as specified with gdk_window_set_type_hint()
+already fully describes the window, this function should 
+&lt;emphasis&gt;not&lt;/emphasis&gt; be called in addition, instead you should 
+allow the window to be treated according to standard policy for 
+its semantic type."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="skips_pager"
+                     transfer-ownership="none"
+                     doc="%TRUE to skip the pager">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_urgency_hint"
+              c:identifier="gdk_window_set_urgency_hint"
+              doc="Toggles whether a window needs the user&apos;s
+urgent attention."
+              version="2.8">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="urgent"
+                     transfer-ownership="none"
+                     doc="%TRUE if the window is urgent">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_geometry_hints"
+              c:identifier="gdk_window_set_geometry_hints"
+              doc="Sets the geometry hints for @window. Hints flagged in @geom_mask
+are set, hints not flagged in @geom_mask are unset.
+To unset all hints, use a @geom_mask of 0 and a @geometry of %NULL.
+This function provides hints to the windowing system about
+acceptable sizes for a toplevel window. The purpose of 
+this is to constrain user resizing, but the windowing system
+will typically  (but is not required to) also constrain the
+current size of the window to the provided values and
+constrain programatic resizing via gdk_window_resize() or
+gdk_window_move_resize().
+Note that on X11, this effect has no effect on windows
+of type %GDK_WINDOW_TEMP or windows where override redirect
+has been turned on via gdk_window_set_override_redirect()
+since these windows are not resizable by the user.
+Since you can&apos;t count on the windowing system doing the
+constraints for programmatic resizes, you should generally
+call gdk_window_constrain_size() yourself to determine
+appropriate sizes.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="geometry"
+                     transfer-ownership="none"
+                     doc="geometry hints">
+            <type name="Geometry" c:type="GdkGeometry*"/>
+          </parameter>
+          <parameter name="geom_mask"
+                     transfer-ownership="none"
+                     doc="bitmask indicating fields of @geometry to pay attention to">
+            <type name="WindowHints" c:type="GdkWindowHints"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="begin_paint_rect"
+              c:identifier="gdk_window_begin_paint_rect"
+              doc="A convenience wrapper around gdk_window_begin_paint_region() which
+creates a rectangular region for you. See
+gdk_window_begin_paint_region() for details.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rectangle"
+                     transfer-ownership="none"
+                     doc="rectangle you intend to draw to">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="begin_paint_region"
+              c:identifier="gdk_window_begin_paint_region"
+              doc="Indicates that you are beginning the process of redrawing @region.
+A backing store (offscreen buffer) large enough to contain @region
+will be created. The backing store will be initialized with the
+background color or background pixmap for @window. Then, all
+drawing operations performed on @window will be diverted to the
+backing store.  When you call gdk_window_end_paint(), the backing
+store will be copied to @window, making it visible onscreen. Only
+the part of @window contained in @region will be modified; that is,
+drawing operations are clipped to @region.
+The net result of all this is to remove flicker, because the user
+sees the finished product appear all at once when you call
+gdk_window_end_paint(). If you draw to @window directly without
+calling gdk_window_begin_paint_region(), the user may see flicker
+as individual drawing operations are performed in sequence.  The
+clipping and background-initializing features of
+gdk_window_begin_paint_region() are conveniences for the
+programmer, so you can avoid doing that work yourself.
+When using GTK+, the widget system automatically places calls to
+gdk_window_begin_paint_region() and gdk_window_end_paint() around
+emissions of the expose_event signal. That is, if you&apos;re writing an
+expose event handler, you can assume that the exposed area in
+#GdkEventExpose has already been cleared to the window background,
+is already set as the clip region, and already has a backing store.
+Therefore in most cases, application code need not call
+gdk_window_begin_paint_region(). (You can disable the automatic
+calls around expose events on a widget-by-widget basis by calling
+gtk_widget_set_double_buffered().)
+If you call this function multiple times before calling the
+matching gdk_window_end_paint(), the backing stores are pushed onto
+a stack. gdk_window_end_paint() copies the topmost backing store
+onscreen, subtracts the topmost region from all other regions in
+the stack, and pops the stack. All drawing operations affect only
+the topmost backing store in the stack. One matching call to
+gdk_window_end_paint() is required for each call to
+gdk_window_begin_paint_region().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="region"
+                     transfer-ownership="none"
+                     doc="region you intend to draw to">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="end_paint"
+              c:identifier="gdk_window_end_paint"
+              doc="Indicates that the backing store created by the most recent call to
+gdk_window_begin_paint_region() should be copied onscreen and
+deleted, leaving the next-most-recent backing store or no backing
+store at all as the active paint region. See
+gdk_window_begin_paint_region() for full details. It is an error to
+call this function without a matching
+gdk_window_begin_paint_region() first.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="flush"
+              c:identifier="gdk_window_flush"
+              doc="Flush all outstanding cached operations on a window, leaving the
+window in a state which reflects all that has been drawn before.
+Gdk uses multiple kinds of caching to get better performance and
+nicer drawing. For instance, during exposes all paints to a window
+using double buffered rendering are keep on a pixmap until the last
+window has been exposed. It also delays window moves/scrolls until
+as long as possible until next update to avoid tearing when moving
+windows.
+Normally this should be completely invisible to applications, as
+we automatically flush the windows when required, but this might
+be needed if you for instance mix direct native drawing with
+gdk drawing. For Gtk widgets that don&apos;t use double buffering this
+will be called automatically before sending the expose event."
+              version="2.18">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="set_title"
+              c:identifier="gdk_window_set_title"
+              doc="Sets the title of a toplevel window, to be displayed in the titlebar.
+If you haven&apos;t explicitly set the icon name for the window
+(using gdk_window_set_icon_name()), the icon name will be set to
+user-readable strings in GDK/GTK+). @title may not be %NULL.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="title"
+                     transfer-ownership="none"
+                     doc="title of @window">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_role"
+              c:identifier="gdk_window_set_role"
+              doc="When using GTK+, typically you should use gtk_window_set_role() instead
+of this low-level function.
+The window manager and session manager use a window&apos;s role to
+distinguish it from other kinds of window in the same application.
+When an application is restarted after being saved in a previous
+session, all windows with the same title and role are treated as
+interchangeable.  So if you have two windows with the same title
+that should be distinguished for session management purposes, you
+should set the role on those windows. It doesn&apos;t matter what string
+you use for the role, as long as you have a different role for each
+non-interchangeable kind of window.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="role"
+                     transfer-ownership="none"
+                     doc="a string indicating its role">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_startup_id"
+              c:identifier="gdk_window_set_startup_id"
+              doc="When using GTK+, typically you should use gtk_window_set_startup_id()
+instead of this low-level function."
+              version="2.12">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="startup_id"
+                     transfer-ownership="none"
+                     doc="a string with startup-notification identifier">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_transient_for"
+              c:identifier="gdk_window_set_transient_for"
+              doc="Indicates to the window manager that @window is a transient dialog
+associated with the application window @parent. This allows the
+window manager to do things like center @window on @parent and
+keep @window above @parent.
+See gtk_window_set_transient_for() if you&apos;re using #GtkWindow or
+#GtkDialog.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="parent"
+                     transfer-ownership="none"
+                     doc="another toplevel #GdkWindow">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_background"
+              c:identifier="gdk_window_get_background"
+              doc="Sets @color to equal the current background color of @window."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none"
+                     doc="a #GdkColor to be filled in">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_background"
+              c:identifier="gdk_window_set_background"
+              doc="Sets the background color of @window. (However, when using GTK+,
+set the background of a widget with gtk_widget_modify_bg() - if
+you&apos;re an application - or gtk_style_set_background() - if you&apos;re
+implementing a custom widget.)
+The @color must be allocated; gdk_rgb_find_color() is the best way
+to allocate a color.
+See also gdk_window_set_background_pixmap().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="color"
+                     transfer-ownership="none"
+                     doc="an allocated #GdkColor">
+            <type name="Color" c:type="GdkColor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_back_pixmap"
+              c:identifier="gdk_window_get_back_pixmap"
+              doc="Sets @pixmap to the current background pixmap of @window.  You do not
+own the pointer that is returned and this pointer should not be freeed
+or unreferenced.  Sets @parent_relative to %TRUE if the tiling is done
+based on the origin of the parent window."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="pixmap"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="a #GdkPixmap to be filled in, or %NULL.">
+            <type name="Pixmap" c:type="GdkPixmap**"/>
+          </parameter>
+          <parameter name="parent_relative"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="a pointer to a #gboolean to be filled in, or %NULL.">
+            <type name="boolean" c:type="gboolean*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_back_pixmap"
+              c:identifier="gdk_window_set_back_pixmap"
+              doc="Sets the background pixmap of @window. May also be used to set a
+background of &quot;None&quot; on @window, by setting a background pixmap
+of %NULL.
+A background pixmap will be tiled, positioning the first tile at
+the origin of @window, or if @parent_relative is %TRUE, the tiling
+will be done based on the origin of the parent window (useful to
+align tiles in a parent with tiles in a child).
+A background pixmap of %NULL means that the window will have no
+background.  A window with no background will never have its
+background filled by the windowing system, instead the window will
+contain whatever pixels were already in the corresponding area of
+the display.
+The windowing system will normally fill a window with its background
+when the window is obscured then exposed, and when you call
+gdk_window_clear().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="pixmap"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a #GdkPixmap, or %NULL">
+            <type name="Pixmap" c:type="GdkPixmap*"/>
+          </parameter>
+          <parameter name="parent_relative"
+                     transfer-ownership="none"
+                     doc="whether the tiling origin is at the origin of">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_cursor"
+              c:identifier="gdk_window_set_cursor"
+              doc="Sets the mouse pointer for a #GdkWindow. Use gdk_cursor_new_for_display()
+or gdk_cursor_new_from_pixmap() to create the cursor. To make the cursor
+invisible, use %GDK_BLANK_CURSOR. Passing %NULL for the @cursor argument
+to gdk_window_set_cursor() means that @window will use the cursor of its
+parent window. Most windows should use this default.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="cursor"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="a cursor">
+            <type name="Cursor" c:type="GdkCursor*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_cursor"
+              c:identifier="gdk_window_get_cursor"
+              doc="Retrieves a #GdkCursor pointer for the cursor currently set on the
+specified #GdkWindow, or %NULL.  If the return value is %NULL then
+there is no custom cursor set on the specified window, and it is
+using the cursor for its parent window.
+by the #GdkWindow and should not be unreferenced directly. Use
+gdk_window_set_cursor() to unset the cursor of the window"
+              version="2.18">
+        <return-value transfer-ownership="full"
+                      doc="a #GdkCursor, or %NULL. The returned object is owned">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </return-value>
+      </method>
+      <method name="get_user_data"
+              c:identifier="gdk_window_get_user_data"
+              doc="Retrieves the user data for @window, which is normally the widget
+that @window belongs to. See gdk_window_set_user_data().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     doc="return location for user data">
+            <type name="any" c:type="gpointer*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_geometry"
+              c:identifier="gdk_window_get_geometry"
+              doc="Any of the return location arguments to this function may be %NULL,
+if you aren&apos;t interested in getting the value of that field.
+The X and Y coordinates returned are relative to the parent window
+of @window, which for toplevels usually means relative to the
+window decorations (titlebar, etc.) rather than relative to the
+root window (screen-size background window).
+On the X11 platform, the geometry is obtained from the X server,
+so reflects the latest position of @window; this may be out-of-sync
+with the position of @window delivered in the most-recently-processed
+#GdkEventConfigure. gdk_window_get_position() in contrast gets the
+position from the most recent configure event.
+&lt;note&gt;
+If @window is not a toplevel, it is &lt;emphasis&gt;much&lt;/emphasis&gt; better
+to call gdk_window_get_position() and gdk_drawable_get_size() instead,
+because it avoids the roundtrip to the X server and because
+gdk_drawable_get_size() supports the full 32-bit coordinate space,
+whereas gdk_window_get_geometry() is restricted to the 16-bit
+coordinates of X11.
+&lt;/note&gt;">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for X coordinate of window (relative to its parent)">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for Y coordinate of window (relative to its parent)">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="width"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for width of window">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="height"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for height of window">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="depth"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for bit depth of window">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_position"
+              c:identifier="gdk_window_get_position"
+              doc="Obtains the position of the window as reported in the
+most-recently-processed #GdkEventConfigure. Contrast with
+gdk_window_get_geometry() which queries the X server for the
+current window position, regardless of which events have been
+received or processed.
+The position coordinates are relative to the window&apos;s parent window.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="X coordinate of window">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="Y coordinate of window">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_origin"
+              c:identifier="gdk_window_get_origin"
+              doc="Obtains the position of a window in root window coordinates.
+(Compare with gdk_window_get_position() and
+gdk_window_get_geometry() which return the position of a window
+relative to its parent window.)">
+        <return-value transfer-ownership="none" doc="not meaningful, ignore">
+          <type name="int" c:type="gint"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for X coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for Y coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_root_coords"
+              c:identifier="gdk_window_get_root_coords"
+              doc="Obtains the position of a window position in root
+window coordinates. This is similar to
+gdk_window_get_origin() but allows you go pass
+in any position in the window, not just the origin."
+              version="2.18">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="X coordinate in window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="Y coordinate in window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="root_x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for X coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="root_y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for Y coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="coords_to_parent"
+              c:identifier="gdk_window_coords_to_parent"
+              doc="Transforms window coordinates from a child window to its parent
+window, where the parent window is the normal parent as returned by
+gdk_window_get_parent() for normal windows, and the window&apos;s
+embedder as returned by gdk_offscreen_window_get_embedder() for
+offscreen windows.
+For normal windows, calling this function is equivalent to adding
+the return values of gdk_window_get_position() to the child coordinates.
+For offscreen windows however (which can be arbitrarily transformed),
+the coordinates.
+You should always use this function when writing generic code that
+walks up a window hierarchy."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="X coordinate in child&apos;s coordinate system">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="Y coordinate in child&apos;s coordinate system">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="parent_x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for X coordinate in parent&apos;s coordinate system, or %NULL">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="parent_y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for Y coordinate in parent&apos;s coordinate system, or %NULL">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="coords_from_parent"
+              c:identifier="gdk_window_coords_from_parent"
+              doc="Transforms window coordinates from a parent window to a child
+window, where the parent window is the normal parent as returned by
+gdk_window_get_parent() for normal windows, and the window&apos;s
+embedder as returned by gdk_offscreen_window_get_embedder() for
+offscreen windows.
+For normal windows, calling this function is equivalent to subtracting
+the return values of gdk_window_get_position() from the parent coordinates.
+For offscreen windows however (which can be arbitrarily transformed),
+the coordinates.
+You should always use this function when writing generic code that
+walks down a window hierarchy."
+              version="2.22">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="parent_x"
+                     transfer-ownership="none"
+                     doc="X coordinate in parent&apos;s coordinate system">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="parent_y"
+                     transfer-ownership="none"
+                     doc="Y coordinate in parent&apos;s coordinate system">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for X coordinate in child&apos;s coordinate system">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for Y coordinate in child&apos;s coordinate system">
+            <type name="double" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_deskrelative_origin"
+              c:identifier="gdk_window_get_deskrelative_origin"
+              doc="This gets the origin of a #GdkWindow relative to
+an Enlightenment-window-manager desktop. As long as you don&apos;t
+assume that the user&apos;s desktop/workspace covers the entire
+root window (i.e. you don&apos;t assume that the desktop begins
+at root window coordinate 0,0) this function is not necessary.
+It&apos;s deprecated for that reason.">
+        <return-value transfer-ownership="none" doc="not meaningful">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for X coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for Y coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_root_origin"
+              c:identifier="gdk_window_get_root_origin"
+              doc="Obtains the top-left corner of the window manager frame in root
+window coordinates.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for X position of window frame">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="return location for Y position of window frame">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_frame_extents"
+              c:identifier="gdk_window_get_frame_extents"
+              doc="Obtains the bounding box of the window, including window manager
+titlebar/borders if any. The frame position is given in root window
+coordinates. To get the position of the window itself (rather than
+the frame) in root window coordinates, use gdk_window_get_origin().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rect"
+                     transfer-ownership="none"
+                     doc="rectangle to fill with bounding box of the window frame">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_pointer"
+              c:identifier="gdk_window_get_pointer"
+              doc="Obtains the current pointer position and modifier state.
+The position is given in coordinates relative to the upper left
+corner of @window.
+gdk_window_at_pointer()), or %NULL if the window containing the
+pointer isn&apos;t known to GDK">
+        <return-value transfer-ownership="none"
+                      doc="the window containing the pointer (as with">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for X coordinate of pointer or %NULL to not return the X coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     allow-none="1"
+                     doc="return location for Y coordinate of pointer or %NULL to not return the Y coordinate">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="mask"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="return location for modifier mask or %NULL to not return the modifier mask">
+            <type name="ModifierType" c:type="GdkModifierType*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_parent"
+              c:identifier="gdk_window_get_parent"
+              doc="Obtains the parent of @window, as known to GDK. Does not query the
+X server; thus this returns the parent as passed to gdk_window_new(),
+not the actual parent. This should never matter unless you&apos;re using
+Xlib calls mixed with GDK calls on the X11 platform. It may also
+matter for toplevel windows, because the window manager may choose
+to reparent them.
+Note that you should use gdk_window_get_effective_parent() when
+writing generic code that walks up a window hierarchy, because
+gdk_window_get_parent() will most likely not do what you expect if
+there are offscreen windows in the hierarchy.">
+        <return-value transfer-ownership="full" doc="parent of @window">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="get_toplevel"
+              c:identifier="gdk_window_get_toplevel"
+              doc="Gets the toplevel window that&apos;s an ancestor of @window.
+Any window type but %GDK_WINDOW_CHILD is considered a
+toplevel window, as is a %GDK_WINDOW_CHILD window that
+has a root window as parent.
+Note that you should use gdk_window_get_effective_toplevel() when
+you want to get to a window&apos;s toplevel as seen on screen, because
+gdk_window_get_toplevel() will most likely not do what you expect
+if there are offscreen windows in the hierarchy.">
+        <return-value transfer-ownership="full"
+                      doc="the toplevel window containing @window">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="get_effective_parent"
+              c:identifier="gdk_window_get_effective_parent"
+              doc="Obtains the parent of @window, as known to GDK. Works like
+gdk_window_get_parent() for normal windows, but returns the
+window&apos;s embedder for offscreen windows."
+              version="2.22">
+        <return-value transfer-ownership="full"
+                      doc="effective parent of @window">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="get_effective_toplevel"
+              c:identifier="gdk_window_get_effective_toplevel"
+              doc="Gets the toplevel window that&apos;s an ancestor of @window.
+Works like gdk_window_get_toplevel(), but treats an offscreen window&apos;s
+embedder as its parent, using gdk_window_get_effective_parent()."
+              version="2.22">
+        <return-value transfer-ownership="full"
+                      doc="the effective toplevel window containing @window">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="get_children"
+              c:identifier="gdk_window_get_children"
+              doc="Gets the list of children of @window known to GDK.
+This function only returns children created via GDK,
+so for example it&apos;s useless when used with the root window;
+it only returns windows an application created itself.
+The returned list must be freed, but the elements in the
+list need not be."
+              introspectable="0">
+        <return-value transfer-ownership="full"
+                      doc="list of child windows inside @window">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <method name="peek_children"
+              c:identifier="gdk_window_peek_children"
+              doc="Like gdk_window_get_children(), but does not copy the list of
+children, so the list does not need to be freed."
+              introspectable="0">
+        <return-value transfer-ownership="full"
+                      doc="a reference to the list of child windows in @window">
+          <type name="GLib.List" c:type="GList*"/>
+        </return-value>
+      </method>
+      <method name="get_events"
+              c:identifier="gdk_window_get_events"
+              doc="Gets the event mask for @window. See gdk_window_set_events().">
+        <return-value transfer-ownership="full" doc="event mask for @window">
+          <type name="EventMask" c:type="GdkEventMask"/>
+        </return-value>
+      </method>
+      <method name="set_events"
+              c:identifier="gdk_window_set_events"
+              doc="The event mask for a window determines which events will be reported
+for that window. For example, an event mask including #GDK_BUTTON_PRESS_MASK
+means the window should report button press events. The event mask
+is the bitwise OR of values from the #GdkEventMask enumeration.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="event_mask"
+                     transfer-ownership="none"
+                     doc="event mask for @window">
+            <type name="EventMask" c:type="GdkEventMask"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_icon_list"
+              c:identifier="gdk_window_set_icon_list"
+              doc="Sets a list of icons for the window. One of these will be used
+to represent the window when it has been iconified. The icon is
+usually shown in an icon box or some sort of task bar. Which icon
+size is shown depends on the window manager. The window manager
+can scale the icon  but setting several size icons can give better
+image quality since the window manager may only need to scale the
+icon by a small amount or not at all."
+              introspectable="0">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="pixbufs"
+                     transfer-ownership="none"
+                     doc="A list of pixbufs, of different sizes.">
+            <type name="GLib.List" c:type="GList*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_icon"
+              c:identifier="gdk_window_set_icon"
+              doc="Sets the icon of @window as a pixmap or window. If using GTK+, investigate
+gtk_window_set_default_icon_list() first, and then gtk_window_set_icon_list()
+and gtk_window_set_icon(). If those don&apos;t meet your needs, look at
+gdk_window_set_icon_list(). Only if all those are too high-level do you
+want to fall back to gdk_window_set_icon().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="icon_window"
+                     transfer-ownership="none"
+                     doc="a #GdkWindow to use for the icon, or %NULL to unset">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+          <parameter name="pixmap"
+                     transfer-ownership="none"
+                     doc="a #GdkPixmap to use as the icon, or %NULL to unset">
+            <type name="Pixmap" c:type="GdkPixmap*"/>
+          </parameter>
+          <parameter name="mask"
+                     transfer-ownership="none"
+                     doc="a 1-bit pixmap (#GdkBitmap) to use as mask for @pixmap, or %NULL to have none">
+            <type name="Bitmap" c:type="GdkBitmap*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_icon_name"
+              c:identifier="gdk_window_set_icon_name"
+              doc="Windows may have a name used while minimized, distinct from the
+name they display in their titlebar. Most of the time this is a bad
+idea from a user interface standpoint. But you can set such a name
+with this function, if you like.
+After calling this with a non-%NULL @name, calls to gdk_window_set_title()
+will not update the icon title.
+Using %NULL for @name unsets the icon title; further calls to
+gdk_window_set_title() will again update the icon title as well.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="name"
+                     transfer-ownership="none"
+                     doc="name of window while iconified (minimized)">
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_group"
+              c:identifier="gdk_window_set_group"
+              doc="Sets the group leader window for @window. By default,
+GDK sets the group leader for all toplevel windows
+to a global window implicitly created by GDK. With this function
+you can override this default.
+The group leader window allows the window manager to distinguish
+all windows that belong to a single application. It may for example
+allow users to minimize/unminimize all windows belonging to an
+application at once. You should only set a non-default group window
+if your application pretends to be multiple applications.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="leader"
+                     transfer-ownership="none"
+                     doc="group leader window, or %NULL to restore the default group leader window">
+            <type name="Window" c:type="GdkWindow*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_group"
+              c:identifier="gdk_window_get_group"
+              doc="Returns the group leader window for @window. See gdk_window_set_group()."
+              version="2.4">
+        <return-value transfer-ownership="full"
+                      doc="the group leader window for @window">
+          <type name="Window" c:type="GdkWindow*"/>
+        </return-value>
+      </method>
+      <method name="set_decorations"
+              c:identifier="gdk_window_set_decorations"
+              doc="&quot;Decorations&quot; are the features the window manager adds to a toplevel #GdkWindow.
+This function sets the traditional Motif window manager hints that tell the
+window manager which decorations you would like your window to have.
+Usually you should use gtk_window_set_decorated() on a #GtkWindow instead of
+using the GDK function directly.
+The @decorations argument is the logical OR of the fields in
+the #GdkWMDecoration enumeration. If #GDK_DECOR_ALL is included in the
+mask, the other bits indicate which decorations should be turned off.
+If #GDK_DECOR_ALL is not included, then the other bits indicate
+which decorations should be turned on.
+Most window managers honor a decorations hint of 0 to disable all decorations,
+but very few honor all possible combinations of bits.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="decorations"
+                     transfer-ownership="none"
+                     doc="decoration hint mask">
+            <type name="WMDecoration" c:type="GdkWMDecoration"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_decorations"
+              c:identifier="gdk_window_get_decorations"
+              doc="Returns the decorations set on the GdkWindow with #gdk_window_set_decorations">
+        <return-value transfer-ownership="none"
+                      doc="TRUE if the window has decorations set, FALSE otherwise.">
+          <type name="boolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="decorations"
+                     transfer-ownership="none"
+                     doc="The window decorations will be written here">
+            <type name="WMDecoration" c:type="GdkWMDecoration*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_functions"
+              c:identifier="gdk_window_set_functions"
+              doc="Sets hints about the window management functions to make available
+via buttons on the window frame.
+On the X backend, this function sets the traditional Motif window 
+manager hint for this purpose. However, few window managers do
+anything reliable or interesting with this hint. Many ignore it
+entirely.
+The @functions argument is the logical OR of values from the
+#GdkWMFunction enumeration. If the bitmask includes #GDK_FUNC_ALL,
+then the other bits indicate which functions to disable; if
+it doesn&apos;t include #GDK_FUNC_ALL, it indicates which functions to
+enable.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="functions"
+                     transfer-ownership="none"
+                     doc="bitmask of operations to allow on @window">
+            <type name="WMFunction" c:type="GdkWMFunction"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="beep"
+              c:identifier="gdk_window_beep"
+              doc="Emits a short beep associated to @window in the appropriate
+display, if supported. Otherwise, emits a short beep on
+the display just as gdk_display_beep()."
+              version="2.12">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="iconify"
+              c:identifier="gdk_window_iconify"
+              doc="Asks to iconify (minimize) @window. The window manager may choose
+to ignore the request, but normally will honor it. Using
+gtk_window_iconify() is preferred, if you have a #GtkWindow widget.
+This function only makes sense when @window is a toplevel window.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="deiconify"
+              c:identifier="gdk_window_deiconify"
+              doc="Attempt to deiconify (unminimize) @window. On X11 the window manager may
+choose to ignore the request to deiconify. When using GTK+,
+use gtk_window_deiconify() instead of the #GdkWindow variant. Or better yet,
+you probably want to use gtk_window_present(), which raises the window, focuses it,
+unminimizes it, and puts it on the current desktop.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="stick"
+              c:identifier="gdk_window_stick"
+              doc="&quot;Pins&quot; a window such that it&apos;s on all workspaces and does not scroll
+with viewports, for window managers that have scrollable viewports.
+(When using #GtkWindow, gtk_window_stick() may be more useful.)
+On the X11 platform, this function depends on window manager
+support, so may have no effect with many window managers. However,
+GDK will do the best it can to convince the window manager to stick
+the window. For window managers that don&apos;t support this operation,
+there&apos;s nothing you can do to force it to happen.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="unstick"
+              c:identifier="gdk_window_unstick"
+              doc="Reverse operation for gdk_window_stick(); see gdk_window_stick(),
+and gtk_window_unstick().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="maximize"
+              c:identifier="gdk_window_maximize"
+              doc="Maximizes the window. If the window was already maximized, then
+this function does nothing.
+On X11, asks the window manager to maximize @window, if the window
+manager supports this operation. Not all window managers support
+this, and some deliberately ignore it or don&apos;t have a concept of
+&quot;maximized&quot;; so you can&apos;t rely on the maximization actually
+happening. But it will happen with most standard window managers,
+and GDK makes a best effort to get it to happen.
+On Windows, reliably maximizes the window.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="unmaximize"
+              c:identifier="gdk_window_unmaximize"
+              doc="Unmaximizes the window. If the window wasn&apos;t maximized, then this
+function does nothing.
+On X11, asks the window manager to unmaximize @window, if the
+window manager supports this operation. Not all window managers
+support this, and some deliberately ignore it or don&apos;t have a
+concept of &quot;maximized&quot;; so you can&apos;t rely on the unmaximization
+actually happening. But it will happen with most standard window
+managers, and GDK makes a best effort to get it to happen.
+On Windows, reliably unmaximizes the window.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="fullscreen"
+              c:identifier="gdk_window_fullscreen"
+              doc="Moves the window into fullscreen mode. This means the
+window covers the entire screen and is above any panels
+or task bars.
+If the window was already fullscreen, then this function does nothing.
+On X11, asks the window manager to put @window in a fullscreen
+state, if the window manager supports this operation. Not all
+window managers support this, and some deliberately ignore it or
+don&apos;t have a concept of &quot;fullscreen&quot;; so you can&apos;t rely on the
+fullscreenification actually happening. But it will happen with
+most standard window managers, and GDK makes a best effort to get
+it to happen."
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="unfullscreen"
+              c:identifier="gdk_window_unfullscreen"
+              doc="Moves the window out of fullscreen mode. If the window was not
+fullscreen, does nothing.
+On X11, asks the window manager to move @window out of the fullscreen
+state, if the window manager supports this operation. Not all
+window managers support this, and some deliberately ignore it or
+don&apos;t have a concept of &quot;fullscreen&quot;; so you can&apos;t rely on the
+unfullscreenification actually happening. But it will happen with
+most standard window managers, and GDK makes a best effort to get
+it to happen. "
+              version="2.2">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="set_keep_above"
+              c:identifier="gdk_window_set_keep_above"
+              doc="Set if @window must be kept above other windows. If the
+window was already above, then this function does nothing.
+On X11, asks the window manager to keep @window above, if the window
+manager supports this operation. Not all window managers support
+this, and some deliberately ignore it or don&apos;t have a concept of
+&quot;keep above&quot;; so you can&apos;t rely on the window being kept above.
+But it will happen with most standard window managers,
+and GDK makes a best effort to get it to happen."
+              version="2.4">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="setting"
+                     transfer-ownership="none"
+                     doc="whether to keep @window above other windows">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_keep_below"
+              c:identifier="gdk_window_set_keep_below"
+              doc="Set if @window must be kept below other windows. If the
+window was already below, then this function does nothing.
+On X11, asks the window manager to keep @window below, if the window
+manager supports this operation. Not all window managers support
+this, and some deliberately ignore it or don&apos;t have a concept of
+&quot;keep below&quot;; so you can&apos;t rely on the window being kept below.
+But it will happen with most standard window managers,
+and GDK makes a best effort to get it to happen."
+              version="2.4">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="setting"
+                     transfer-ownership="none"
+                     doc="whether to keep @window below other windows">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_opacity"
+              c:identifier="gdk_window_set_opacity"
+              doc="Request the windowing system to make @window partially transparent,
+with opacity 0 being fully transparent and 1 fully opaque. (Values
+of the opacity parameter are clamped to the [0,1] range.) 
+On X11, this works only on X screens with a compositing manager 
+running.
+For setting up per-pixel alpha, see gdk_screen_get_rgba_colormap().
+For making non-toplevel windows translucent, see 
+gdk_window_set_composited()."
+              version="2.12">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="opacity" transfer-ownership="none" doc="opacity">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="register_dnd" c:identifier="gdk_window_register_dnd">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="begin_resize_drag"
+              c:identifier="gdk_window_begin_resize_drag"
+              doc="Begins a window resize operation (for a toplevel window).
+You might use this function to implement a &quot;window resize grip,&quot; for
+example; in fact #GtkStatusbar uses it. The function works best
+with window managers that support the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/wm-spec&quot;&gt;Extended Window Manager Hints&lt;/ulink&gt;, but has a 
+fallback implementation for other window managers.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="edge"
+                     transfer-ownership="none"
+                     doc="the edge or corner from which the drag is started">
+            <type name="WindowEdge" c:type="GdkWindowEdge"/>
+          </parameter>
+          <parameter name="button"
+                     transfer-ownership="none"
+                     doc="the button being used to drag">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="root_x"
+                     transfer-ownership="none"
+                     doc="root window X coordinate of mouse click that began the drag">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="root_y"
+                     transfer-ownership="none"
+                     doc="root window Y coordinate of mouse click that began the drag">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="timestamp"
+                     transfer-ownership="none"
+                     doc="timestamp of mouse click that began the drag (use gdk_event_get_time())">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="begin_move_drag"
+              c:identifier="gdk_window_begin_move_drag"
+              doc="Begins a window move operation (for a toplevel window).  You might
+use this function to implement a &quot;window move grip,&quot; for
+example. The function works best with window managers that support
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/wm-spec&quot;&gt;Extended 
+Window Manager Hints&lt;/ulink&gt;, but has a fallback implementation for
+other window managers.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="button"
+                     transfer-ownership="none"
+                     doc="the button being used to drag">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="root_x"
+                     transfer-ownership="none"
+                     doc="root window X coordinate of mouse click that began the drag">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="root_y"
+                     transfer-ownership="none"
+                     doc="root window Y coordinate of mouse click that began the drag">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="timestamp"
+                     transfer-ownership="none"
+                     doc="timestamp of mouse click that began the drag">
+            <type name="uint32" c:type="guint32"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="invalidate_rect"
+              c:identifier="gdk_window_invalidate_rect"
+              doc="A convenience wrapper around gdk_window_invalidate_region() which
+invalidates a rectangular region. See
+gdk_window_invalidate_region() for details.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="rect"
+                     transfer-ownership="none"
+                     allow-none="1"
+                     doc="rectangle to invalidate or %NULL to invalidate the whole window">
+            <type name="Rectangle" c:type="GdkRectangle*"/>
+          </parameter>
+          <parameter name="invalidate_children"
+                     transfer-ownership="none"
+                     doc="whether to also invalidate child windows">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="invalidate_region"
+              c:identifier="gdk_window_invalidate_region"
+              doc="Adds @region to the update area for @window. The update area is the
+region that needs to be redrawn, or &quot;dirty region.&quot; The call
+gdk_window_process_updates() sends one or more expose events to the
+window, which together cover the entire update area. An
+application would normally redraw the contents of @window in
+response to those expose events.
+GDK will call gdk_window_process_all_updates() on your behalf
+whenever your program returns to the main loop and becomes idle, so
+normally there&apos;s no need to do that manually, you just need to
+invalidate regions that you know should be redrawn.
+The @invalidate_children parameter controls whether the region of
+each child window that intersects @region will also be invalidated.
+If %FALSE, then the update area for child windows will remain
+unaffected. See gdk_window_invalidate_maybe_recurse if you need
+fine grained control over which children are invalidated.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="region"
+                     transfer-ownership="none"
+                     doc="a #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+          <parameter name="invalidate_children"
+                     transfer-ownership="none"
+                     doc="%TRUE to also invalidate child windows">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="invalidate_maybe_recurse"
+              c:identifier="gdk_window_invalidate_maybe_recurse"
+              doc="Adds @region to the update area for @window. The update area is the
+region that needs to be redrawn, or &quot;dirty region.&quot; The call
+gdk_window_process_updates() sends one or more expose events to the
+window, which together cover the entire update area. An
+application would normally redraw the contents of @window in
+response to those expose events.
+GDK will call gdk_window_process_all_updates() on your behalf
+whenever your program returns to the main loop and becomes idle, so
+normally there&apos;s no need to do that manually, you just need to
+invalidate regions that you know should be redrawn.
+The @child_func parameter controls whether the region of
+each child window that intersects @region will also be invalidated.
+Only children for which @child_func returns TRUE will have the area
+invalidated.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="region"
+                     transfer-ownership="none"
+                     doc="a #GdkRegion">
+            <type name="Region" c:type="GdkRegion*"/>
+          </parameter>
+          <parameter name="child_func"
+                     transfer-ownership="none"
+                     doc="function to use to decide if to recurse to a child, %NULL means never recurse.">
+            <type name="any" c:type="any*"/>
+          </parameter>
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     doc="data passed to @child_func">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_update_area"
+              c:identifier="gdk_window_get_update_area"
+              doc="Transfers ownership of the update area from @window to the caller
+of the function. That is, after calling this function, @window will
+no longer have an invalid/dirty region; the update area is removed
+from @window and handed to you. If a window has no update area,
+gdk_window_get_update_area() returns %NULL. You are responsible for
+calling gdk_region_destroy() on the returned region if it&apos;s non-%NULL.">
+        <return-value transfer-ownership="full"
+                      doc="the update area for @window">
+          <type name="Region" c:type="GdkRegion*"/>
+        </return-value>
+      </method>
+      <method name="freeze_updates"
+              c:identifier="gdk_window_freeze_updates"
+              doc="Temporarily freezes a window such that it won&apos;t receive expose
+events.  The window will begin receiving expose events again when
+gdk_window_thaw_updates() is called. If gdk_window_freeze_updates()
+has been called more than once, gdk_window_thaw_updates() must be called
+an equal number of times to begin processing exposes.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="thaw_updates"
+              c:identifier="gdk_window_thaw_updates"
+              doc="Thaws a window frozen with gdk_window_freeze_updates().">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="freeze_toplevel_updates_libgtk_only"
+              c:identifier="gdk_window_freeze_toplevel_updates_libgtk_only"
+              doc="Temporarily freezes a window and all its descendants such that it won&apos;t
+receive expose events.  The window will begin receiving expose events
+again when gdk_window_thaw_toplevel_updates_libgtk_only() is called. If
+gdk_window_freeze_toplevel_updates_libgtk_only()
+has been called more than once,
+gdk_window_thaw_toplevel_updates_libgtk_only() must be called
+an equal number of times to begin processing exposes.
+This function is not part of the GDK public API and is only
+for use by GTK+.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="thaw_toplevel_updates_libgtk_only"
+              c:identifier="gdk_window_thaw_toplevel_updates_libgtk_only"
+              doc="Thaws a window frozen with
+gdk_window_freeze_toplevel_updates_libgtk_only().
+This function is not part of the GDK public API and is only
+for use by GTK+.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="process_updates"
+              c:identifier="gdk_window_process_updates"
+              doc="Sends one or more expose events to @window. The areas in each
+expose event will cover the entire update area for the window (see
+gdk_window_invalidate_region() for details). Normally GDK calls
+gdk_window_process_all_updates() on your behalf, so there&apos;s no
+need to call this function unless you want to force expose events
+to be delivered immediately and synchronously (vs. the usual
+case, where GDK delivers them in an idle handler). Occasionally
+this is useful to produce nicer scrolling behavior, for example.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="update_children"
+                     transfer-ownership="none"
+                     doc="whether to also process updates for child windows">
+            <type name="boolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_internal_paint_info"
+              c:identifier="gdk_window_get_internal_paint_info"
+              doc="If you bypass the GDK layer and use windowing system primitives to
+draw directly onto a #GdkWindow, then you need to deal with two
+system coordinates, and GDK may have redirected drawing to a offscreen
+pixmap as the result of a gdk_window_begin_paint_region() calls.
+This function allows retrieving the information you need to compensate
+for these effects.
+This function exposes details of the GDK implementation, and is thus
+likely to change in future releases of GDK.">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="real_drawable"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store the drawable to which drawing should be done.">
+            <type name="Drawable" c:type="GdkDrawable**"/>
+          </parameter>
+          <parameter name="x_offset"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store the X offset between coordinates in @window, and the underlying window system primitive coordinates for * real_drawable ">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+          <parameter name="y_offset"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     doc="location to store the Y offset between coordinates in @window, and the underlying window system primitive coordinates for * real_drawable ">
+            <type name="int" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="enable_synchronized_configure"
+              c:identifier="gdk_window_enable_synchronized_configure"
+              doc="Indicates that the application will cooperate with the window
+system in synchronizing the window repaint with the window
+manager during resizing operations. After an application calls
+this function, it must call gdk_window_configure_finished() every
+time it has finished all processing associated with a set of
+Configure events. Toplevel GTK+ windows automatically use this
+protocol.
+On X, calling this function makes @window participate in the
+_NET_WM_SYNC_REQUEST window manager protocol."
+              version="2.6">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="configure_finished"
+              c:identifier="gdk_window_configure_finished"
+              doc="Signal to the window system that the application has finished
+handling Configure events it has received. Window Managers can
+use this to better synchronize the frame repaint with the
+application. GTK+ applications will automatically call this
+function when appropriate.
+This function can only be called if gdk_window_enable_synchronized_configure()
+was called previously."
+              version="2.6">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="geometry_changed"
+              c:identifier="gdk_window_geometry_changed"
+              doc="This function informs GDK that the geometry of an embedded
+offscreen window has changed. This is necessary for GDK to keep
+track of which offscreen window the pointer is in."
+              version="2.18">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="redirect_to_drawable"
+              c:identifier="gdk_window_redirect_to_drawable"
+              doc="Redirects drawing into @window so that drawing to the
+window in the rectangle specified by @src_x, @src_y,
+Only drawing between gdk_window_begin_paint_region() or
+gdk_window_begin_paint_rect() and gdk_window_end_paint() is
+redirected.
+Redirection is active until gdk_window_remove_redirection()
+is called."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="drawable"
+                     transfer-ownership="none"
+                     doc="a #GdkDrawable">
+            <type name="Drawable" c:type="GdkDrawable*"/>
+          </parameter>
+          <parameter name="src_x"
+                     transfer-ownership="none"
+                     doc="x position in @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="src_y"
+                     transfer-ownership="none"
+                     doc="y position in @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_x"
+                     transfer-ownership="none"
+                     doc="x position in @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="dest_y"
+                     transfer-ownership="none"
+                     doc="y position in @drawable">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="width"
+                     transfer-ownership="none"
+                     doc="width of redirection, or -1 to use the width of @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+          <parameter name="height"
+                     transfer-ownership="none"
+                     doc="height of redirection or -1 to use the height of @window">
+            <type name="int" c:type="gint"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="remove_redirection"
+              c:identifier="gdk_window_remove_redirection"
+              doc="Removes any active redirection started by
+gdk_window_redirect_to_drawable()."
+              version="2.14">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <method name="destroy_notify" c:identifier="gdk_window_destroy_notify">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </method>
+      <property name="cursor"
+                version="2.18"
+                writable="1"
+                transfer-ownership="none"
+                doc="The mouse pointer for a #GdkWindow. See gdk_window_set_cursor() and
+gdk_window_get_cursor() for details.">
+        <type name="Cursor" c:type="GdkCursor"/>
+      </property>
+      <glib:signal name="from-embedder"
+                   doc="The ::from-embedder signal is emitted to translate coordinates
+in the embedder of an offscreen window to the offscreen window.
+See also #GtkWindow::to-embedder."
+                   version="2.18">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="embedder-x"
+                     transfer-ownership="none"
+                     doc="x coordinate in the embedder window">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="embedder-y"
+                     transfer-ownership="none"
+                     doc="y coordinate in the embedder window">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="offscreen-x"
+                     transfer-ownership="none"
+                     doc="return location for the x coordinate in the offscreen window">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+          <parameter name="offscreen-y"
+                     transfer-ownership="none"
+                     doc="return location for the y coordinate in the offscreen window">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+      <glib:signal name="pick-embedded-child"
+                   doc="The ::pick-embedded-child signal is emitted to find an embedded
+child at the given position."
+                   version="2.18">
+        <return-value transfer-ownership="full"
+                      doc="the #GdkWindow of the embedded child at @x, @y, or %NULL">
+          <type name="Window" c:type="GdkWindow"/>
+        </return-value>
+        <parameters>
+          <parameter name="x"
+                     transfer-ownership="none"
+                     doc="x coordinate in the window">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="y"
+                     transfer-ownership="none"
+                     doc="y coordinate in the window">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+      <glib:signal name="to-embedder"
+                   doc="The ::to-embedder signal is emitted to translate coordinates
+in an offscreen window to its embedder.
+See also #GtkWindow::from-embedder."
+                   version="2.18">
+        <return-value transfer-ownership="full">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="offscreen-x"
+                     transfer-ownership="none"
+                     doc="x coordinate in the offscreen window">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="offscreen-y"
+                     transfer-ownership="none"
+                     doc="y coordinate in the offscreen window">
+            <type name="double" c:type="gdouble"/>
+          </parameter>
+          <parameter name="embedder-x"
+                     transfer-ownership="none"
+                     doc="return location for the x coordinate in the embedder window">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+          <parameter name="embedder-y"
+                     transfer-ownership="none"
+                     doc="return location for the y coordinate in the embedder window">
+            <type name="any" c:type="gpointer"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+    </class>
+    <record name="WindowAttr" c:type="GdkWindowAttr">
+      <field name="title" writable="1">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="event_mask" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="x" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="y" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="width" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="height" writable="1">
+        <type name="int" c:type="gint"/>
+      </field>
+      <field name="wclass" writable="1">
+        <type name="WindowClass" c:type="GdkWindowClass"/>
+      </field>
+      <field name="visual" writable="1">
+        <type name="Visual" c:type="GdkVisual*"/>
+      </field>
+      <field name="colormap" writable="1">
+        <type name="Colormap" c:type="GdkColormap*"/>
+      </field>
+      <field name="window_type" writable="1">
+        <type name="WindowType" c:type="GdkWindowType"/>
+      </field>
+      <field name="cursor" writable="1">
+        <type name="Cursor" c:type="GdkCursor*"/>
+      </field>
+      <field name="wmclass_name" writable="1">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="wmclass_class" writable="1">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="override_redirect" writable="1">
+        <type name="boolean" c:type="gboolean"/>
+      </field>
+      <field name="type_hint" writable="1">
+        <type name="WindowTypeHint" c:type="GdkWindowTypeHint"/>
+      </field>
+    </record>
+    <bitfield name="WindowAttributesType"
+              glib:type-name="GdkWindowAttributesType"
+              glib:get-type="gdk_window_attributes_type_get_type"
+              c:type="GdkWindowAttributesType">
+      <member name="title"
+              value="2"
+              c:identifier="GDK_WA_TITLE"
+              glib:nick="title"/>
+      <member name="x" value="4" c:identifier="GDK_WA_X" glib:nick="x"/>
+      <member name="y" value="8" c:identifier="GDK_WA_Y" glib:nick="y"/>
+      <member name="cursor"
+              value="16"
+              c:identifier="GDK_WA_CURSOR"
+              glib:nick="cursor"/>
+      <member name="colormap"
+              value="32"
+              c:identifier="GDK_WA_COLORMAP"
+              glib:nick="colormap"/>
+      <member name="visual"
+              value="64"
+              c:identifier="GDK_WA_VISUAL"
+              glib:nick="visual"/>
+      <member name="wmclass"
+              value="128"
+              c:identifier="GDK_WA_WMCLASS"
+              glib:nick="wmclass"/>
+      <member name="noredir"
+              value="256"
+              c:identifier="GDK_WA_NOREDIR"
+              glib:nick="noredir"/>
+      <member name="type_hint"
+              value="512"
+              c:identifier="GDK_WA_TYPE_HINT"
+              glib:nick="type-hint"/>
+    </bitfield>
+    <enumeration name="WindowClass"
+                 glib:type-name="GdkWindowClass"
+                 glib:get-type="gdk_window_class_get_type"
+                 c:type="GdkWindowClass">
+      <member name="output"
+              value="0"
+              c:identifier="GDK_INPUT_OUTPUT"
+              glib:nick="output"/>
+      <member name="only"
+              value="1"
+              c:identifier="GDK_INPUT_ONLY"
+              glib:nick="only"/>
+    </enumeration>
+    <constant name="WindowClear" value="269025109">
+      <type name="int"/>
+    </constant>
+    <enumeration name="WindowEdge"
+                 glib:type-name="GdkWindowEdge"
+                 glib:get-type="gdk_window_edge_get_type"
+                 c:type="GdkWindowEdge">
+      <member name="north_west"
+              value="0"
+              c:identifier="GDK_WINDOW_EDGE_NORTH_WEST"
+              glib:nick="north-west"/>
+      <member name="north"
+              value="1"
+              c:identifier="GDK_WINDOW_EDGE_NORTH"
+              glib:nick="north"/>
+      <member name="north_east"
+              value="2"
+              c:identifier="GDK_WINDOW_EDGE_NORTH_EAST"
+              glib:nick="north-east"/>
+      <member name="west"
+              value="3"
+              c:identifier="GDK_WINDOW_EDGE_WEST"
+              glib:nick="west"/>
+      <member name="east"
+              value="4"
+              c:identifier="GDK_WINDOW_EDGE_EAST"
+              glib:nick="east"/>
+      <member name="south_west"
+              value="5"
+              c:identifier="GDK_WINDOW_EDGE_SOUTH_WEST"
+              glib:nick="south-west"/>
+      <member name="south"
+              value="6"
+              c:identifier="GDK_WINDOW_EDGE_SOUTH"
+              glib:nick="south"/>
+      <member name="south_east"
+              value="7"
+              c:identifier="GDK_WINDOW_EDGE_SOUTH_EAST"
+              glib:nick="south-east"/>
+    </enumeration>
+    <bitfield name="WindowHints"
+              glib:type-name="GdkWindowHints"
+              glib:get-type="gdk_window_hints_get_type"
+              c:type="GdkWindowHints">
+      <member name="pos"
+              value="1"
+              c:identifier="GDK_HINT_POS"
+              glib:nick="pos"/>
+      <member name="min_size"
+              value="2"
+              c:identifier="GDK_HINT_MIN_SIZE"
+              glib:nick="min-size"/>
+      <member name="max_size"
+              value="4"
+              c:identifier="GDK_HINT_MAX_SIZE"
+              glib:nick="max-size"/>
+      <member name="base_size"
+              value="8"
+              c:identifier="GDK_HINT_BASE_SIZE"
+              glib:nick="base-size"/>
+      <member name="aspect"
+              value="16"
+              c:identifier="GDK_HINT_ASPECT"
+              glib:nick="aspect"/>
+      <member name="resize_inc"
+              value="32"
+              c:identifier="GDK_HINT_RESIZE_INC"
+              glib:nick="resize-inc"/>
+      <member name="win_gravity"
+              value="64"
+              c:identifier="GDK_HINT_WIN_GRAVITY"
+              glib:nick="win-gravity"/>
+      <member name="user_pos"
+              value="128"
+              c:identifier="GDK_HINT_USER_POS"
+              glib:nick="user-pos"/>
+      <member name="user_size"
+              value="256"
+              c:identifier="GDK_HINT_USER_SIZE"
+              glib:nick="user-size"/>
+    </bitfield>
+    <record name="WindowObject" c:type="GdkWindowObject">
+    </record>
+    <record name="WindowObjectClass" c:type="GdkWindowObjectClass">
+      <field name="parent_class" writable="1">
+        <type name="DrawableClass" c:type="GdkDrawableClass"/>
+      </field>
+    </record>
+    <record name="WindowRedirect" c:type="GdkWindowRedirect">
+    </record>
+    <bitfield name="WindowState"
+              glib:type-name="GdkWindowState"
+              glib:get-type="gdk_window_state_get_type"
+              c:type="GdkWindowState">
+      <member name="withdrawn"
+              value="1"
+              c:identifier="GDK_WINDOW_STATE_WITHDRAWN"
+              glib:nick="withdrawn"/>
+      <member name="iconified"
+              value="2"
+              c:identifier="GDK_WINDOW_STATE_ICONIFIED"
+              glib:nick="iconified"/>
+      <member name="maximized"
+              value="4"
+              c:identifier="GDK_WINDOW_STATE_MAXIMIZED"
+              glib:nick="maximized"/>
+      <member name="sticky"
+              value="8"
+              c:identifier="GDK_WINDOW_STATE_STICKY"
+              glib:nick="sticky"/>
+      <member name="fullscreen"
+              value="16"
+              c:identifier="GDK_WINDOW_STATE_FULLSCREEN"
+              glib:nick="fullscreen"/>
+      <member name="above"
+              value="32"
+              c:identifier="GDK_WINDOW_STATE_ABOVE"
+              glib:nick="above"/>
+      <member name="below"
+              value="64"
+              c:identifier="GDK_WINDOW_STATE_BELOW"
+              glib:nick="below"/>
+    </bitfield>
+    <enumeration name="WindowType"
+                 glib:type-name="GdkWindowType"
+                 glib:get-type="gdk_window_type_get_type"
+                 c:type="GdkWindowType">
+      <member name="root"
+              value="0"
+              c:identifier="GDK_WINDOW_ROOT"
+              glib:nick="root"/>
+      <member name="toplevel"
+              value="1"
+              c:identifier="GDK_WINDOW_TOPLEVEL"
+              glib:nick="toplevel"/>
+      <member name="child"
+              value="2"
+              c:identifier="GDK_WINDOW_CHILD"
+              glib:nick="child"/>
+      <member name="dialog"
+              value="3"
+              c:identifier="GDK_WINDOW_DIALOG"
+              glib:nick="dialog"/>
+      <member name="temp"
+              value="4"
+              c:identifier="GDK_WINDOW_TEMP"
+              glib:nick="temp"/>
+      <member name="foreign"
+              value="5"
+              c:identifier="GDK_WINDOW_FOREIGN"
+              glib:nick="foreign"/>
+      <member name="offscreen"
+              value="6"
+              c:identifier="GDK_WINDOW_OFFSCREEN"
+              glib:nick="offscreen"/>
+    </enumeration>
+    <enumeration name="WindowTypeHint"
+                 glib:type-name="GdkWindowTypeHint"
+                 glib:get-type="gdk_window_type_hint_get_type"
+                 c:type="GdkWindowTypeHint">
+      <member name="normal"
+              value="0"
+              c:identifier="GDK_WINDOW_TYPE_HINT_NORMAL"
+              glib:nick="normal"/>
+      <member name="dialog"
+              value="1"
+              c:identifier="GDK_WINDOW_TYPE_HINT_DIALOG"
+              glib:nick="dialog"/>
+      <member name="menu"
+              value="2"
+              c:identifier="GDK_WINDOW_TYPE_HINT_MENU"
+              glib:nick="menu"/>
+      <member name="toolbar"
+              value="3"
+              c:identifier="GDK_WINDOW_TYPE_HINT_TOOLBAR"
+              glib:nick="toolbar"/>
+      <member name="splashscreen"
+              value="4"
+              c:identifier="GDK_WINDOW_TYPE_HINT_SPLASHSCREEN"
+              glib:nick="splashscreen"/>
+      <member name="utility"
+              value="5"
+              c:identifier="GDK_WINDOW_TYPE_HINT_UTILITY"
+              glib:nick="utility"/>
+      <member name="dock"
+              value="6"
+              c:identifier="GDK_WINDOW_TYPE_HINT_DOCK"
+              glib:nick="dock"/>
+      <member name="desktop"
+              value="7"
+              c:identifier="GDK_WINDOW_TYPE_HINT_DESKTOP"
+              glib:nick="desktop"/>
+      <member name="dropdown_menu"
+              value="8"
+              c:identifier="GDK_WINDOW_TYPE_HINT_DROPDOWN_MENU"
+              glib:nick="dropdown-menu"/>
+      <member name="popup_menu"
+              value="9"
+              c:identifier="GDK_WINDOW_TYPE_HINT_POPUP_MENU"
+              glib:nick="popup-menu"/>
+      <member name="tooltip"
+              value="10"
+              c:identifier="GDK_WINDOW_TYPE_HINT_TOOLTIP"
+              glib:nick="tooltip"/>
+      <member name="notification"
+              value="11"
+              c:identifier="GDK_WINDOW_TYPE_HINT_NOTIFICATION"
+              glib:nick="notification"/>
+      <member name="combo"
+              value="12"
+              c:identifier="GDK_WINDOW_TYPE_HINT_COMBO"
+              glib:nick="combo"/>
+      <member name="dnd"
+              value="13"
+              c:identifier="GDK_WINDOW_TYPE_HINT_DND"
+              glib:nick="dnd"/>
+    </enumeration>
+    <constant name="WonSign" value="16785577">
+      <type name="int"/>
+    </constant>
+    <constant name="Word" value="269025161">
+      <type name="int"/>
+    </constant>
+    <constant name="X" value="88">
+      <type name="int"/>
+    </constant>
+    <constant name="Xabovedot" value="16785034">
+      <type name="int"/>
+    </constant>
+    <constant name="Xfer" value="269025162">
+      <type name="int"/>
+    </constant>
+    <constant name="Y" value="89">
+      <type name="int"/>
+    </constant>
+    <constant name="Yacute" value="221">
+      <type name="int"/>
+    </constant>
+    <constant name="Ybelowdot" value="16785140">
+      <type name="int"/>
+    </constant>
+    <constant name="Ycircumflex" value="16777590">
+      <type name="int"/>
+    </constant>
+    <constant name="Ydiaeresis" value="5054">
+      <type name="int"/>
+    </constant>
+    <constant name="Yellow" value="269025189">
+      <type name="int"/>
+    </constant>
+    <constant name="Ygrave" value="16785138">
+      <type name="int"/>
+    </constant>
+    <constant name="Yhook" value="16785142">
+      <type name="int"/>
+    </constant>
+    <constant name="Ytilde" value="16785144">
+      <type name="int"/>
+    </constant>
+    <constant name="Z" value="90">
+      <type name="int"/>
+    </constant>
+    <constant name="Zabovedot" value="431">
+      <type name="int"/>
+    </constant>
+    <constant name="Zacute" value="428">
+      <type name="int"/>
+    </constant>
+    <constant name="Zcaron" value="430">
+      <type name="int"/>
+    </constant>
+    <constant name="Zen_Koho" value="65341">
+      <type name="int"/>
+    </constant>
+    <constant name="Zenkaku" value="65320">
+      <type name="int"/>
+    </constant>
+    <constant name="Zenkaku_Hankaku" value="65322">
+      <type name="int"/>
+    </constant>
+    <constant name="ZoomIn" value="269025163">
+      <type name="int"/>
+    </constant>
+    <constant name="ZoomOut" value="269025164">
+      <type name="int"/>
+    </constant>
+    <constant name="Zstroke" value="16777653">
+      <type name="int"/>
+    </constant>
+    <constant name="a" value="97">
+      <type name="int"/>
+    </constant>
+    <constant name="aacute" value="225">
+      <type name="int"/>
+    </constant>
+    <constant name="abelowdot" value="16785057">
+      <type name="int"/>
+    </constant>
+    <constant name="abovedot" value="511">
+      <type name="int"/>
+    </constant>
+    <constant name="abreve" value="483">
+      <type name="int"/>
+    </constant>
+    <constant name="abreveacute" value="16785071">
+      <type name="int"/>
+    </constant>
+    <constant name="abrevebelowdot" value="16785079">
+      <type name="int"/>
+    </constant>
+    <constant name="abrevegrave" value="16785073">
+      <type name="int"/>
+    </constant>
+    <constant name="abrevehook" value="16785075">
+      <type name="int"/>
+    </constant>
+    <constant name="abrevetilde" value="16785077">
+      <type name="int"/>
+    </constant>
+    <constant name="acircumflex" value="226">
+      <type name="int"/>
+    </constant>
+    <constant name="acircumflexacute" value="16785061">
+      <type name="int"/>
+    </constant>
+    <constant name="acircumflexbelowdot" value="16785069">
+      <type name="int"/>
+    </constant>
+    <constant name="acircumflexgrave" value="16785063">
+      <type name="int"/>
+    </constant>
+    <constant name="acircumflexhook" value="16785065">
+      <type name="int"/>
+    </constant>
+    <constant name="acircumflextilde" value="16785067">
+      <type name="int"/>
+    </constant>
+    <constant name="acute" value="180">
+      <type name="int"/>
+    </constant>
+    <function name="add_client_message_filter"
+              c:identifier="gdk_add_client_message_filter"
+              doc="Adds a filter to the default display to be called when X ClientMessage events
+are received. See gdk_display_add_client_message_filter().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="message_type"
+                   transfer-ownership="none"
+                   doc="the type of ClientMessage events to receive. This will be checked against the &lt;structfield&gt;message_type&lt;/structfield&gt; field of the XClientMessage event struct.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="func"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="2"
+                   doc="the function to call to process the event.">
+          <type name="FilterFunc" c:type="GdkFilterFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="user data to pass to @func.">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="add_option_entries_libgtk_only"
+              c:identifier="gdk_add_option_entries_libgtk_only"
+              doc="Appends gdk option entries to the passed in option group. This is
+not public API and must not be used by applications.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="group"
+                   transfer-ownership="none"
+                   doc="An option group.">
+          <type name="GLib.OptionGroup" c:type="GOptionGroup*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="adiaeresis" value="228">
+      <type name="int"/>
+    </constant>
+    <constant name="ae" value="230">
+      <type name="int"/>
+    </constant>
+    <constant name="agrave" value="224">
+      <type name="int"/>
+    </constant>
+    <constant name="ahook" value="16785059">
+      <type name="int"/>
+    </constant>
+    <constant name="amacron" value="992">
+      <type name="int"/>
+    </constant>
+    <constant name="ampersand" value="38">
+      <type name="int"/>
+    </constant>
+    <constant name="aogonek" value="433">
+      <type name="int"/>
+    </constant>
+    <constant name="apostrophe" value="39">
+      <type name="int"/>
+    </constant>
+    <constant name="approxeq" value="16785992">
+      <type name="int"/>
+    </constant>
+    <constant name="approximate" value="2248">
+      <type name="int"/>
+    </constant>
+    <constant name="aring" value="229">
+      <type name="int"/>
+    </constant>
+    <constant name="asciicircum" value="94">
+      <type name="int"/>
+    </constant>
+    <constant name="asciitilde" value="126">
+      <type name="int"/>
+    </constant>
+    <constant name="asterisk" value="42">
+      <type name="int"/>
+    </constant>
+    <constant name="at" value="64">
+      <type name="int"/>
+    </constant>
+    <constant name="atilde" value="227">
+      <type name="int"/>
+    </constant>
+    <function name="atom_intern" c:identifier="gdk_atom_intern">
+      <return-value transfer-ownership="full">
+        <type name="Atom" c:type="GdkAtom"/>
+      </return-value>
+      <parameters>
+        <parameter name="atom_name" transfer-ownership="none">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="only_if_exists" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="atom_intern_static_string"
+              c:identifier="gdk_atom_intern_static_string"
+              doc="Finds or creates an atom corresponding to a given string.
+Note that this function is identical to gdk_atom_intern() except
+that if a new #GdkAtom is created the string itself is used rather 
+than a copy. This saves memory, but can only be used if the string 
+will &lt;emphasis&gt;always&lt;/emphasis&gt; exist. It can be used with statically
+allocated strings in the main program, but not with statically 
+allocated memory in dynamically loaded modules, if you expect to
+ever unload the module again (e.g. do not use this function in
+GTK+ theme engines)."
+              version="2.10">
+      <return-value transfer-ownership="full"
+                    doc="the atom corresponding to @atom_name">
+        <type name="Atom" c:type="GdkAtom"/>
+      </return-value>
+      <parameters>
+        <parameter name="atom_name"
+                   transfer-ownership="none"
+                   doc="a static string">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="b" value="98">
+      <type name="int"/>
+    </constant>
+    <constant name="babovedot" value="16784899">
+      <type name="int"/>
+    </constant>
+    <constant name="backslash" value="92">
+      <type name="int"/>
+    </constant>
+    <constant name="ballotcross" value="2804">
+      <type name="int"/>
+    </constant>
+    <constant name="bar" value="124">
+      <type name="int"/>
+    </constant>
+    <constant name="because" value="16785973">
+      <type name="int"/>
+    </constant>
+    <function name="beep"
+              c:identifier="gdk_beep"
+              doc="Emits a short beep on the default display.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="bitmap_create_from_data"
+              c:identifier="gdk_bitmap_create_from_data">
+      <return-value transfer-ownership="full">
+        <type name="Bitmap" c:type="GdkBitmap*"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable" transfer-ownership="none">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="data" transfer-ownership="none">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="width" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="blank" value="2527">
+      <type name="int"/>
+    </constant>
+    <constant name="botintegral" value="2213">
+      <type name="int"/>
+    </constant>
+    <constant name="botleftparens" value="2220">
+      <type name="int"/>
+    </constant>
+    <constant name="botleftsqbracket" value="2216">
+      <type name="int"/>
+    </constant>
+    <constant name="botleftsummation" value="2226">
+      <type name="int"/>
+    </constant>
+    <constant name="botrightparens" value="2222">
+      <type name="int"/>
+    </constant>
+    <constant name="botrightsqbracket" value="2218">
+      <type name="int"/>
+    </constant>
+    <constant name="botrightsummation" value="2230">
+      <type name="int"/>
+    </constant>
+    <constant name="bott" value="2550">
+      <type name="int"/>
+    </constant>
+    <constant name="botvertsummationconnector" value="2228">
+      <type name="int"/>
+    </constant>
+    <constant name="braceleft" value="123">
+      <type name="int"/>
+    </constant>
+    <constant name="braceright" value="125">
+      <type name="int"/>
+    </constant>
+    <constant name="bracketleft" value="91">
+      <type name="int"/>
+    </constant>
+    <constant name="bracketright" value="93">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_blank" value="16787456">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_1" value="65521">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_10" value="65530">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_2" value="65522">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_3" value="65523">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_4" value="65524">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_5" value="65525">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_6" value="65526">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_7" value="65527">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_8" value="65528">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dot_9" value="65529">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1" value="16787457">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12" value="16787459">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123" value="16787463">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1234" value="16787471">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12345" value="16787487">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123456" value="16787519">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1234567" value="16787583">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12345678" value="16787711">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1234568" value="16787647">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123457" value="16787551">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1234578" value="16787679">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123458" value="16787615">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12346" value="16787503">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123467" value="16787567">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1234678" value="16787695">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123468" value="16787631">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12347" value="16787535">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123478" value="16787663">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12348" value="16787599">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1235" value="16787479">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12356" value="16787511">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123567" value="16787575">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1235678" value="16787703">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123568" value="16787639">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12357" value="16787543">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123578" value="16787671">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12358" value="16787607">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1236" value="16787495">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12367" value="16787559">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_123678" value="16787687">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12368" value="16787623">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1237" value="16787527">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12378" value="16787655">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1238" value="16787591">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_124" value="16787467">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1245" value="16787483">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12456" value="16787515">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_124567" value="16787579">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1245678" value="16787707">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_124568" value="16787643">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12457" value="16787547">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_124578" value="16787675">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12458" value="16787611">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1246" value="16787499">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12467" value="16787563">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_124678" value="16787691">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12468" value="16787627">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1247" value="16787531">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12478" value="16787659">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1248" value="16787595">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_125" value="16787475">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1256" value="16787507">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12567" value="16787571">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_125678" value="16787699">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12568" value="16787635">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1257" value="16787539">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12578" value="16787667">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1258" value="16787603">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_126" value="16787491">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1267" value="16787555">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_12678" value="16787683">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1268" value="16787619">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_127" value="16787523">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1278" value="16787651">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_128" value="16787587">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13" value="16787461">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_134" value="16787469">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1345" value="16787485">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13456" value="16787517">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_134567" value="16787581">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1345678" value="16787709">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_134568" value="16787645">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13457" value="16787549">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_134578" value="16787677">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13458" value="16787613">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1346" value="16787501">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13467" value="16787565">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_134678" value="16787693">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13468" value="16787629">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1347" value="16787533">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13478" value="16787661">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1348" value="16787597">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_135" value="16787477">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1356" value="16787509">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13567" value="16787573">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_135678" value="16787701">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13568" value="16787637">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1357" value="16787541">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13578" value="16787669">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1358" value="16787605">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_136" value="16787493">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1367" value="16787557">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_13678" value="16787685">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1368" value="16787621">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_137" value="16787525">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1378" value="16787653">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_138" value="16787589">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_14" value="16787465">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_145" value="16787481">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1456" value="16787513">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_14567" value="16787577">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_145678" value="16787705">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_14568" value="16787641">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1457" value="16787545">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_14578" value="16787673">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1458" value="16787609">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_146" value="16787497">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1467" value="16787561">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_14678" value="16787689">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1468" value="16787625">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_147" value="16787529">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1478" value="16787657">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_148" value="16787593">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_15" value="16787473">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_156" value="16787505">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1567" value="16787569">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_15678" value="16787697">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1568" value="16787633">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_157" value="16787537">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1578" value="16787665">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_158" value="16787601">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_16" value="16787489">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_167" value="16787553">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_1678" value="16787681">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_168" value="16787617">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_17" value="16787521">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_178" value="16787649">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_18" value="16787585">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2" value="16787458">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23" value="16787462">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_234" value="16787470">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2345" value="16787486">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23456" value="16787518">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_234567" value="16787582">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2345678" value="16787710">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_234568" value="16787646">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23457" value="16787550">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_234578" value="16787678">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23458" value="16787614">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2346" value="16787502">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23467" value="16787566">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_234678" value="16787694">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23468" value="16787630">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2347" value="16787534">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23478" value="16787662">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2348" value="16787598">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_235" value="16787478">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2356" value="16787510">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23567" value="16787574">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_235678" value="16787702">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23568" value="16787638">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2357" value="16787542">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23578" value="16787670">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2358" value="16787606">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_236" value="16787494">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2367" value="16787558">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_23678" value="16787686">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2368" value="16787622">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_237" value="16787526">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2378" value="16787654">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_238" value="16787590">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_24" value="16787466">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_245" value="16787482">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2456" value="16787514">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_24567" value="16787578">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_245678" value="16787706">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_24568" value="16787642">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2457" value="16787546">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_24578" value="16787674">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2458" value="16787610">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_246" value="16787498">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2467" value="16787562">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_24678" value="16787690">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2468" value="16787626">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_247" value="16787530">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2478" value="16787658">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_248" value="16787594">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_25" value="16787474">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_256" value="16787506">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2567" value="16787570">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_25678" value="16787698">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2568" value="16787634">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_257" value="16787538">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2578" value="16787666">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_258" value="16787602">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_26" value="16787490">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_267" value="16787554">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_2678" value="16787682">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_268" value="16787618">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_27" value="16787522">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_278" value="16787650">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_28" value="16787586">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3" value="16787460">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_34" value="16787468">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_345" value="16787484">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3456" value="16787516">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_34567" value="16787580">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_345678" value="16787708">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_34568" value="16787644">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3457" value="16787548">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_34578" value="16787676">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3458" value="16787612">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_346" value="16787500">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3467" value="16787564">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_34678" value="16787692">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3468" value="16787628">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_347" value="16787532">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3478" value="16787660">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_348" value="16787596">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_35" value="16787476">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_356" value="16787508">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3567" value="16787572">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_35678" value="16787700">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3568" value="16787636">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_357" value="16787540">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3578" value="16787668">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_358" value="16787604">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_36" value="16787492">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_367" value="16787556">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_3678" value="16787684">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_368" value="16787620">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_37" value="16787524">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_378" value="16787652">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_38" value="16787588">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_4" value="16787464">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_45" value="16787480">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_456" value="16787512">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_4567" value="16787576">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_45678" value="16787704">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_4568" value="16787640">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_457" value="16787544">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_4578" value="16787672">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_458" value="16787608">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_46" value="16787496">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_467" value="16787560">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_4678" value="16787688">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_468" value="16787624">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_47" value="16787528">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_478" value="16787656">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_48" value="16787592">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_5" value="16787472">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_56" value="16787504">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_567" value="16787568">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_5678" value="16787696">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_568" value="16787632">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_57" value="16787536">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_578" value="16787664">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_58" value="16787600">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_6" value="16787488">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_67" value="16787552">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_678" value="16787680">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_68" value="16787616">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_7" value="16787520">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_78" value="16787648">
+      <type name="int"/>
+    </constant>
+    <constant name="braille_dots_8" value="16787584">
+      <type name="int"/>
+    </constant>
+    <constant name="breve" value="418">
+      <type name="int"/>
+    </constant>
+    <constant name="brokenbar" value="166">
+      <type name="int"/>
+    </constant>
+    <constant name="c" value="99">
+      <type name="int"/>
+    </constant>
+    <constant name="cabovedot" value="741">
+      <type name="int"/>
+    </constant>
+    <constant name="cacute" value="486">
+      <type name="int"/>
+    </constant>
+    <function name="cairo_create"
+              c:identifier="gdk_cairo_create"
+              doc="Creates a Cairo context for drawing to @drawable.
+&lt;note&gt;&lt;para&gt;
+Note that due to double-buffering, Cairo contexts created 
+in a GTK+ expose event handler cannot be cached and reused 
+between different expose events. 
+&lt;/para&gt;&lt;/note&gt;
+cairo_destroy() when you are done drawing."
+              version="2.8">
+      <return-value transfer-ownership="full"
+                    doc="A newly created Cairo context. Free with">
+        <type name="cairo.Context" c:type="cairo_t*"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="cairo_rectangle"
+              c:identifier="gdk_cairo_rectangle"
+              doc="Adds the given rectangle to the current path of @cr."
+              version="2.8">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr" transfer-ownership="none" doc="a #cairo_t">
+          <type name="cairo.Context" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="rectangle"
+                   transfer-ownership="none"
+                   doc="a #GdkRectangle">
+          <type name="Rectangle" c:type="GdkRectangle*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="cairo_region"
+              c:identifier="gdk_cairo_region"
+              doc="Adds the given region to the current path of @cr."
+              version="2.8">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr" transfer-ownership="none" doc="a #cairo_t">
+          <type name="cairo.Context" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="region" transfer-ownership="none" doc="a #GdkRegion">
+          <type name="Region" c:type="GdkRegion*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="cairo_reset_clip"
+              c:identifier="gdk_cairo_reset_clip"
+              doc="Resets the clip region for a Cairo context created by gdk_cairo_create().
+This resets the clip region to the &quot;empty&quot; state for the given drawable.
+This is required for non-native windows since a direct call to
+cairo_reset_clip() would unset the clip region inherited from the
+drawable (i.e. the window clip region), and thus let you e.g.
+draw outside your window.
+This is rarely needed though, since most code just create a new cairo_t
+using gdk_cairo_create() each time they want to draw something."
+              version="2.18">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr" transfer-ownership="none" doc="a #cairo_t">
+          <type name="cairo.Context" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="cairo_set_source_color"
+              c:identifier="gdk_cairo_set_source_color"
+              doc="Sets the specified #GdkColor as the source color of @cr."
+              version="2.8">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr" transfer-ownership="none" doc="a #cairo_t">
+          <type name="cairo.Context" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="color" transfer-ownership="none" doc="a #GdkColor">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="cairo_set_source_pixbuf"
+              c:identifier="gdk_cairo_set_source_pixbuf"
+              doc="Sets the given pixbuf as the source pattern for the Cairo context.
+The pattern has an extend mode of %CAIRO_EXTEND_NONE and is aligned
+so that the origin of @pixbuf is @pixbuf_x, @pixbuf_y"
+              version="2.8">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr" transfer-ownership="none" doc="a #Cairo context">
+          <type name="cairo.Context" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="pixbuf" transfer-ownership="none" doc="a #GdkPixbuf">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="pixbuf_x"
+                   transfer-ownership="none"
+                   doc="X coordinate of location to place upper left corner of @pixbuf">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="pixbuf_y"
+                   transfer-ownership="none"
+                   doc="Y coordinate of location to place upper left corner of @pixbuf">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="cairo_set_source_pixmap"
+              c:identifier="gdk_cairo_set_source_pixmap"
+              doc="Sets the given pixmap as the source pattern for the Cairo context.
+The pattern has an extend mode of %CAIRO_EXTEND_NONE and is aligned
+so that the origin of @pixmap is @pixmap_x, @pixmap_y"
+              version="2.10">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="cr" transfer-ownership="none" doc="a #Cairo context">
+          <type name="cairo.Context" c:type="cairo_t*"/>
+        </parameter>
+        <parameter name="pixmap" transfer-ownership="none" doc="a #GdkPixmap">
+          <type name="Pixmap" c:type="GdkPixmap*"/>
+        </parameter>
+        <parameter name="pixmap_x"
+                   transfer-ownership="none"
+                   doc="X coordinate of location to place upper left corner of @pixmap">
+          <type name="double" c:type="double"/>
+        </parameter>
+        <parameter name="pixmap_y"
+                   transfer-ownership="none"
+                   doc="Y coordinate of location to place upper left corner of @pixmap">
+          <type name="double" c:type="double"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="careof" value="2744">
+      <type name="int"/>
+    </constant>
+    <constant name="caret" value="2812">
+      <type name="int"/>
+    </constant>
+    <constant name="caron" value="439">
+      <type name="int"/>
+    </constant>
+    <constant name="ccaron" value="488">
+      <type name="int"/>
+    </constant>
+    <constant name="ccedilla" value="231">
+      <type name="int"/>
+    </constant>
+    <constant name="ccircumflex" value="742">
+      <type name="int"/>
+    </constant>
+    <constant name="cedilla" value="184">
+      <type name="int"/>
+    </constant>
+    <constant name="cent" value="162">
+      <type name="int"/>
+    </constant>
+    <function name="char_height"
+              c:identifier="gdk_char_height"
+              doc="Determines the total height of a given character.
+This value is not generally useful, because you cannot
+determine how this total height will be drawn in
+relation to the baseline. See gdk_text_extents()."
+              deprecated="Use gdk_text_extents() instead."
+              deprecated-version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="the height of the character in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="character"
+                   transfer-ownership="none"
+                   doc="the character to measure.">
+          <type name="int8" c:type="gchar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="char_measure"
+              c:identifier="gdk_char_measure"
+              doc="Determines the distance from the origin to the rightmost
+portion of a character when drawn. This is not the
+correct value for determining the origin of the next
+portion when drawing text in multiple pieces. ">
+      <return-value transfer-ownership="none"
+                    doc="the right bearing of the character in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="character"
+                   transfer-ownership="none"
+                   doc="the character to measure.">
+          <type name="int8" c:type="gchar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="char_width"
+              c:identifier="gdk_char_width"
+              doc="Determines the width of a given character."
+              deprecated="Use gdk_text_extents() instead."
+              deprecated-version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="the width of the character in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="character"
+                   transfer-ownership="none"
+                   doc="the character to measure.">
+          <type name="int8" c:type="gchar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="char_width_wc"
+              c:identifier="gdk_char_width_wc"
+              doc="Determines the width of a given wide character. (Encoded
+in the wide-character encoding of the current locale).">
+      <return-value transfer-ownership="none"
+                    doc="the width of the character in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="character"
+                   transfer-ownership="none"
+                   doc="the character to measure.">
+          <type name="WChar" c:type="GdkWChar"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="checkerboard" value="2529">
+      <type name="int"/>
+    </constant>
+    <constant name="checkmark" value="2803">
+      <type name="int"/>
+    </constant>
+    <constant name="circle" value="3023">
+      <type name="int"/>
+    </constant>
+    <constant name="club" value="2796">
+      <type name="int"/>
+    </constant>
+    <constant name="colon" value="58">
+      <type name="int"/>
+    </constant>
+    <function name="color_alloc"
+              c:identifier="gdk_color_alloc"
+              doc="Allocates a single color from a colormap."
+              deprecated="Use gdk_colormap_alloc_color() instead."
+              deprecated-version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the allocation succeeded.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="color"
+                   transfer-ownership="none"
+                   doc="The color to allocate. On return, the &lt;structfield&gt;pixel&lt;/structfield&gt; field will be filled in.">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="color_black"
+              c:identifier="gdk_color_black"
+              doc="Returns the black color for a given colormap. The resulting
+value has already been allocated. ">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the allocation succeeded.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="color"
+                   transfer-ownership="none"
+                   doc="the location to store the color.">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="color_change"
+              c:identifier="gdk_color_change"
+              doc="Changes the value of a color that has already
+been allocated. If @colormap is not a private
+colormap, then the color must have been allocated
+using gdk_colormap_alloc_colors() with the ">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the color was successfully changed.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="color"
+                   transfer-ownership="none"
+                   doc="a #GdkColor, with the color to change in the &lt;structfield&gt;pixel&lt;/structfield&gt; field, and the new value in the remaining fields.">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="color_parse"
+              c:identifier="gdk_color_parse"
+              doc="Parses a textual specification of a color and fill in the
+&lt;structfield&gt;red&lt;/structfield&gt;, &lt;structfield&gt;green&lt;/structfield&gt;,
+and &lt;structfield&gt;blue&lt;/structfield&gt; fields of a #GdkColor
+structure. The color is &lt;emphasis&gt;not&lt;/emphasis&gt; allocated, you
+must call gdk_colormap_alloc_color() yourself. The string can
+either one of a large set of standard names. (Taken from the X11
+&lt;filename&gt;rgb.txt&lt;/filename&gt; file), or it can be a hex value in the
+form &apos;&amp;num;rgb&apos; &apos;&amp;num;rrggbb&apos; &apos;&amp;num;rrrgggbbb&apos; or
+&apos;&amp;num;rrrrggggbbbb&apos; where &apos;r&apos;, &apos;g&apos; and &apos;b&apos; are hex digits of the
+red, green, and blue components of the color, respectively. (White
+in the four forms is &apos;&amp;num;fff&apos; &apos;&amp;num;ffffff&apos; &apos;&amp;num;fffffffff&apos; and
+&apos;&amp;num;ffffffffffff&apos;)">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the parsing succeeded.">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="spec"
+                   transfer-ownership="none"
+                   doc="the string specifying the color.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="color"
+                   direction="out"
+                   caller-allocates="1"
+                   transfer-ownership="none"
+                   doc="the #GdkColor to fill in">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="color_white"
+              c:identifier="gdk_color_white"
+              doc="Returns the white color for a given colormap. The resulting
+value has already allocated been allocated. ">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the allocation succeeded.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="color"
+                   transfer-ownership="none"
+                   doc="the location to store the color.">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="colors_alloc"
+              c:identifier="gdk_colors_alloc"
+              doc="Allocates colors from a colormap. This function
+is obsolete. See gdk_colormap_alloc_colors().
+For full documentation of the fields, see 
+the Xlib documentation for &lt;function&gt;XAllocColorCells()&lt;/function&gt;.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the allocation was successful">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="contiguous"
+                   transfer-ownership="none"
+                   doc="if %TRUE, the colors should be allocated in contiguous color cells.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="planes"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="an array in which to store the plane masks.">
+          <type name="ulong" c:type="gulong*"/>
+        </parameter>
+        <parameter name="nplanes"
+                   transfer-ownership="none"
+                   doc="the number of planes to allocate. (Or zero, to indicate that the color allocation should not be planar.)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="pixels"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="an array into which to store allocated pixel values.">
+          <type name="ulong" c:type="gulong*"/>
+        </parameter>
+        <parameter name="npixels"
+                   transfer-ownership="none"
+                   doc="the number of pixels in each plane to allocate.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="colors_free"
+              c:identifier="gdk_colors_free"
+              doc="Frees colors allocated with gdk_colors_alloc(). This
+function is obsolete. See gdk_colormap_free_colors().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="pixels"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the pixel values of the colors to free.">
+          <type name="ulong" c:type="gulong*"/>
+        </parameter>
+        <parameter name="npixels"
+                   transfer-ownership="none"
+                   doc="the number of values in @pixels.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="planes"
+                   transfer-ownership="none"
+                   doc="the plane masks for all planes to free, OR&apos;d together.">
+          <type name="ulong" c:type="gulong"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="colors_store"
+              c:identifier="gdk_colors_store"
+              doc="Changes the value of the first @ncolors colors in
+a private colormap. This function is obsolete and
+should not be used. See gdk_color_change().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="colors"
+                   transfer-ownership="none"
+                   doc="the new color values.">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+        <parameter name="ncolors"
+                   transfer-ownership="none"
+                   doc="the number of colors to change.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="comma" value="44">
+      <type name="int"/>
+    </constant>
+    <constant name="containsas" value="16785931">
+      <type name="int"/>
+    </constant>
+    <constant name="copyright" value="169">
+      <type name="int"/>
+    </constant>
+    <constant name="cr" value="2532">
+      <type name="int"/>
+    </constant>
+    <constant name="crossinglines" value="2542">
+      <type name="int"/>
+    </constant>
+    <constant name="cuberoot" value="16785947">
+      <type name="int"/>
+    </constant>
+    <constant name="currency" value="164">
+      <type name="int"/>
+    </constant>
+    <constant name="cursor" value="2815">
+      <type name="int"/>
+    </constant>
+    <constant name="d" value="100">
+      <type name="int"/>
+    </constant>
+    <constant name="dabovedot" value="16784907">
+      <type name="int"/>
+    </constant>
+    <constant name="dagger" value="2801">
+      <type name="int"/>
+    </constant>
+    <constant name="dcaron" value="495">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_A" value="65153">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_E" value="65155">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_I" value="65157">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_O" value="65159">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_U" value="65161">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_a" value="65152">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_abovecomma" value="65124">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_abovedot" value="65110">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_abovereversedcomma" value="65125">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_abovering" value="65112">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_acute" value="65105">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowbreve" value="65131">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowcircumflex" value="65129">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowcomma" value="65134">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowdiaeresis" value="65132">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowdot" value="65120">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowmacron" value="65128">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowring" value="65127">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_belowtilde" value="65130">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_breve" value="65109">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_capital_schwa" value="65163">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_caron" value="65114">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_cedilla" value="65115">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_circumflex" value="65106">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_currency" value="65135">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_dasia" value="65125">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_diaeresis" value="65111">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_doubleacute" value="65113">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_doublegrave" value="65126">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_e" value="65154">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_grave" value="65104">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_hook" value="65121">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_horn" value="65122">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_i" value="65156">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_invertedbreve" value="65133">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_iota" value="65117">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_macron" value="65108">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_o" value="65158">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_ogonek" value="65116">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_perispomeni" value="65107">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_psili" value="65124">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_semivoiced_sound" value="65119">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_small_schwa" value="65162">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_stroke" value="65123">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_tilde" value="65107">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_u" value="65160">
+      <type name="int"/>
+    </constant>
+    <constant name="dead_voiced_sound" value="65118">
+      <type name="int"/>
+    </constant>
+    <constant name="decimalpoint" value="2749">
+      <type name="int"/>
+    </constant>
+    <constant name="degree" value="176">
+      <type name="int"/>
+    </constant>
+    <function name="devices_list"
+              c:identifier="gdk_devices_list"
+              doc="Returns the list of available input devices for the default display.
+The list is statically allocated and should not be freed."
+              introspectable="0">
+      <return-value transfer-ownership="full" doc="a list of #GdkDevice">
+        <type name="GLib.List" c:type="GList*"/>
+      </return-value>
+    </function>
+    <constant name="diaeresis" value="168">
+      <type name="int"/>
+    </constant>
+    <constant name="diamond" value="2797">
+      <type name="int"/>
+    </constant>
+    <constant name="digitspace" value="2725">
+      <type name="int"/>
+    </constant>
+    <constant name="dintegral" value="16785964">
+      <type name="int"/>
+    </constant>
+    <constant name="division" value="247">
+      <type name="int"/>
+    </constant>
+    <constant name="dollar" value="36">
+      <type name="int"/>
+    </constant>
+    <constant name="doubbaselinedot" value="2735">
+      <type name="int"/>
+    </constant>
+    <constant name="doubleacute" value="445">
+      <type name="int"/>
+    </constant>
+    <constant name="doubledagger" value="2802">
+      <type name="int"/>
+    </constant>
+    <constant name="doublelowquotemark" value="2814">
+      <type name="int"/>
+    </constant>
+    <constant name="downarrow" value="2302">
+      <type name="int"/>
+    </constant>
+    <constant name="downcaret" value="2984">
+      <type name="int"/>
+    </constant>
+    <constant name="downshoe" value="3030">
+      <type name="int"/>
+    </constant>
+    <constant name="downstile" value="3012">
+      <type name="int"/>
+    </constant>
+    <constant name="downtack" value="3010">
+      <type name="int"/>
+    </constant>
+    <function name="drag_abort"
+              c:identifier="gdk_drag_abort"
+              doc="Aborts a drag without dropping. 
+This function is called by the drag source.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="the timestamp for this operation.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_begin"
+              c:identifier="gdk_drag_begin"
+              doc="Starts a drag and creates a new drag context for it.
+This function is called by the drag source."
+              introspectable="0">
+      <return-value transfer-ownership="full"
+                    doc="a newly created #GdkDragContext.">
+        <type name="DragContext" c:type="GdkDragContext*"/>
+      </return-value>
+      <parameters>
+        <parameter name="window"
+                   transfer-ownership="none"
+                   doc="the source window for this drag.">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="targets"
+                   transfer-ownership="none"
+                   doc="the offered targets, as list of #GdkAtom&lt;!-- --&gt;s">
+          <type name="GLib.List" c:type="GList*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_drop"
+              c:identifier="gdk_drag_drop"
+              doc="Drops on the current destination.
+This function is called by the drag source.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="the timestamp for this operation.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_drop_succeeded"
+              c:identifier="gdk_drag_drop_succeeded"
+              doc="Returns whether the dropped data has been successfully 
+transferred. This function is intended to be used while 
+handling a %GDK_DROP_FINISHED event, its return value is
+meaningless at other times."
+              version="2.6">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the drop was successful.">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_find_window"
+              c:identifier="gdk_drag_find_window"
+              doc="Finds the destination window and DND protocol to use at the
+given pointer position.
+This function is called by the drag source to obtain the ">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="drag_window"
+                   transfer-ownership="none"
+                   doc="a window which may be at the pointer position, but should be ignored, since it is put up by the drag source as an icon.">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="x_root"
+                   transfer-ownership="none"
+                   doc="the x position of the pointer in root coordinates.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y_root"
+                   transfer-ownership="none"
+                   doc="the y position of the pointer in root coordinates.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dest_window"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the destination window in.">
+          <type name="Window" c:type="GdkWindow**"/>
+        </parameter>
+        <parameter name="protocol"
+                   direction="out"
+                   caller-allocates="1"
+                   transfer-ownership="none"
+                   doc="location to store the DND protocol in.">
+          <type name="DragProtocol" c:type="GdkDragProtocol*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_find_window_for_screen"
+              c:identifier="gdk_drag_find_window_for_screen"
+              doc="Finds the destination window and DND protocol to use at the
+given pointer position.
+This function is called by the drag source to obtain the "
+              version="2.2">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="drag_window"
+                   transfer-ownership="none"
+                   doc="a window which may be at the pointer position, but should be ignored, since it is put up by the drag source as an icon.">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="screen"
+                   transfer-ownership="none"
+                   doc="the screen where the destination window is sought.">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </parameter>
+        <parameter name="x_root"
+                   transfer-ownership="none"
+                   doc="the x position of the pointer in root coordinates.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y_root"
+                   transfer-ownership="none"
+                   doc="the y position of the pointer in root coordinates.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dest_window"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the destination window in.">
+          <type name="Window" c:type="GdkWindow**"/>
+        </parameter>
+        <parameter name="protocol"
+                   direction="out"
+                   caller-allocates="1"
+                   transfer-ownership="none"
+                   doc="location to store the DND protocol in.">
+          <type name="DragProtocol" c:type="GdkDragProtocol*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_get_protocol"
+              c:identifier="gdk_drag_get_protocol"
+              doc="Finds out the DND protocol supported by a window.
+the drop should happen. This may be @xid or the id of a proxy
+window, or zero if @xid doesn&apos;t support Drag and Drop.">
+      <return-value transfer-ownership="full"
+                    doc="the windowing system specific id for the window where">
+        <type name="NativeWindow" c:type="GdkNativeWindow"/>
+      </return-value>
+      <parameters>
+        <parameter name="xid"
+                   transfer-ownership="none"
+                   doc="the windowing system id of the destination window.">
+          <type name="NativeWindow" c:type="GdkNativeWindow"/>
+        </parameter>
+        <parameter name="protocol"
+                   transfer-ownership="none"
+                   doc="location where the supported DND protocol is returned.">
+          <type name="DragProtocol" c:type="GdkDragProtocol*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_get_protocol_for_display"
+              c:identifier="gdk_drag_get_protocol_for_display"
+              doc="Finds out the DND protocol supported by a window."
+              version="2.2">
+      <return-value transfer-ownership="full"
+                    doc="the windowing system id of the window where the drop should happen. This may be @xid or the id of a proxy window, or zero if @xid doesn&apos;t support Drag and Drop.">
+        <type name="NativeWindow" c:type="GdkNativeWindow"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the #GdkDisplay where the destination window resides">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="xid"
+                   transfer-ownership="none"
+                   doc="the windowing system id of the destination window.">
+          <type name="NativeWindow" c:type="GdkNativeWindow"/>
+        </parameter>
+        <parameter name="protocol"
+                   transfer-ownership="none"
+                   doc="location where the supported DND protocol is returned.">
+          <type name="DragProtocol" c:type="GdkDragProtocol*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_get_selection"
+              c:identifier="gdk_drag_get_selection"
+              doc="Returns the selection atom for the current source window.">
+      <return-value transfer-ownership="full" doc="the selection atom.">
+        <type name="Atom" c:type="GdkAtom"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_motion"
+              c:identifier="gdk_drag_motion"
+              doc="Updates the drag context when the pointer moves or the 
+set of actions changes.
+This function is called by the drag source.">
+      <return-value transfer-ownership="none" doc="FIXME">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="dest_window"
+                   transfer-ownership="none"
+                   doc="the new destination window, obtained by gdk_drag_find_window().">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="protocol"
+                   transfer-ownership="none"
+                   doc="the DND protocol in use, obtained by gdk_drag_find_window().">
+          <type name="DragProtocol" c:type="GdkDragProtocol"/>
+        </parameter>
+        <parameter name="x_root"
+                   transfer-ownership="none"
+                   doc="the x position of the pointer in root coordinates.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y_root"
+                   transfer-ownership="none"
+                   doc="the y position of the pointer in root coordinates.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="suggested_action"
+                   transfer-ownership="none"
+                   doc="the suggested action.">
+          <type name="DragAction" c:type="GdkDragAction"/>
+        </parameter>
+        <parameter name="possible_actions"
+                   transfer-ownership="none"
+                   doc="the possible actions.">
+          <type name="DragAction" c:type="GdkDragAction"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="the timestamp for this operation.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drag_status"
+              c:identifier="gdk_drag_status"
+              doc="Selects one of the actions offered by the drag source.
+This function is called by the drag destination in response to
+gdk_drag_motion() called by the drag source.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="action"
+                   transfer-ownership="none"
+                   doc="the selected action which will be taken when a drop happens, or 0 to indicate that a drop will not be accepted.">
+          <type name="DragAction" c:type="GdkDragAction"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="the timestamp for this operation.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_arc"
+              c:identifier="gdk_draw_arc"
+              doc="Draws an arc or a filled &apos;pie slice&apos;. The arc is defined by the bounding
+rectangle of the entire ellipse, and the start and end angles of the part 
+of the ellipse to be drawn.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="filled"
+                   transfer-ownership="none"
+                   doc="%TRUE if the arc should be filled, producing a &apos;pie slice&apos;.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the left edge of the bounding rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the top edge of the bounding rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="the width of the bounding rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="the height of the bounding rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="angle1"
+                   transfer-ownership="none"
+                   doc="the start angle of the arc, relative to the 3 o&apos;clock position, counter-clockwise, in 1/64ths of a degree.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="angle2"
+                   transfer-ownership="none"
+                   doc="the end angle of the arc, relative to @angle1, in 1/64ths of a degree.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_drawable"
+              c:identifier="gdk_draw_drawable"
+              doc="Copies the @width x @height region of @src at coordinates (@xsrc,
+Most fields in @gc are not used for this operation, but notably the
+clip mask or clip region will be honored.
+The source and destination drawables must have the same visual and
+colormap, or errors will result. (On X11, failure to match
+visual/colormap results in a BadMatch error from the X server.)
+A common cause of this problem is an attempt to draw a bitmap to
+a color drawable. The way to draw a bitmap is to set the bitmap as 
+the stipple on the #GdkGC, set the fill mode to %GDK_STIPPLED, and 
+then draw the rectangle.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   doc="a #GdkGC sharing the drawable&apos;s visual and colormap">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="src"
+                   transfer-ownership="none"
+                   doc="the source #GdkDrawable, which may be the same as @drawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="xsrc"
+                   transfer-ownership="none"
+                   doc="X position in @src of rectangle to draw">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="ysrc"
+                   transfer-ownership="none"
+                   doc="Y position in @src of rectangle to draw">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="xdest"
+                   transfer-ownership="none"
+                   doc="X position in @drawable where the rectangle should be drawn">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="ydest"
+                   transfer-ownership="none"
+                   doc="Y position in @drawable where the rectangle should be drawn">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="width of rectangle to draw, or -1 for entire @src width">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="height of rectangle to draw, or -1 for entire @src height">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_glyphs"
+              c:identifier="gdk_draw_glyphs"
+              doc="This is a low-level function; 99% of text rendering should be done
+using gdk_draw_layout() instead.
+A glyph is a single image in a font. This function draws a sequence of
+glyphs.  To obtain a sequence of glyphs you have to understand a
+lot about internationalized text handling, which you don&apos;t want to
+understand; thus, use gdk_draw_layout() instead of this function,
+gdk_draw_layout() handles the details.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="font" transfer-ownership="none" doc="font to be used">
+          <type name="Pango.Font" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="X coordinate of baseline origin">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="Y coordinate of baseline origin">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="glyphs"
+                   transfer-ownership="none"
+                   doc="the glyph string to draw">
+          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_glyphs_transformed"
+              c:identifier="gdk_draw_glyphs_transformed"
+              doc="Renders a #PangoGlyphString onto a drawable, possibly
+transforming the layed-out coordinates through a transformation
+matrix. Note that the transformation matrix for @font is not
+changed, so to produce correct rendering results, the @font
+must have been loaded using a #PangoContext with an identical
+transformation matrix to that passed in to this function.
+See also gdk_draw_glyphs(), gdk_draw_layout()."
+              version="2.6">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="matrix"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="a #PangoMatrix, or %NULL to use an identity transformation">
+          <type name="Pango.Matrix" c:type="PangoMatrix*"/>
+        </parameter>
+        <parameter name="font"
+                   transfer-ownership="none"
+                   doc="the font in which to draw the string">
+          <type name="Pango.Font" c:type="PangoFont*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x position of the start of the string (in Pango units in user space coordinates)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y position of the baseline (in Pango units in user space coordinates)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="glyphs"
+                   transfer-ownership="none"
+                   doc="the glyph string to draw">
+          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_gray_image" c:identifier="gdk_draw_gray_image">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable" transfer-ownership="none">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dith" transfer-ownership="none">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="buf" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="rowstride" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_image"
+              c:identifier="gdk_draw_image"
+              doc="Draws a #GdkImage onto a drawable.
+The depth of the #GdkImage must match the depth of the #GdkDrawable.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="image"
+                   transfer-ownership="none"
+                   doc="the #GdkImage to draw.">
+          <type name="Image" c:type="GdkImage*"/>
+        </parameter>
+        <parameter name="xsrc"
+                   transfer-ownership="none"
+                   doc="the left edge of the source rectangle within @image.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="ysrc"
+                   transfer-ownership="none"
+                   doc="the top of the source rectangle within @image.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="xdest"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the destination within @drawable.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="ydest"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the destination within @drawable.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="the width of the area to be copied, or -1 to make the area extend to the right edge of @image.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="the height of the area to be copied, or -1 to make the area extend to the bottom edge of @image.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_indexed_image" c:identifier="gdk_draw_indexed_image">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable" transfer-ownership="none">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dith" transfer-ownership="none">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="buf" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="rowstride" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="cmap" transfer-ownership="none">
+          <type name="RgbCmap" c:type="GdkRgbCmap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_layout"
+              c:identifier="gdk_draw_layout"
+              doc="Render a #PangoLayout onto a GDK drawable
+If the layout&apos;s #PangoContext has a transformation matrix set, then
+bounding box (in device space) of the transformed layout.
+If you&apos;re using GTK+, the usual way to obtain a #PangoLayout
+is gtk_widget_create_pango_layout().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="the drawable on which to draw string">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   doc="base graphics context to use">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the X position of the left of the layout (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the Y position of the top of the layout (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="layout"
+                   transfer-ownership="none"
+                   doc="a #PangoLayout">
+          <type name="Pango.Layout" c:type="PangoLayout*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_layout_line"
+              c:identifier="gdk_draw_layout_line"
+              doc="Render a #PangoLayoutLine onto an GDK drawable
+If the layout&apos;s #PangoContext has a transformation matrix set, then
+(left is in before-tranform user coordinates) in after-transform
+device coordinates.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="the drawable on which to draw the line">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   doc="base graphics to use">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x position of start of string (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y position of baseline (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="line"
+                   transfer-ownership="none"
+                   doc="a #PangoLayoutLine">
+          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_layout_line_with_colors"
+              c:identifier="gdk_draw_layout_line_with_colors"
+              doc="Render a #PangoLayoutLine onto a #GdkDrawable, overriding the
+layout&apos;s normal colors with @foreground and/or @background.
+If the layout&apos;s #PangoContext has a transformation matrix set, then
+(left is in before-tranform user coordinates) in after-transform
+device coordinates.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="the drawable on which to draw the line">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   doc="base graphics to use">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x position of start of string (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y position of baseline (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="line"
+                   transfer-ownership="none"
+                   doc="a #PangoLayoutLine">
+          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+        <parameter name="foreground"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="foreground override color, or %NULL for none">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+        <parameter name="background"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="background override color, or %NULL for none">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_layout_with_colors"
+              c:identifier="gdk_draw_layout_with_colors"
+              doc="Render a #PangoLayout onto a #GdkDrawable, overriding the
+layout&apos;s normal colors with @foreground and/or @background.
+If the layout&apos;s #PangoContext has a transformation matrix set, then
+bounding box (in device space) of the transformed layout.
+If you&apos;re using GTK+, the ususal way to obtain a #PangoLayout
+is gtk_widget_create_pango_layout().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="the drawable on which to draw string">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   doc="base graphics context to use">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the X position of the left of the layout (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the Y position of the top of the layout (in pixels)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="layout"
+                   transfer-ownership="none"
+                   doc="a #PangoLayout">
+          <type name="Pango.Layout" c:type="PangoLayout*"/>
+        </parameter>
+        <parameter name="foreground"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="foreground override color, or %NULL for none">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+        <parameter name="background"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="background override color, or %NULL for none">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_line"
+              c:identifier="gdk_draw_line"
+              doc="Draws a line, using the foreground color and other attributes of 
+the #GdkGC.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x1_"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the start point.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y1_"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the start point.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="x2_"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the end point.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y2_"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the end point.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_lines"
+              c:identifier="gdk_draw_lines"
+              doc="Draws a series of lines connecting the given points.
+The way in which joins between lines are draw is determined by the
+#GdkCapStyle value in the #GdkGC. This can be set with
+gdk_gc_set_line_attributes().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="points"
+                   transfer-ownership="none"
+                   doc="an array of #GdkPoint structures specifying the endpoints of the">
+          <type name="Point" c:type="GdkPoint*"/>
+        </parameter>
+        <parameter name="n_points"
+                   transfer-ownership="none"
+                   doc="the size of the @points array.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_pixbuf"
+              c:identifier="gdk_draw_pixbuf"
+              doc="Renders a rectangular portion of a pixbuf to a drawable.  The destination
+drawable must have a colormap. All windows have a colormap, however, pixmaps
+only have colormap by default if they were created with a non-%NULL window 
+argument. Otherwise a colormap must be set on them with 
+gdk_drawable_set_colormap().
+On older X servers, rendering pixbufs with an alpha channel involves round 
+trips to the X server, and may be somewhat slow.
+If GDK is built with the Sun mediaLib library, the gdk_draw_pixbuf
+function is accelerated using mediaLib, which provides hardware
+acceleration on Intel, AMD, and Sparc chipsets.  If desired, mediaLib
+support can be turned off by setting the GDK_DISABLE_MEDIALIB environment
+variable."
+              version="2.2">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="Destination drawable.">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="a #GdkGC, used for clipping, or %NULL">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="pixbuf" transfer-ownership="none" doc="a #GdkPixbuf">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="src_x"
+                   transfer-ownership="none"
+                   doc="Source X coordinate within pixbuf.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="src_y"
+                   transfer-ownership="none"
+                   doc="Source Y coordinates within pixbuf.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dest_x"
+                   transfer-ownership="none"
+                   doc="Destination X coordinate within drawable.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dest_y"
+                   transfer-ownership="none"
+                   doc="Destination Y coordinate within drawable.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="Width of region to render, in pixels, or -1 to use pixbuf width.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="Height of region to render, in pixels, or -1 to use pixbuf height.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dither"
+                   transfer-ownership="none"
+                   doc="Dithering mode for #GdkRGB.">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="x_dither"
+                   transfer-ownership="none"
+                   doc="X offset for dither.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y_dither"
+                   transfer-ownership="none"
+                   doc="Y offset for dither.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_point"
+              c:identifier="gdk_draw_point"
+              doc="Draws a point, using the foreground color and other attributes of 
+the #GdkGC.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the point.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the point.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_points"
+              c:identifier="gdk_draw_points"
+              doc="Draws a number of points, using the foreground color and other 
+attributes of the #GdkGC.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="points"
+                   transfer-ownership="none"
+                   doc="an array of #GdkPoint structures.">
+          <type name="Point" c:type="GdkPoint*"/>
+        </parameter>
+        <parameter name="n_points"
+                   transfer-ownership="none"
+                   doc="the number of points to be drawn.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_polygon"
+              c:identifier="gdk_draw_polygon"
+              doc="Draws an outlined or filled polygon.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="filled"
+                   transfer-ownership="none"
+                   doc="%TRUE if the polygon should be filled. The polygon is closed automatically, connecting the last point to the first point if necessary.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="points"
+                   transfer-ownership="none"
+                   doc="an array of #GdkPoint structures specifying the points making up the polygon.">
+          <type name="Point" c:type="GdkPoint*"/>
+        </parameter>
+        <parameter name="n_points"
+                   transfer-ownership="none"
+                   doc="the number of points.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_rectangle"
+              c:identifier="gdk_draw_rectangle"
+              doc="Draws a rectangular outline or filled rectangle, using the foreground color
+and other attributes of the #GdkGC.
+A rectangle drawn filled is 1 pixel smaller in both dimensions than a 
+rectangle outlined. Calling 
+&lt;literal&gt;gdk_draw_rectangle (window, gc, TRUE, 0, 0, 20, 20)&lt;/literal&gt; 
+results in a filled rectangle 20 pixels wide and 20 pixels high. Calling
+&lt;literal&gt;gdk_draw_rectangle (window, gc, FALSE, 0, 0, 20, 20)&lt;/literal&gt; 
+results in an outlined rectangle with corners at (0, 0), (0, 20), (20, 20),
+and (20, 0), which makes it 21 pixels wide and 21 pixels high.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="filled"
+                   transfer-ownership="none"
+                   doc="%TRUE if the rectangle should be filled.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the left edge of the rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the top edge of the rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="the width of the rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="the height of the rectangle.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_rgb_32_image" c:identifier="gdk_draw_rgb_32_image">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable" transfer-ownership="none">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dith" transfer-ownership="none">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="buf" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="rowstride" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_rgb_32_image_dithalign"
+              c:identifier="gdk_draw_rgb_32_image_dithalign"
+              doc="Like gdk_draw_rgb_32_image(), but allows you to specify the dither
+offsets. See gdk_draw_rgb_image_dithalign() for more details.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="X coordinate on @drawable where image should go">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="Y coordinate on @drawable where image should go">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="width of area of image to draw">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="height of area of image to draw">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dith" transfer-ownership="none" doc="dithering mode">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="buf" transfer-ownership="none" doc="RGB image data">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="rowstride"
+                   transfer-ownership="none"
+                   doc="rowstride of RGB image data">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="xdith"
+                   transfer-ownership="none"
+                   doc="X dither offset">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="ydith"
+                   transfer-ownership="none"
+                   doc="Y dither offset">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_rgb_image" c:identifier="gdk_draw_rgb_image">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable" transfer-ownership="none">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dith" transfer-ownership="none">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="rgb_buf" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="rowstride" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_rgb_image_dithalign"
+              c:identifier="gdk_draw_rgb_image_dithalign">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable" transfer-ownership="none">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="width" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="height" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="dith" transfer-ownership="none">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="rgb_buf" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="rowstride" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="xdith" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="ydith" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_segments"
+              c:identifier="gdk_draw_segments"
+              doc="Draws a number of unconnected lines.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="segs"
+                   transfer-ownership="none"
+                   doc="an array of #GdkSegment structures specifying the start and end points of the lines to be drawn.">
+          <type name="Segment" c:type="GdkSegment*"/>
+        </parameter>
+        <parameter name="n_segs"
+                   transfer-ownership="none"
+                   doc="the number of line segments to draw, i.e. the size of the">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_string"
+              c:identifier="gdk_draw_string"
+              doc="Draws a string of characters in the given font or fontset."
+              deprecated="Use gdk_draw_layout() instead."
+              deprecated-version="2.4">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont.">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the left edge of the text.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the baseline of the text.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="string"
+                   transfer-ownership="none"
+                   doc="the string of characters to draw.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_text"
+              c:identifier="gdk_draw_text"
+              doc="Draws a number of characters in the given font or fontset."
+              deprecated="Use gdk_draw_layout() instead."
+              deprecated-version="2.4">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont.">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the left edge of the text.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the baseline of the text.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the characters to draw.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the number of characters of @text to draw.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_text_wc"
+              c:identifier="gdk_draw_text_wc"
+              doc="Draws a number of wide characters using the given font of fontset.
+If the font is a 1-byte font, the string is converted into 1-byte 
+characters (discarding the high bytes) before output."
+              deprecated="Use gdk_draw_layout() instead."
+              deprecated-version="2.4">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable (a #GdkWindow or a #GdkPixmap).">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont.">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="x"
+                   transfer-ownership="none"
+                   doc="the x coordinate of the left edge of the text.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y"
+                   transfer-ownership="none"
+                   doc="the y coordinate of the baseline of the text.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the wide characters to draw.">
+          <type name="WChar" c:type="GdkWChar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the number of characters to draw.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="draw_trapezoids"
+              c:identifier="gdk_draw_trapezoids"
+              doc="Draws a set of anti-aliased trapezoids. The trapezoids are
+combined using saturation addition, then drawn over the background
+as a set. This is low level functionality used internally to implement
+rotated underlines and backgrouds when rendering a PangoLayout and is
+likely not useful for applications."
+              version="2.6">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="a #GdkDrawable">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc" transfer-ownership="none" doc="a #GdkGC">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="trapezoids"
+                   transfer-ownership="none"
+                   doc="an array of #GdkTrapezoid structures">
+          <type name="Trapezoid" c:type="GdkTrapezoid*"/>
+        </parameter>
+        <parameter name="n_trapezoids"
+                   transfer-ownership="none"
+                   doc="the number of trapezoids to draw">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drop_finish"
+              c:identifier="gdk_drop_finish"
+              doc="Ends the drag operation after a drop.
+This function is called by the drag destination.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GtkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="success"
+                   transfer-ownership="none"
+                   doc="%TRUE if the data was successfully received.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="the timestamp for this operation.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="drop_reply"
+              c:identifier="gdk_drop_reply"
+              doc="Accepts or rejects a drop. 
+This function is called by the drag destination in response
+to a drop initiated by the drag source.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #GdkDragContext.">
+          <type name="DragContext" c:type="GdkDragContext*"/>
+        </parameter>
+        <parameter name="ok"
+                   transfer-ownership="none"
+                   doc="%TRUE if the drop is accepted.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="the timestamp for this operation.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="dstroke" value="496">
+      <type name="int"/>
+    </constant>
+    <constant name="e" value="101">
+      <type name="int"/>
+    </constant>
+    <constant name="eabovedot" value="1004">
+      <type name="int"/>
+    </constant>
+    <constant name="eacute" value="233">
+      <type name="int"/>
+    </constant>
+    <constant name="ebelowdot" value="16785081">
+      <type name="int"/>
+    </constant>
+    <constant name="ecaron" value="492">
+      <type name="int"/>
+    </constant>
+    <constant name="ecircumflex" value="234">
+      <type name="int"/>
+    </constant>
+    <constant name="ecircumflexacute" value="16785087">
+      <type name="int"/>
+    </constant>
+    <constant name="ecircumflexbelowdot" value="16785095">
+      <type name="int"/>
+    </constant>
+    <constant name="ecircumflexgrave" value="16785089">
+      <type name="int"/>
+    </constant>
+    <constant name="ecircumflexhook" value="16785091">
+      <type name="int"/>
+    </constant>
+    <constant name="ecircumflextilde" value="16785093">
+      <type name="int"/>
+    </constant>
+    <constant name="ediaeresis" value="235">
+      <type name="int"/>
+    </constant>
+    <constant name="egrave" value="232">
+      <type name="int"/>
+    </constant>
+    <constant name="ehook" value="16785083">
+      <type name="int"/>
+    </constant>
+    <constant name="eightsubscript" value="16785544">
+      <type name="int"/>
+    </constant>
+    <constant name="eightsuperior" value="16785528">
+      <type name="int"/>
+    </constant>
+    <constant name="elementof" value="16785928">
+      <type name="int"/>
+    </constant>
+    <constant name="ellipsis" value="2734">
+      <type name="int"/>
+    </constant>
+    <constant name="em3space" value="2723">
+      <type name="int"/>
+    </constant>
+    <constant name="em4space" value="2724">
+      <type name="int"/>
+    </constant>
+    <constant name="emacron" value="954">
+      <type name="int"/>
+    </constant>
+    <constant name="emdash" value="2729">
+      <type name="int"/>
+    </constant>
+    <constant name="emfilledcircle" value="2782">
+      <type name="int"/>
+    </constant>
+    <constant name="emfilledrect" value="2783">
+      <type name="int"/>
+    </constant>
+    <constant name="emopencircle" value="2766">
+      <type name="int"/>
+    </constant>
+    <constant name="emopenrectangle" value="2767">
+      <type name="int"/>
+    </constant>
+    <constant name="emptyset" value="16785925">
+      <type name="int"/>
+    </constant>
+    <constant name="emspace" value="2721">
+      <type name="int"/>
+    </constant>
+    <constant name="endash" value="2730">
+      <type name="int"/>
+    </constant>
+    <constant name="enfilledcircbullet" value="2790">
+      <type name="int"/>
+    </constant>
+    <constant name="enfilledsqbullet" value="2791">
+      <type name="int"/>
+    </constant>
+    <constant name="eng" value="959">
+      <type name="int"/>
+    </constant>
+    <constant name="enopencircbullet" value="2784">
+      <type name="int"/>
+    </constant>
+    <constant name="enopensquarebullet" value="2785">
+      <type name="int"/>
+    </constant>
+    <constant name="enspace" value="2722">
+      <type name="int"/>
+    </constant>
+    <constant name="eogonek" value="490">
+      <type name="int"/>
+    </constant>
+    <constant name="equal" value="61">
+      <type name="int"/>
+    </constant>
+    <function name="error_trap_pop" c:identifier="gdk_error_trap_pop">
+      <return-value transfer-ownership="none">
+        <type name="int" c:type="gint"/>
+      </return-value>
+    </function>
+    <function name="error_trap_push" c:identifier="gdk_error_trap_push">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <constant name="eth" value="240">
+      <type name="int"/>
+    </constant>
+    <constant name="etilde" value="16785085">
+      <type name="int"/>
+    </constant>
+    <function name="event_get"
+              c:identifier="gdk_event_get"
+              doc="Checks all open displays for a #GdkEvent to process,to be processed
+on, fetching events from the windowing system if necessary.
+See gdk_display_get_event().
+are pending. The returned #GdkEvent should be freed with gdk_event_free().">
+      <return-value transfer-ownership="full"
+                    doc="the next #GdkEvent to be processed, or %NULL if no events">
+        <type name="Event" c:type="GdkEvent*"/>
+      </return-value>
+    </function>
+    <function name="event_get_graphics_expose"
+              c:identifier="gdk_event_get_graphics_expose"
+              doc="Waits for a GraphicsExpose or NoExpose event from the X server.
+This is used in the #GtkText and #GtkCList widgets in GTK+ to make sure any
+GraphicsExpose events are handled before the widget is scrolled.
+NoExpose event was received."
+              deprecated="2.18:">
+      <return-value transfer-ownership="full"
+                    doc="a #GdkEventExpose if a GraphicsExpose was received, or %NULL if a">
+        <type name="Event" c:type="GdkEvent*"/>
+      </return-value>
+      <parameters>
+        <parameter name="window"
+                   transfer-ownership="none"
+                   doc="the #GdkWindow to wait for the events for.">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="event_handler_set"
+              c:identifier="gdk_event_handler_set"
+              doc="Sets the function to call to handle all events from GDK.
+Note that GTK+ uses this to install its own event handler, so it is
+usually not useful for GTK+ applications. (Although an application
+can call this function then call gtk_main_do_event() to pass
+events to GTK+.)">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="func"
+                   transfer-ownership="none"
+                   scope="notified"
+                   closure="1"
+                   destroy="2"
+                   doc="the function to call to handle events from GDK.">
+          <type name="EventFunc" c:type="GdkEventFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="user data to pass to the function.">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="notify"
+                   transfer-ownership="none"
+                   scope="call"
+                   doc="the function to call when the handler function is removed, i.e. when gdk_event_handler_set() is called with another event handler.">
+          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="event_peek"
+              c:identifier="gdk_event_peek"
+              doc="If there is an event waiting in the event queue of some open
+display, returns a copy of it. See gdk_display_peek_event().
+events are in any queues. The returned #GdkEvent should be freed with
+gdk_event_free().">
+      <return-value transfer-ownership="full"
+                    doc="a copy of the first #GdkEvent on some event queue, or %NULL if no">
+        <type name="Event" c:type="GdkEvent*"/>
+      </return-value>
+    </function>
+    <function name="event_request_motions"
+              c:identifier="gdk_event_request_motions"
+              doc="Request more motion notifies if @event is a motion notify hint event.
+This function should be used instead of gdk_window_get_pointer() to
+request further motion notifies, because it also works for extension
+events where motion notifies are provided for devices other than the
+core pointer. Coordinate extraction, processing and requesting more
+motion events from a %GDK_MOTION_NOTIFY event usually works like this:
+|[
+{ 
+/&amp;ast; motion_event handler &amp;ast;/
+x = motion_event-&gt;x;
+y = motion_event-&gt;y;
+/&amp;ast; handle (x,y) motion &amp;ast;/
+gdk_event_request_motions (motion_event); /&amp;ast; handles is_hint events &amp;ast;/
+}
+]|"
+              version="2.12">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="event"
+                   transfer-ownership="none"
+                   doc="a valid #GdkEvent">
+          <type name="EventMotion" c:type="GdkEventMotion*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="event_send_client_message_for_display"
+              c:identifier="gdk_event_send_client_message_for_display"
+              doc="On X11, sends an X ClientMessage event to a given window. On
+Windows, sends a message registered with the name
+GDK_WIN32_CLIENT_MESSAGE.
+This could be used for communicating between different
+applications, though the amount of data is limited to 20 bytes on
+X11, and to just four bytes on Windows."
+              version="2.2">
+      <return-value transfer-ownership="none" doc="non-zero on success.">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the #GdkDisplay for the window where the message is to be sent.">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="event"
+                   transfer-ownership="none"
+                   doc="the #GdkEvent to send, which should be a #GdkEventClient.">
+          <type name="Event" c:type="GdkEvent*"/>
+        </parameter>
+        <parameter name="winid"
+                   transfer-ownership="none"
+                   doc="the window to send the client message to.">
+          <type name="NativeWindow" c:type="GdkNativeWindow"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="events_pending"
+              c:identifier="gdk_events_pending"
+              doc="Checks if any events are ready to be processed for any display.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if any events are pending.">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+    </function>
+    <constant name="exclam" value="33">
+      <type name="int"/>
+    </constant>
+    <constant name="exclamdown" value="161">
+      <type name="int"/>
+    </constant>
+    <function name="exit" c:identifier="gdk_exit">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="error_code" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="f" value="102">
+      <type name="int"/>
+    </constant>
+    <constant name="fabovedot" value="16784927">
+      <type name="int"/>
+    </constant>
+    <constant name="femalesymbol" value="2808">
+      <type name="int"/>
+    </constant>
+    <constant name="ff" value="2531">
+      <type name="int"/>
+    </constant>
+    <constant name="figdash" value="2747">
+      <type name="int"/>
+    </constant>
+    <constant name="filledlefttribullet" value="2780">
+      <type name="int"/>
+    </constant>
+    <constant name="filledrectbullet" value="2779">
+      <type name="int"/>
+    </constant>
+    <constant name="filledrighttribullet" value="2781">
+      <type name="int"/>
+    </constant>
+    <constant name="filledtribulletdown" value="2793">
+      <type name="int"/>
+    </constant>
+    <constant name="filledtribulletup" value="2792">
+      <type name="int"/>
+    </constant>
+    <constant name="fiveeighths" value="2757">
+      <type name="int"/>
+    </constant>
+    <constant name="fivesixths" value="2743">
+      <type name="int"/>
+    </constant>
+    <constant name="fivesubscript" value="16785541">
+      <type name="int"/>
+    </constant>
+    <constant name="fivesuperior" value="16785525">
+      <type name="int"/>
+    </constant>
+    <function name="flush" c:identifier="gdk_flush">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="font_from_description"
+              c:identifier="gdk_font_from_description"
+              doc="Load a #GdkFont based on a Pango font description. This font will
+only be an approximation of the Pango font, and
+internationalization will not be handled correctly. This function
+should only be used for legacy code that cannot be easily converted
+to use Pango. Using Pango directly will produce better results.
+cannot be loaded.">
+      <return-value transfer-ownership="full"
+                    doc="the newly loaded font, or %NULL if the font">
+        <type name="Font" c:type="GdkFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="font_desc"
+                   transfer-ownership="none"
+                   doc="a #PangoFontDescription.">
+          <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="font_from_description_for_display"
+              c:identifier="gdk_font_from_description_for_display"
+              doc="Loads a #GdkFont based on a Pango font description for use on @display. 
+This font will only be an approximation of the Pango font, and
+internationalization will not be handled correctly. This function
+should only be used for legacy code that cannot be easily converted
+to use Pango. Using Pango directly will produce better results.
+cannot be loaded."
+              version="2.2">
+      <return-value transfer-ownership="full"
+                    doc="the newly loaded font, or %NULL if the font">
+        <type name="Font" c:type="GdkFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="a #GdkDisplay">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="font_desc"
+                   transfer-ownership="none"
+                   doc="a #PangoFontDescription.">
+          <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="font_load"
+              c:identifier="gdk_font_load"
+              doc="Loads a font.
+The font may be newly loaded or looked up the font in a cache. 
+You should make no assumptions about the initial reference count.">
+      <return-value transfer-ownership="full"
+                    doc="a #GdkFont, or %NULL if the font could not be loaded.">
+        <type name="Font" c:type="GdkFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="font_name"
+                   transfer-ownership="none"
+                   doc="a XLFD describing the font to load.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="font_load_for_display"
+              c:identifier="gdk_font_load_for_display"
+              doc="Loads a font for use on @display.
+The font may be newly loaded or looked up the font in a cache. 
+You should make no assumptions about the initial reference count."
+              version="2.2">
+      <return-value transfer-ownership="full"
+                    doc="a #GdkFont, or %NULL if the font could not be loaded.">
+        <type name="Font" c:type="GdkFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="a #GdkDisplay">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="font_name"
+                   transfer-ownership="none"
+                   doc="a XLFD describing the font to load.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="fontset_load"
+              c:identifier="gdk_fontset_load"
+              doc="Loads a fontset.
+The fontset may be newly loaded or looked up in a cache. 
+You should make no assumptions about the initial reference count.">
+      <return-value transfer-ownership="full"
+                    doc="a #GdkFont, or %NULL if the fontset could not be loaded.">
+        <type name="Font" c:type="GdkFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="fontset_name"
+                   transfer-ownership="none"
+                   doc="a comma-separated list of XLFDs describing the component fonts of the fontset to load.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="fontset_load_for_display"
+              c:identifier="gdk_fontset_load_for_display"
+              doc="Loads a fontset for use on @display.
+The fontset may be newly loaded or looked up in a cache. 
+You should make no assumptions about the initial reference count."
+              version="2.2">
+      <return-value transfer-ownership="full"
+                    doc="a #GdkFont, or %NULL if the fontset could not be loaded.">
+        <type name="Font" c:type="GdkFont*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="a #GdkDisplay">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="fontset_name"
+                   transfer-ownership="none"
+                   doc="a comma-separated list of XLFDs describing the component fonts of the fontset to load.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="fourfifths" value="2741">
+      <type name="int"/>
+    </constant>
+    <constant name="foursubscript" value="16785540">
+      <type name="int"/>
+    </constant>
+    <constant name="foursuperior" value="16785524">
+      <type name="int"/>
+    </constant>
+    <constant name="fourthroot" value="16785948">
+      <type name="int"/>
+    </constant>
+    <function name="free_compound_text" c:identifier="gdk_free_compound_text">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="ctext" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="free_text_list" c:identifier="gdk_free_text_list">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="list" transfer-ownership="none">
+          <array c:type="gchar**">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="function" value="2294">
+      <type name="int"/>
+    </constant>
+    <constant name="g" value="103">
+      <type name="int"/>
+    </constant>
+    <constant name="gabovedot" value="757">
+      <type name="int"/>
+    </constant>
+    <constant name="gbreve" value="699">
+      <type name="int"/>
+    </constant>
+    <constant name="gcaron" value="16777703">
+      <type name="int"/>
+    </constant>
+    <constant name="gcedilla" value="955">
+      <type name="int"/>
+    </constant>
+    <constant name="gcircumflex" value="760">
+      <type name="int"/>
+    </constant>
+    <function name="get_default_root_window"
+              c:identifier="gdk_get_default_root_window"
+              doc="Obtains the root window (parent all other windows are inside)
+for the default display and screen.">
+      <return-value transfer-ownership="full" doc="the default root window">
+        <type name="Window" c:type="GdkWindow*"/>
+      </return-value>
+    </function>
+    <function name="get_display" c:identifier="gdk_get_display">
+      <return-value transfer-ownership="full">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+    </function>
+    <function name="get_display_arg_name"
+              c:identifier="gdk_get_display_arg_name">
+      <return-value transfer-ownership="none">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+    </function>
+    <function name="get_program_class" c:identifier="gdk_get_program_class">
+      <return-value transfer-ownership="none">
+        <type name="utf8" c:type="char*"/>
+      </return-value>
+    </function>
+    <function name="get_show_events"
+              c:identifier="gdk_get_show_events"
+              doc="Gets whether event debugging output is enabled.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if event debugging output is enabled.">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+    </function>
+    <function name="get_use_xshm" c:identifier="gdk_get_use_xshm">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+    </function>
+    <constant name="grave" value="96">
+      <type name="int"/>
+    </constant>
+    <constant name="greater" value="62">
+      <type name="int"/>
+    </constant>
+    <constant name="greaterthanequal" value="2238">
+      <type name="int"/>
+    </constant>
+    <constant name="guillemotleft" value="171">
+      <type name="int"/>
+    </constant>
+    <constant name="guillemotright" value="187">
+      <type name="int"/>
+    </constant>
+    <constant name="h" value="104">
+      <type name="int"/>
+    </constant>
+    <constant name="hairspace" value="2728">
+      <type name="int"/>
+    </constant>
+    <constant name="hcircumflex" value="694">
+      <type name="int"/>
+    </constant>
+    <constant name="heart" value="2798">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_aleph" value="3296">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_ayin" value="3314">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_bet" value="3297">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_beth" value="3297">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_chet" value="3303">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_dalet" value="3299">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_daleth" value="3299">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_doublelowline" value="3295">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_finalkaph" value="3306">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_finalmem" value="3309">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_finalnun" value="3311">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_finalpe" value="3315">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_finalzade" value="3317">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_finalzadi" value="3317">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_gimel" value="3298">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_gimmel" value="3298">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_he" value="3300">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_het" value="3303">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_kaph" value="3307">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_kuf" value="3319">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_lamed" value="3308">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_mem" value="3310">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_nun" value="3312">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_pe" value="3316">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_qoph" value="3319">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_resh" value="3320">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_samech" value="3313">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_samekh" value="3313">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_shin" value="3321">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_taf" value="3322">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_taw" value="3322">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_tet" value="3304">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_teth" value="3304">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_waw" value="3301">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_yod" value="3305">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_zade" value="3318">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_zadi" value="3318">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_zain" value="3302">
+      <type name="int"/>
+    </constant>
+    <constant name="hebrew_zayin" value="3302">
+      <type name="int"/>
+    </constant>
+    <constant name="hexagram" value="2778">
+      <type name="int"/>
+    </constant>
+    <constant name="horizconnector" value="2211">
+      <type name="int"/>
+    </constant>
+    <constant name="horizlinescan1" value="2543">
+      <type name="int"/>
+    </constant>
+    <constant name="horizlinescan3" value="2544">
+      <type name="int"/>
+    </constant>
+    <constant name="horizlinescan5" value="2545">
+      <type name="int"/>
+    </constant>
+    <constant name="horizlinescan7" value="2546">
+      <type name="int"/>
+    </constant>
+    <constant name="horizlinescan9" value="2547">
+      <type name="int"/>
+    </constant>
+    <constant name="hstroke" value="689">
+      <type name="int"/>
+    </constant>
+    <constant name="ht" value="2530">
+      <type name="int"/>
+    </constant>
+    <constant name="hyphen" value="173">
+      <type name="int"/>
+    </constant>
+    <constant name="i" value="105">
+      <type name="int"/>
+    </constant>
+    <constant name="iTouch" value="269025120">
+      <type name="int"/>
+    </constant>
+    <constant name="iacute" value="237">
+      <type name="int"/>
+    </constant>
+    <constant name="ibelowdot" value="16785099">
+      <type name="int"/>
+    </constant>
+    <constant name="ibreve" value="16777517">
+      <type name="int"/>
+    </constant>
+    <constant name="icircumflex" value="238">
+      <type name="int"/>
+    </constant>
+    <constant name="identical" value="2255">
+      <type name="int"/>
+    </constant>
+    <constant name="idiaeresis" value="239">
+      <type name="int"/>
+    </constant>
+    <constant name="idotless" value="697">
+      <type name="int"/>
+    </constant>
+    <constant name="ifonlyif" value="2253">
+      <type name="int"/>
+    </constant>
+    <constant name="igrave" value="236">
+      <type name="int"/>
+    </constant>
+    <constant name="ihook" value="16785097">
+      <type name="int"/>
+    </constant>
+    <constant name="imacron" value="1007">
+      <type name="int"/>
+    </constant>
+    <constant name="implies" value="2254">
+      <type name="int"/>
+    </constant>
+    <constant name="includedin" value="2266">
+      <type name="int"/>
+    </constant>
+    <constant name="includes" value="2267">
+      <type name="int"/>
+    </constant>
+    <constant name="infinity" value="2242">
+      <type name="int"/>
+    </constant>
+    <function name="init" c:identifier="gdk_init">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="argc"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="argv"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <array length="0" c:type="gchar***">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="init_check"
+              c:identifier="gdk_init_check"
+              doc="Initialize the library for use.
+Arguments:
+&quot;argc&quot; is the number of arguments.
+&quot;argv&quot; is an array of strings.
+Results:
+&quot;argc&quot; and &quot;argv&quot; are modified to reflect any arguments
+which were not handled. (Such arguments should either
+be handled by the application or dismissed). If initialization
+fails, returns FALSE, otherwise TRUE.
+Side effects:
+The library is initialized.
+--------------------------------------------------------------">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="argc"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="argv"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <array length="0" c:type="gchar***">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="input_add"
+              c:identifier="gdk_input_add"
+              doc="Establish a callback when a condition becomes true on
+a file descriptor.
+gdk_input_remove()."
+              deprecated="Use g_io_add_watch() on a #GIOChannel"
+              deprecated-version="2.14">
+      <return-value transfer-ownership="none"
+                    doc="a tag that can later be used as an argument to">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="source"
+                   transfer-ownership="none"
+                   doc="a file descriptor.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="condition"
+                   transfer-ownership="none"
+                   doc="the condition.">
+          <type name="InputCondition" c:type="GdkInputCondition"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="3"
+                   doc="the callback function.">
+          <type name="InputFunction" c:type="GdkInputFunction"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="callback data passed to @function.">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="input_add_full"
+              c:identifier="gdk_input_add_full"
+              doc="Establish a callback when a condition becomes true on
+a file descriptor.
+gdk_input_remove()."
+              deprecated="Use g_io_add_watch_full() on a #GIOChannel"
+              deprecated-version="2.14">
+      <return-value transfer-ownership="none"
+                    doc="a tag that can later be used as an argument to">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="source"
+                   transfer-ownership="none"
+                   doc="a file descriptor.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="condition"
+                   transfer-ownership="none"
+                   doc="the condition.">
+          <type name="InputCondition" c:type="GdkInputCondition"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="notified"
+                   closure="3"
+                   destroy="4"
+                   doc="the callback function.">
+          <type name="InputFunction" c:type="GdkInputFunction"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="callback data passed to @function.">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="destroy"
+                   transfer-ownership="none"
+                   scope="call"
+                   doc="callback function to call with @data when the input handler is removed.">
+          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="input_remove" c:identifier="gdk_input_remove">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="tag" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="input_set_extension_events"
+              c:identifier="gdk_input_set_extension_events">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="mask" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="mode" transfer-ownership="none">
+          <type name="ExtensionMode" c:type="GdkExtensionMode"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="integral" value="2239">
+      <type name="int"/>
+    </constant>
+    <constant name="intersection" value="2268">
+      <type name="int"/>
+    </constant>
+    <constant name="iogonek" value="999">
+      <type name="int"/>
+    </constant>
+    <constant name="itilde" value="949">
+      <type name="int"/>
+    </constant>
+    <constant name="j" value="106">
+      <type name="int"/>
+    </constant>
+    <constant name="jcircumflex" value="700">
+      <type name="int"/>
+    </constant>
+    <constant name="jot" value="3018">
+      <type name="int"/>
+    </constant>
+    <constant name="k" value="107">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_A" value="1201">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_CHI" value="1217">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_E" value="1204">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_FU" value="1228">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_HA" value="1226">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_HE" value="1229">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_HI" value="1227">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_HO" value="1230">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_HU" value="1228">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_I" value="1202">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_KA" value="1206">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_KE" value="1209">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_KI" value="1207">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_KO" value="1210">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_KU" value="1208">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_MA" value="1231">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_ME" value="1234">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_MI" value="1232">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_MO" value="1235">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_MU" value="1233">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_N" value="1245">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_NA" value="1221">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_NE" value="1224">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_NI" value="1222">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_NO" value="1225">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_NU" value="1223">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_O" value="1205">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_RA" value="1239">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_RE" value="1242">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_RI" value="1240">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_RO" value="1243">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_RU" value="1241">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_SA" value="1211">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_SE" value="1214">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_SHI" value="1212">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_SO" value="1215">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_SU" value="1213">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_TA" value="1216">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_TE" value="1219">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_TI" value="1217">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_TO" value="1220">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_TSU" value="1218">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_TU" value="1218">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_U" value="1203">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_WA" value="1244">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_WO" value="1190">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_YA" value="1236">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_YO" value="1238">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_YU" value="1237">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_a" value="1191">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_closingbracket" value="1187">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_comma" value="1188">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_conjunctive" value="1189">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_e" value="1194">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_fullstop" value="1185">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_i" value="1192">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_middledot" value="1189">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_o" value="1195">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_openingbracket" value="1186">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_tsu" value="1199">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_tu" value="1199">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_u" value="1193">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_ya" value="1196">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_yo" value="1198">
+      <type name="int"/>
+    </constant>
+    <constant name="kana_yu" value="1197">
+      <type name="int"/>
+    </constant>
+    <constant name="kappa" value="930">
+      <type name="int"/>
+    </constant>
+    <constant name="kcedilla" value="1011">
+      <type name="int"/>
+    </constant>
+    <function name="keyboard_grab" c:identifier="gdk_keyboard_grab">
+      <return-value transfer-ownership="full">
+        <type name="GrabStatus" c:type="GdkGrabStatus"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="owner_events" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="time_" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyboard_grab_info_libgtk_only"
+              c:identifier="gdk_keyboard_grab_info_libgtk_only"
+              doc="Determines information about the current keyboard grab.
+This is not public API and must not be used by applications.
+keyboard grabbed.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if this application currently has the">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the display for which to get the grab information">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="grab_window"
+                   transfer-ownership="none"
+                   doc="location to store current grab window">
+          <type name="Window" c:type="GdkWindow**"/>
+        </parameter>
+        <parameter name="owner_events"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store boolean indicating whether the @owner_events flag to gdk_keyboard_grab() was %TRUE.">
+          <type name="boolean" c:type="gboolean*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyboard_ungrab"
+              c:identifier="gdk_keyboard_ungrab"
+              doc="Ungrabs the keyboard on the default display, if it is grabbed by this 
+application.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="a timestamp from a #GdkEvent, or %GDK_CURRENT_TIME if no timestamp is available.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_convert_case"
+              c:identifier="gdk_keyval_convert_case"
+              doc="Obtains the upper- and lower-case versions of the keyval @symbol.
+Examples of keyvals are #GDK_a, #GDK_Enter, #GDK_F1, etc.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="symbol" transfer-ownership="none" doc="a keyval">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="lower"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for lowercase version of @symbol">
+          <type name="uint" c:type="guint*"/>
+        </parameter>
+        <parameter name="upper"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for uppercase version of @symbol">
+          <type name="uint" c:type="guint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_from_name" c:identifier="gdk_keyval_from_name">
+      <return-value transfer-ownership="none">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval_name" transfer-ownership="none">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_is_lower" c:identifier="gdk_keyval_is_lower">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_is_upper" c:identifier="gdk_keyval_is_upper">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_name" c:identifier="gdk_keyval_name">
+      <return-value transfer-ownership="full">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_to_lower" c:identifier="gdk_keyval_to_lower">
+      <return-value transfer-ownership="none">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_to_unicode"
+              c:identifier="gdk_keyval_to_unicode"
+              doc="Convert from a GDK key symbol to the corresponding ISO10646 (Unicode)
+character.
+is no corresponding character.">
+      <return-value transfer-ownership="none"
+                    doc="the corresponding unicode character, or 0 if there">
+        <type name="uint32" c:type="guint32"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval"
+                   transfer-ownership="none"
+                   doc="a GDK key symbol">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="keyval_to_upper" c:identifier="gdk_keyval_to_upper">
+      <return-value transfer-ownership="none">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="keyval" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="kra" value="930">
+      <type name="int"/>
+    </constant>
+    <constant name="l" value="108">
+      <type name="int"/>
+    </constant>
+    <constant name="lacute" value="485">
+      <type name="int"/>
+    </constant>
+    <constant name="latincross" value="2777">
+      <type name="int"/>
+    </constant>
+    <constant name="lbelowdot" value="16784951">
+      <type name="int"/>
+    </constant>
+    <constant name="lcaron" value="437">
+      <type name="int"/>
+    </constant>
+    <constant name="lcedilla" value="950">
+      <type name="int"/>
+    </constant>
+    <constant name="leftanglebracket" value="2748">
+      <type name="int"/>
+    </constant>
+    <constant name="leftarrow" value="2299">
+      <type name="int"/>
+    </constant>
+    <constant name="leftcaret" value="2979">
+      <type name="int"/>
+    </constant>
+    <constant name="leftdoublequotemark" value="2770">
+      <type name="int"/>
+    </constant>
+    <constant name="leftmiddlecurlybrace" value="2223">
+      <type name="int"/>
+    </constant>
+    <constant name="leftopentriangle" value="2764">
+      <type name="int"/>
+    </constant>
+    <constant name="leftpointer" value="2794">
+      <type name="int"/>
+    </constant>
+    <constant name="leftradical" value="2209">
+      <type name="int"/>
+    </constant>
+    <constant name="leftshoe" value="3034">
+      <type name="int"/>
+    </constant>
+    <constant name="leftsinglequotemark" value="2768">
+      <type name="int"/>
+    </constant>
+    <constant name="leftt" value="2548">
+      <type name="int"/>
+    </constant>
+    <constant name="lefttack" value="3036">
+      <type name="int"/>
+    </constant>
+    <constant name="less" value="60">
+      <type name="int"/>
+    </constant>
+    <constant name="lessthanequal" value="2236">
+      <type name="int"/>
+    </constant>
+    <constant name="lf" value="2533">
+      <type name="int"/>
+    </constant>
+    <function name="list_visuals"
+              c:identifier="gdk_list_visuals"
+              doc="Lists the available visuals for the default screen.
+(See gdk_screen_list_visuals())
+A visual describes a hardware image data format.
+For example, a visual might support 24-bit color, or 8-bit color,
+and might expect pixels to be in a certain format.
+Call g_list_free() on the return value when you&apos;re finished with it."
+              introspectable="0">
+      <return-value transfer-ownership="full"
+                    doc="a list of visuals; the list must be freed, but not its contents">
+        <type name="GLib.List" c:type="GList*"/>
+      </return-value>
+    </function>
+    <constant name="logicaland" value="2270">
+      <type name="int"/>
+    </constant>
+    <constant name="logicalor" value="2271">
+      <type name="int"/>
+    </constant>
+    <constant name="lowleftcorner" value="2541">
+      <type name="int"/>
+    </constant>
+    <constant name="lowrightcorner" value="2538">
+      <type name="int"/>
+    </constant>
+    <constant name="lstroke" value="435">
+      <type name="int"/>
+    </constant>
+    <constant name="m" value="109">
+      <type name="int"/>
+    </constant>
+    <constant name="mabovedot" value="16784961">
+      <type name="int"/>
+    </constant>
+    <constant name="macron" value="175">
+      <type name="int"/>
+    </constant>
+    <constant name="malesymbol" value="2807">
+      <type name="int"/>
+    </constant>
+    <constant name="maltesecross" value="2800">
+      <type name="int"/>
+    </constant>
+    <constant name="marker" value="2751">
+      <type name="int"/>
+    </constant>
+    <constant name="masculine" value="186">
+      <type name="int"/>
+    </constant>
+    <function name="mbstowcs"
+              c:identifier="gdk_mbstowcs"
+              doc="Converts a multi-byte string to a wide character string.
+(The function name comes from an acronym of &apos;Multi-Byte String TO Wide
+Character String&apos;).
+the conversion failed.">
+      <return-value transfer-ownership="none"
+                    doc="the number of wide characters written into @dest, or -1 if">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="dest"
+                   transfer-ownership="none"
+                   doc="the space to place the converted wide character string into.">
+          <type name="WChar" c:type="GdkWChar*"/>
+        </parameter>
+        <parameter name="src"
+                   transfer-ownership="none"
+                   doc="the multi-byte string to convert, which must be nul-terminated.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="dest_max"
+                   transfer-ownership="none"
+                   doc="the maximum number of wide characters to place in @dest.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="minus" value="45">
+      <type name="int"/>
+    </constant>
+    <constant name="minutes" value="2774">
+      <type name="int"/>
+    </constant>
+    <constant name="mu" value="181">
+      <type name="int"/>
+    </constant>
+    <constant name="multiply" value="215">
+      <type name="int"/>
+    </constant>
+    <constant name="musicalflat" value="2806">
+      <type name="int"/>
+    </constant>
+    <constant name="musicalsharp" value="2805">
+      <type name="int"/>
+    </constant>
+    <constant name="n" value="110">
+      <type name="int"/>
+    </constant>
+    <constant name="nabla" value="2245">
+      <type name="int"/>
+    </constant>
+    <constant name="nacute" value="497">
+      <type name="int"/>
+    </constant>
+    <constant name="ncaron" value="498">
+      <type name="int"/>
+    </constant>
+    <constant name="ncedilla" value="1009">
+      <type name="int"/>
+    </constant>
+    <constant name="ninesubscript" value="16785545">
+      <type name="int"/>
+    </constant>
+    <constant name="ninesuperior" value="16785529">
+      <type name="int"/>
+    </constant>
+    <constant name="nl" value="2536">
+      <type name="int"/>
+    </constant>
+    <constant name="nobreakspace" value="160">
+      <type name="int"/>
+    </constant>
+    <constant name="notapproxeq" value="16785991">
+      <type name="int"/>
+    </constant>
+    <constant name="notelementof" value="16785929">
+      <type name="int"/>
+    </constant>
+    <constant name="notequal" value="2237">
+      <type name="int"/>
+    </constant>
+    <constant name="notidentical" value="16786018">
+      <type name="int"/>
+    </constant>
+    <function name="notify_startup_complete"
+              c:identifier="gdk_notify_startup_complete"
+              doc="Indicates to the GUI environment that the application has finished
+loading. If the applications opens windows, this function is
+normally called after opening the application&apos;s initial set of
+windows.
+GTK+ will call this function automatically after opening the first
+#GtkWindow unless gtk_window_set_auto_startup_notification() is called 
+to disable that feature."
+              version="2.2">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="notify_startup_complete_with_id"
+              c:identifier="gdk_notify_startup_complete_with_id"
+              doc="Indicates to the GUI environment that the application has finished
+loading, using a given identifier.
+GTK+ will call this function automatically for #GtkWindow with custom
+startup-notification identifier unless
+gtk_window_set_auto_startup_notification() is called to disable
+that feature."
+              version="2.12">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="startup_id"
+                   transfer-ownership="none"
+                   doc="a startup-notification identifier, for which notification process should be completed">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="notsign" value="172">
+      <type name="int"/>
+    </constant>
+    <constant name="ntilde" value="241">
+      <type name="int"/>
+    </constant>
+    <constant name="numbersign" value="35">
+      <type name="int"/>
+    </constant>
+    <constant name="numerosign" value="1712">
+      <type name="int"/>
+    </constant>
+    <constant name="o" value="111">
+      <type name="int"/>
+    </constant>
+    <constant name="oacute" value="243">
+      <type name="int"/>
+    </constant>
+    <constant name="obarred" value="16777845">
+      <type name="int"/>
+    </constant>
+    <constant name="obelowdot" value="16785101">
+      <type name="int"/>
+    </constant>
+    <constant name="ocaron" value="16777682">
+      <type name="int"/>
+    </constant>
+    <constant name="ocircumflex" value="244">
+      <type name="int"/>
+    </constant>
+    <constant name="ocircumflexacute" value="16785105">
+      <type name="int"/>
+    </constant>
+    <constant name="ocircumflexbelowdot" value="16785113">
+      <type name="int"/>
+    </constant>
+    <constant name="ocircumflexgrave" value="16785107">
+      <type name="int"/>
+    </constant>
+    <constant name="ocircumflexhook" value="16785109">
+      <type name="int"/>
+    </constant>
+    <constant name="ocircumflextilde" value="16785111">
+      <type name="int"/>
+    </constant>
+    <constant name="odiaeresis" value="246">
+      <type name="int"/>
+    </constant>
+    <constant name="odoubleacute" value="501">
+      <type name="int"/>
+    </constant>
+    <constant name="oe" value="5053">
+      <type name="int"/>
+    </constant>
+    <function name="offscreen_window_get_embedder"
+              c:identifier="gdk_offscreen_window_get_embedder"
+              doc="Gets the window that @window is embedded in.
+embedded offscreen window"
+              version="2.18">
+      <return-value transfer-ownership="full"
+                    doc="the embedding #GdkWindow, or %NULL if @window is not an">
+        <type name="Window" c:type="GdkWindow*"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none" doc="a #GdkWindow">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="offscreen_window_get_pixmap"
+              c:identifier="gdk_offscreen_window_get_pixmap"
+              doc="Gets the offscreen pixmap that an offscreen window renders into.
+If you need to keep this around over window resizes, you need to
+add a reference to it."
+              version="2.18">
+      <return-value transfer-ownership="full"
+                    doc="The offscreen pixmap, or %NULL if not offscreen">
+        <type name="Pixmap" c:type="GdkPixmap*"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none" doc="a #GdkWindow">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="offscreen_window_set_embedder"
+              c:identifier="gdk_offscreen_window_set_embedder"
+              doc="Sets @window to be embedded in @embedder.
+To fully embed an offscreen window, in addition to calling this
+function, it is also necessary to handle the #GdkWindow::pick-embedded-child
+signal on the @embedder and the #GdkWindow::to-embedder and
+#GdkWindow::from-embedder signals on @window."
+              version="2.18">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none" doc="a #GdkWindow">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="embedder"
+                   transfer-ownership="none"
+                   doc="the #GdkWindow that @window gets embedded in">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="ogonek" value="434">
+      <type name="int"/>
+    </constant>
+    <constant name="ograve" value="242">
+      <type name="int"/>
+    </constant>
+    <constant name="ohook" value="16785103">
+      <type name="int"/>
+    </constant>
+    <constant name="ohorn" value="16777633">
+      <type name="int"/>
+    </constant>
+    <constant name="ohornacute" value="16785115">
+      <type name="int"/>
+    </constant>
+    <constant name="ohornbelowdot" value="16785123">
+      <type name="int"/>
+    </constant>
+    <constant name="ohorngrave" value="16785117">
+      <type name="int"/>
+    </constant>
+    <constant name="ohornhook" value="16785119">
+      <type name="int"/>
+    </constant>
+    <constant name="ohorntilde" value="16785121">
+      <type name="int"/>
+    </constant>
+    <constant name="omacron" value="1010">
+      <type name="int"/>
+    </constant>
+    <constant name="oneeighth" value="2755">
+      <type name="int"/>
+    </constant>
+    <constant name="onefifth" value="2738">
+      <type name="int"/>
+    </constant>
+    <constant name="onehalf" value="189">
+      <type name="int"/>
+    </constant>
+    <constant name="onequarter" value="188">
+      <type name="int"/>
+    </constant>
+    <constant name="onesixth" value="2742">
+      <type name="int"/>
+    </constant>
+    <constant name="onesubscript" value="16785537">
+      <type name="int"/>
+    </constant>
+    <constant name="onesuperior" value="185">
+      <type name="int"/>
+    </constant>
+    <constant name="onethird" value="2736">
+      <type name="int"/>
+    </constant>
+    <constant name="ooblique" value="248">
+      <type name="int"/>
+    </constant>
+    <constant name="openrectbullet" value="2786">
+      <type name="int"/>
+    </constant>
+    <constant name="openstar" value="2789">
+      <type name="int"/>
+    </constant>
+    <constant name="opentribulletdown" value="2788">
+      <type name="int"/>
+    </constant>
+    <constant name="opentribulletup" value="2787">
+      <type name="int"/>
+    </constant>
+    <constant name="ordfeminine" value="170">
+      <type name="int"/>
+    </constant>
+    <constant name="oslash" value="248">
+      <type name="int"/>
+    </constant>
+    <constant name="otilde" value="245">
+      <type name="int"/>
+    </constant>
+    <constant name="overbar" value="3008">
+      <type name="int"/>
+    </constant>
+    <constant name="overline" value="1150">
+      <type name="int"/>
+    </constant>
+    <constant name="p" value="112">
+      <type name="int"/>
+    </constant>
+    <constant name="pabovedot" value="16784983">
+      <type name="int"/>
+    </constant>
+    <function name="pango_context_get"
+              c:identifier="gdk_pango_context_get"
+              doc="Creates a #PangoContext for the default GDK screen.
+The context must be freed when you&apos;re finished with it.
+When using GTK+, normally you should use gtk_widget_get_pango_context()
+instead of this function, to get the appropriate context for
+the widget you intend to render text onto.
+The newly created context will have the default font options (see
+#cairo_font_options_t) for the default screen; if these options
+change it will not be updated. Using gtk_widget_get_pango_context()
+is more convenient if you want to keep a context around and track
+changes to the screen&apos;s font rendering settings.">
+      <return-value transfer-ownership="full"
+                    doc="a new #PangoContext for the default display">
+        <type name="Pango.Context" c:type="PangoContext*"/>
+      </return-value>
+    </function>
+    <function name="pango_context_get_for_screen"
+              c:identifier="gdk_pango_context_get_for_screen"
+              doc="Creates a #PangoContext for @screen.
+The context must be freed when you&apos;re finished with it.
+When using GTK+, normally you should use gtk_widget_get_pango_context()
+instead of this function, to get the appropriate context for
+the widget you intend to render text onto.
+The newly created context will have the default font options
+(see #cairo_font_options_t) for the screen; if these options
+change it will not be updated. Using gtk_widget_get_pango_context()
+is more convenient if you want to keep a context around and track
+changes to the screen&apos;s font rendering settings."
+              version="2.2">
+      <return-value transfer-ownership="full"
+                    doc="a new #PangoContext for @screen">
+        <type name="Pango.Context" c:type="PangoContext*"/>
+      </return-value>
+      <parameters>
+        <parameter name="screen"
+                   transfer-ownership="none"
+                   doc="the #GdkScreen for which the context is to be created.">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_context_set_colormap"
+              c:identifier="gdk_pango_context_set_colormap"
+              doc="This function used to set the colormap to be used for drawing with
+context used for drawing, so calling this function is no longer
+necessary.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="context"
+                   transfer-ownership="none"
+                   doc="a #PangoContext">
+          <type name="Pango.Context" c:type="PangoContext*"/>
+        </parameter>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_layout_get_clip_region"
+              c:identifier="gdk_pango_layout_get_clip_region"
+              doc="Obtains a clip region which contains the areas where the given ranges
+of text would be drawn. @x_origin and @y_origin are the same position
+you would pass to gdk_draw_layout_line(). @index_ranges should contain
+ranges of bytes in the layout&apos;s text.
+Note that the regions returned correspond to logical extents of the text
+ranges, not ink extents. So the drawn layout may in fact touch areas out of
+the clip region.  The clip region is mainly useful for highlightling parts
+of text, such as when text is selected.">
+      <return-value transfer-ownership="full"
+                    doc="a clip region containing the given ranges">
+        <type name="Region" c:type="GdkRegion*"/>
+      </return-value>
+      <parameters>
+        <parameter name="layout"
+                   transfer-ownership="none"
+                   doc="a #PangoLayout">
+          <type name="Pango.Layout" c:type="PangoLayout*"/>
+        </parameter>
+        <parameter name="x_origin"
+                   transfer-ownership="none"
+                   doc="X pixel where you intend to draw the layout with this clip">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y_origin"
+                   transfer-ownership="none"
+                   doc="Y pixel where you intend to draw the layout with this clip">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="index_ranges"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="none"
+                   doc="array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="n_ranges"
+                   transfer-ownership="none"
+                   doc="number of ranges in @index_ranges, i.e. half the size of @index_ranges">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pango_layout_line_get_clip_region"
+              c:identifier="gdk_pango_layout_line_get_clip_region"
+              doc="Obtains a clip region which contains the areas where the given
+ranges of text would be drawn. @x_origin and @y_origin are the same
+position you would pass to gdk_draw_layout_line(). @index_ranges
+should contain ranges of bytes in the layout&apos;s text. The clip
+region will include space to the left or right of the line (to the
+layout bounding box) if you have indexes above or below the indexes
+contained inside the line. This is to draw the selection all the way
+to the side of the layout. However, the clip region is in line coordinates,
+not layout coordinates.
+Note that the regions returned correspond to logical extents of the text
+ranges, not ink extents. So the drawn line may in fact touch areas out of
+the clip region.  The clip region is mainly useful for highlightling parts
+of text, such as when text is selected.">
+      <return-value transfer-ownership="full"
+                    doc="a clip region containing the given ranges">
+        <type name="Region" c:type="GdkRegion*"/>
+      </return-value>
+      <parameters>
+        <parameter name="line"
+                   transfer-ownership="none"
+                   doc="a #PangoLayoutLine">
+          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
+        </parameter>
+        <parameter name="x_origin"
+                   transfer-ownership="none"
+                   doc="X pixel where you intend to draw the layout line with this clip">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y_origin"
+                   transfer-ownership="none"
+                   doc="baseline pixel where you intend to draw the layout line with this clip">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="index_ranges"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="none"
+                   doc="array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="n_ranges"
+                   transfer-ownership="none"
+                   doc="number of ranges in @index_ranges, i.e. half the size of @index_ranges">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="paragraph" value="182">
+      <type name="int"/>
+    </constant>
+    <constant name="parenleft" value="40">
+      <type name="int"/>
+    </constant>
+    <constant name="parenright" value="41">
+      <type name="int"/>
+    </constant>
+    <function name="parse_args"
+              c:identifier="gdk_parse_args"
+              doc="Parse command line arguments, and store for future
+use by calls to gdk_display_open().
+Any arguments used by GDK are removed from the array and @argc and @argv are
+updated accordingly.
+You shouldn&apos;t call this function explicitely if you are using
+gtk_init(), gtk_init_check(), gdk_init(), or gdk_init_check()."
+              version="2.2">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="argc"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the number of command line arguments.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="argv"
+                   transfer-ownership="none"
+                   doc="the array of command line arguments.">
+          <type name="utf8" c:type="gchar***"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="partdifferential" value="16785922">
+      <type name="int"/>
+    </constant>
+    <constant name="partialderivative" value="2287">
+      <type name="int"/>
+    </constant>
+    <constant name="percent" value="37">
+      <type name="int"/>
+    </constant>
+    <constant name="period" value="46">
+      <type name="int"/>
+    </constant>
+    <constant name="periodcentered" value="183">
+      <type name="int"/>
+    </constant>
+    <constant name="phonographcopyright" value="2811">
+      <type name="int"/>
+    </constant>
+    <function name="pixbuf_get_from_drawable"
+              c:identifier="gdk_pixbuf_get_from_drawable"
+              doc="Transfers image data from a #GdkDrawable and converts it to an RGB(A)
+representation inside a #GdkPixbuf. In other words, copies
+image data from a server-side drawable to a client-side RGB(A) buffer.
+This allows you to efficiently read individual pixels on the client side.
+If the drawable @src has no colormap (gdk_drawable_get_colormap()
+returns %NULL), then a suitable colormap must be specified.
+Typically a #GdkWindow or a pixmap created by passing a #GdkWindow
+to gdk_pixmap_new() will already have a colormap associated with
+it.  If the drawable has a colormap, the @cmap argument will be
+ignored.  If the drawable is a bitmap (1 bit per pixel pixmap),
+then a colormap is not required; pixels with a value of 1 are
+assumed to be white, and pixels with a value of 0 are assumed to be
+black. For taking screenshots, gdk_colormap_get_system() returns
+the correct colormap to use.
+If the specified destination pixbuf @dest is %NULL, then this
+function will create an RGB pixbuf with 8 bits per channel and no
+alpha, with the same size specified by the @width and @height
+arguments.  In this case, the @dest_x and @dest_y arguments must be
+specified as 0.  If the specified destination pixbuf is not %NULL
+and it contains alpha information, then the filled pixels will be
+set to full opacity (alpha = 255).
+If the specified drawable is a pixmap, then the requested source
+rectangle must be completely contained within the pixmap, otherwise
+the function will return %NULL. For pixmaps only (not for windows)
+passing -1 for width or height is allowed to mean the full width
+or height of the pixmap.
+If the specified drawable is a window, and the window is off the
+screen, then there is no image data in the obscured/offscreen
+regions to be placed in the pixbuf. The contents of portions of the
+pixbuf corresponding to the offscreen region are undefined.
+If the window you&apos;re obtaining data from is partially obscured by
+other windows, then the contents of the pixbuf areas corresponding
+to the obscured regions are undefined.
+If the target drawable is not mapped (typically because it&apos;s
+iconified/minimized or not on the current workspace), then %NULL
+will be returned.
+If memory can&apos;t be allocated for the return value, %NULL will be returned
+instead.
+(In short, there are several ways this function can fail, and if it fails
+it returns %NULL; so check the return value.)
+This function calls gdk_drawable_get_image() internally and
+converts the resulting image to a #GdkPixbuf, so the
+documentation for gdk_drawable_get_image() may also be relevant.
+pixbuf with a reference count of 1 if no destination pixbuf was specified, or %NULL on error">
+      <return-value transfer-ownership="full"
+                    doc="The same pixbuf as @dest if it was non-%NULL, or a newly-created">
+        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+      </return-value>
+      <parameters>
+        <parameter name="dest"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="Destination pixbuf, or %NULL if a new pixbuf should be created.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="src" transfer-ownership="none" doc="Source drawable.">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="cmap"
+                   transfer-ownership="none"
+                   doc="A colormap if @src doesn&apos;t have one set.">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="src_x"
+                   transfer-ownership="none"
+                   doc="Source X coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="src_y"
+                   transfer-ownership="none"
+                   doc="Source Y coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_x"
+                   transfer-ownership="none"
+                   doc="Destination X coordinate in pixbuf, or 0 if @dest is NULL.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_y"
+                   transfer-ownership="none"
+                   doc="Destination Y coordinate in pixbuf, or 0 if @dest is NULL.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="Width in pixels of region to get.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="Height in pixels of region to get.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pixbuf_get_from_image"
+              c:identifier="gdk_pixbuf_get_from_image"
+              doc="Same as gdk_pixbuf_get_from_drawable() but gets the pixbuf from
+an image.">
+      <return-value transfer-ownership="full"
+                    doc="@dest, newly-created pixbuf if @dest was %NULL, %NULL on error">
+        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+      </return-value>
+      <parameters>
+        <parameter name="dest"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="Destination pixbuf, or %NULL if a new pixbuf should be created.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="src"
+                   transfer-ownership="none"
+                   doc="Source #GdkImage.">
+          <type name="Image" c:type="GdkImage*"/>
+        </parameter>
+        <parameter name="cmap"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="A colormap, or %NULL to use the one for @src">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="src_x"
+                   transfer-ownership="none"
+                   doc="Source X coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="src_y"
+                   transfer-ownership="none"
+                   doc="Source Y coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_x"
+                   transfer-ownership="none"
+                   doc="Destination X coordinate in pixbuf, or 0 if @dest is NULL.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_y"
+                   transfer-ownership="none"
+                   doc="Destination Y coordinate in pixbuf, or 0 if @dest is NULL.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="Width in pixels of region to get.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="Height in pixels of region to get.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pixbuf_render_pixmap_and_mask"
+              c:identifier="gdk_pixbuf_render_pixmap_and_mask"
+              doc="Creates a pixmap and a mask bitmap which are returned in the @pixmap_return
+and @mask_return arguments, respectively, and renders a pixbuf and its
+corresponding thresholded alpha mask to them.  This is merely a convenience
+function; applications that need to render pixbufs with dither offsets or to
+given drawables should use gdk_draw_pixbuf() and gdk_pixbuf_render_threshold_alpha().
+The pixmap that is created is created for the colormap returned
+by gdk_rgb_get_colormap(). You normally will want to instead use
+the actual colormap for a widget, and use
+gdk_pixbuf_render_pixmap_and_mask_for_colormap().
+If the pixbuf does not have an alpha channel, then * mask_return will be set
+to %NULL.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pixbuf" transfer-ownership="none" doc="A pixbuf.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="pixmap_return"
+                   transfer-ownership="none"
+                   doc="Location to store a pointer to the created pixmap, or %NULL if the pixmap is not needed.">
+          <type name="Pixmap" c:type="GdkPixmap**"/>
+        </parameter>
+        <parameter name="mask_return"
+                   transfer-ownership="none"
+                   doc="Location to store a pointer to the created mask, or %NULL if the mask is not needed.">
+          <type name="Bitmap" c:type="GdkBitmap**"/>
+        </parameter>
+        <parameter name="alpha_threshold"
+                   transfer-ownership="none"
+                   doc="Threshold value for opacity values.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pixbuf_render_pixmap_and_mask_for_colormap"
+              c:identifier="gdk_pixbuf_render_pixmap_and_mask_for_colormap"
+              doc="Creates a pixmap and a mask bitmap which are returned in the @pixmap_return
+and @mask_return arguments, respectively, and renders a pixbuf and its
+corresponding tresholded alpha mask to them.  This is merely a convenience
+function; applications that need to render pixbufs with dither offsets or to
+given drawables should use gdk_draw_pixbuf(), and gdk_pixbuf_render_threshold_alpha().
+The pixmap that is created uses the #GdkColormap specified by @colormap.
+This colormap must match the colormap of the window where the pixmap
+will eventually be used or an error will result.
+If the pixbuf does not have an alpha channel, then * mask_return will be set
+to %NULL.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pixbuf" transfer-ownership="none" doc="A pixbuf.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="A #GdkColormap">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="pixmap_return"
+                   transfer-ownership="none"
+                   doc="Location to store a pointer to the created pixmap, or %NULL if the pixmap is not needed.">
+          <type name="Pixmap" c:type="GdkPixmap**"/>
+        </parameter>
+        <parameter name="mask_return"
+                   transfer-ownership="none"
+                   doc="Location to store a pointer to the created mask, or %NULL if the mask is not needed.">
+          <type name="Bitmap" c:type="GdkBitmap**"/>
+        </parameter>
+        <parameter name="alpha_threshold"
+                   transfer-ownership="none"
+                   doc="Threshold value for opacity values.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pixbuf_render_threshold_alpha"
+              c:identifier="gdk_pixbuf_render_threshold_alpha"
+              doc="Takes the opacity values in a rectangular portion of a pixbuf and thresholds
+them to produce a bi-level alpha mask that can be used as a clipping mask for
+a drawable.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pixbuf" transfer-ownership="none" doc="A pixbuf.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="bitmap"
+                   transfer-ownership="none"
+                   doc="Bitmap where the bilevel mask will be painted to.">
+          <type name="Bitmap" c:type="GdkBitmap*"/>
+        </parameter>
+        <parameter name="src_x"
+                   transfer-ownership="none"
+                   doc="Source X coordinate.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="src_y"
+                   transfer-ownership="none"
+                   doc="source Y coordinate.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_x"
+                   transfer-ownership="none"
+                   doc="Destination X coordinate.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_y"
+                   transfer-ownership="none"
+                   doc="Destination Y coordinate.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="Width of region to threshold, or -1 to use pixbuf width">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="Height of region to threshold, or -1 to use pixbuf height">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="alpha_threshold"
+                   transfer-ownership="none"
+                   doc="Opacity values below this will be painted as zero; all other values will be painted as one.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pixbuf_render_to_drawable"
+              c:identifier="gdk_pixbuf_render_to_drawable"
+              doc="Renders a rectangular portion of a pixbuf to a drawable while using the
+specified GC.  This is done using GdkRGB, so the specified drawable must have
+the GdkRGB visual and colormap.  Note that this function will ignore the
+opacity information for images with an alpha channel; the GC must already
+have the clipping mask set if you want transparent regions to show through.
+For an explanation of dither offsets, see the GdkRGB documentation.  In
+brief, the dither offset is important when re-rendering partial regions of an
+image to a rendered version of the full image, or for when the offsets to a
+base position change, as in scrolling.  The dither matrix has to be shifted
+for consistent visual results.  If you do not have any of these cases, the
+dither offsets can be both zero."
+              deprecated="This function is obsolete. Use gdk_draw_pixbuf() instead."
+              deprecated-version="2.4">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pixbuf" transfer-ownership="none" doc="A pixbuf.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="Destination drawable.">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="gc"
+                   transfer-ownership="none"
+                   doc="GC used for rendering.">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="src_x"
+                   transfer-ownership="none"
+                   doc="Source X coordinate within pixbuf.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="src_y"
+                   transfer-ownership="none"
+                   doc="Source Y coordinate within pixbuf.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_x"
+                   transfer-ownership="none"
+                   doc="Destination X coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_y"
+                   transfer-ownership="none"
+                   doc="Destination Y coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="Width of region to render, in pixels, or -1 to use pixbuf width">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="Height of region to render, in pixels, or -1 to use pixbuf height">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dither"
+                   transfer-ownership="none"
+                   doc="Dithering mode for GdkRGB.">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="x_dither"
+                   transfer-ownership="none"
+                   doc="X offset for dither.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="y_dither"
+                   transfer-ownership="none"
+                   doc="Y offset for dither.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pixbuf_render_to_drawable_alpha"
+              c:identifier="gdk_pixbuf_render_to_drawable_alpha"
+              doc="Renders a rectangular portion of a pixbuf to a drawable.  The destination
+drawable must have a colormap. All windows have a colormap, however, pixmaps
+only have colormap by default if they were created with a non-%NULL window argument.
+Otherwise a colormap must be set on them with gdk_drawable_set_colormap.
+On older X servers, rendering pixbufs with an alpha channel involves round trips
+to the X server, and may be somewhat slow."
+              deprecated="This function is obsolete. Use gdk_draw_pixbuf() instead."
+              deprecated-version="2.4">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="pixbuf" transfer-ownership="none" doc="A pixbuf.">
+          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
+        </parameter>
+        <parameter name="drawable"
+                   transfer-ownership="none"
+                   doc="Destination drawable.">
+          <type name="Drawable" c:type="GdkDrawable*"/>
+        </parameter>
+        <parameter name="src_x"
+                   transfer-ownership="none"
+                   doc="Source X coordinate within pixbuf.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="src_y"
+                   transfer-ownership="none"
+                   doc="Source Y coordinates within pixbuf.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_x"
+                   transfer-ownership="none"
+                   doc="Destination X coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dest_y"
+                   transfer-ownership="none"
+                   doc="Destination Y coordinate within drawable.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="width"
+                   transfer-ownership="none"
+                   doc="Width of region to render, in pixels, or -1 to use pixbuf width.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="height"
+                   transfer-ownership="none"
+                   doc="Height of region to render, in pixels, or -1 to use pixbuf height.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="alpha_mode"
+                   transfer-ownership="none"
+                   doc="Ignored. Present for backwards compatibility.">
+          <type name="GdkPixbuf.PixbufAlphaMode" c:type="GdkPixbufAlphaMode"/>
+        </parameter>
+        <parameter name="alpha_threshold"
+                   transfer-ownership="none"
+                   doc="Ignored. Present for backwards compatibility">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="dither"
+                   transfer-ownership="none"
+                   doc="Dithering mode for GdkRGB.">
+          <type name="RgbDither" c:type="GdkRgbDither"/>
+        </parameter>
+        <parameter name="x_dither"
+                   transfer-ownership="none"
+                   doc="X offset for dither.">
+          <type name="int" c:type="int"/>
+        </parameter>
+        <parameter name="y_dither"
+                   transfer-ownership="none"
+                   doc="Y offset for dither.">
+          <type name="int" c:type="int"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="plus" value="43">
+      <type name="int"/>
+    </constant>
+    <constant name="plusminus" value="177">
+      <type name="int"/>
+    </constant>
+    <function name="pointer_grab" c:identifier="gdk_pointer_grab">
+      <return-value transfer-ownership="full">
+        <type name="GrabStatus" c:type="GdkGrabStatus"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="owner_events" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="event_mask" transfer-ownership="none">
+          <type name="EventMask" c:type="GdkEventMask"/>
+        </parameter>
+        <parameter name="confine_to" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="cursor" transfer-ownership="none">
+          <type name="Cursor" c:type="GdkCursor*"/>
+        </parameter>
+        <parameter name="time_" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pointer_grab_info_libgtk_only"
+              c:identifier="gdk_pointer_grab_info_libgtk_only"
+              doc="Determines information about the current pointer grab.
+This is not public API and must not be used by applications.
+pointer grabbed.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if this application currently has the">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the #GdkDisplay for which to get the grab information">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="grab_window"
+                   transfer-ownership="none"
+                   doc="location to store current grab window">
+          <type name="Window" c:type="GdkWindow**"/>
+        </parameter>
+        <parameter name="owner_events"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store boolean indicating whether the @owner_events flag to gdk_pointer_grab() was %TRUE.">
+          <type name="boolean" c:type="gboolean*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pointer_is_grabbed"
+              c:identifier="gdk_pointer_is_grabbed"
+              doc="Returns %TRUE if the pointer on the default display is currently 
+grabbed by this application.
+Note that this does not take the inmplicit pointer grab on button
+presses into account.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the pointer is currently grabbed by this application.*">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+    </function>
+    <function name="pointer_ungrab"
+              c:identifier="gdk_pointer_ungrab"
+              doc="Ungrabs the pointer on the default display, if it is grabbed by this 
+application.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="a timestamp from a #GdkEvent, or %GDK_CURRENT_TIME if no timestamp is available.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="pre_parse_libgtk_only"
+              c:identifier="gdk_pre_parse_libgtk_only">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <constant name="prescription" value="2772">
+      <type name="int"/>
+    </constant>
+    <constant name="prolongedsound" value="1200">
+      <type name="int"/>
+    </constant>
+    <function name="property_change" c:identifier="gdk_property_change">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="property" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="type" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="format" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="mode" transfer-ownership="none">
+          <type name="PropMode" c:type="GdkPropMode"/>
+        </parameter>
+        <parameter name="data" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="nelements" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="property_delete" c:identifier="gdk_property_delete">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="property" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="property_get" c:identifier="gdk_property_get">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="property" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="type" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="offset" transfer-ownership="none">
+          <type name="ulong" c:type="gulong"/>
+        </parameter>
+        <parameter name="length" transfer-ownership="none">
+          <type name="ulong" c:type="gulong"/>
+        </parameter>
+        <parameter name="pdelete" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="actual_property_type" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom*"/>
+        </parameter>
+        <parameter name="actual_format"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="actual_length"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="data"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="uint8" c:type="guchar**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="punctspace" value="2726">
+      <type name="int"/>
+    </constant>
+    <constant name="q" value="113">
+      <type name="int"/>
+    </constant>
+    <constant name="quad" value="3020">
+      <type name="int"/>
+    </constant>
+    <function name="query_depths"
+              c:identifier="gdk_query_depths"
+              doc="This function returns the available bit depths for the default
+screen. It&apos;s equivalent to listing the visuals
+(gdk_list_visuals()) and then looking at the depth field in each
+visual, removing duplicates.
+The array returned by this function should not be freed.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="depths"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for available depths">
+          <array c:type="gint**">
+            <type name="int"/>
+          </array>
+        </parameter>
+        <parameter name="count"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for number of available depths">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="query_visual_types"
+              c:identifier="gdk_query_visual_types"
+              doc="This function returns the available visual types for the default
+screen. It&apos;s equivalent to listing the visuals
+(gdk_list_visuals()) and then looking at the type field in each
+visual, removing duplicates.
+The array returned by this function should not be freed.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="visual_types"
+                   transfer-ownership="none"
+                   doc="return location for the available visual types">
+          <type name="VisualType" c:type="GdkVisualType**"/>
+        </parameter>
+        <parameter name="count"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for the number of available visual types">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="question" value="63">
+      <type name="int"/>
+    </constant>
+    <constant name="questiondown" value="191">
+      <type name="int"/>
+    </constant>
+    <constant name="quotedbl" value="34">
+      <type name="int"/>
+    </constant>
+    <constant name="quoteleft" value="96">
+      <type name="int"/>
+    </constant>
+    <constant name="quoteright" value="39">
+      <type name="int"/>
+    </constant>
+    <constant name="r" value="114">
+      <type name="int"/>
+    </constant>
+    <constant name="racute" value="480">
+      <type name="int"/>
+    </constant>
+    <constant name="radical" value="2262">
+      <type name="int"/>
+    </constant>
+    <constant name="rcaron" value="504">
+      <type name="int"/>
+    </constant>
+    <constant name="rcedilla" value="947">
+      <type name="int"/>
+    </constant>
+    <function name="region_polygon"
+              c:identifier="gdk_region_polygon"
+              doc="Creates a new #GdkRegion using the polygon defined by a 
+number of points.
+use Cairo."
+              deprecated="There is no replacement. For working with paths, please"
+              deprecated-version="2.22">
+      <return-value transfer-ownership="full"
+                    doc="a new #GdkRegion based on the given polygon">
+        <type name="Region" c:type="GdkRegion*"/>
+      </return-value>
+      <parameters>
+        <parameter name="points"
+                   transfer-ownership="none"
+                   doc="an array of #GdkPoint structs">
+          <type name="Point" c:type="GdkPoint*"/>
+        </parameter>
+        <parameter name="n_points"
+                   transfer-ownership="none"
+                   doc="the number of elements in the @points array">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="fill_rule"
+                   transfer-ownership="none"
+                   doc="specifies which pixels are included in the region when the polygon overlaps itself.">
+          <type name="FillRule" c:type="GdkFillRule"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="region_rectangle"
+              c:identifier="gdk_region_rectangle"
+              doc="Creates a new region containing the area @rectangle.">
+      <return-value transfer-ownership="full" doc="a new region">
+        <type name="Region" c:type="GdkRegion*"/>
+      </return-value>
+      <parameters>
+        <parameter name="rectangle"
+                   transfer-ownership="none"
+                   doc="a #GdkRectangle">
+          <type name="Rectangle" c:type="GdkRectangle*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="registered" value="174">
+      <type name="int"/>
+    </constant>
+    <function name="rgb_colormap_ditherable"
+              c:identifier="gdk_rgb_colormap_ditherable">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="cmap" transfer-ownership="none">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_ditherable" c:identifier="gdk_rgb_ditherable">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+    </function>
+    <function name="rgb_find_color"
+              c:identifier="gdk_rgb_find_color"
+              doc="drawable you&apos;re using to draw. If you&apos;re drawing to a #GtkWidget,
+call gtk_widget_get_colormap().
+gdk_rgb_find_color() will fill in the %pixel field with the best
+matching pixel from a color cube. The color is then ready to be
+used for drawing, e.g. you can call gdk_gc_set_foreground() which
+expects %pixel to be initialized.
+In many cases, you can avoid this whole issue by calling
+gdk_gc_set_rgb_fg_color() or gdk_gc_set_rgb_bg_color(), which
+do not expect %pixel to be initialized in advance. If you use those
+functions, there&apos;s no need for gdk_rgb_find_color().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="colormap"
+                   transfer-ownership="none"
+                   doc="a #GdkColormap">
+          <type name="Colormap" c:type="GdkColormap*"/>
+        </parameter>
+        <parameter name="color" transfer-ownership="none" doc="a #GdkColor">
+          <type name="Color" c:type="GdkColor*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_gc_set_background"
+              c:identifier="gdk_rgb_gc_set_background">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="rgb" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_gc_set_foreground"
+              c:identifier="gdk_rgb_gc_set_foreground">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="gc" transfer-ownership="none">
+          <type name="GC" c:type="GdkGC*"/>
+        </parameter>
+        <parameter name="rgb" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_get_colormap"
+              c:identifier="gdk_rgb_get_colormap"
+              doc="Get the preferred colormap for rendering image data.  Not a
+very useful function; historically, GDK could only render RGB image
+data to one colormap and visual, but in the current version it can
+render to any colormap and visual. So there&apos;s no need to call this
+function.">
+      <return-value transfer-ownership="none" doc="the preferred colormap">
+        <type name="Colormap" c:type="GdkColormap*"/>
+      </return-value>
+    </function>
+    <function name="rgb_get_visual"
+              c:identifier="gdk_rgb_get_visual"
+              doc="Gets a &quot;preferred visual&quot; chosen by GdkRGB for rendering image data
+on the default screen. In previous versions of GDK, this was the
+only visual GdkRGB could use for rendering. In current versions,
+it&apos;s simply the visual GdkRGB would have chosen as the optimal one
+in those previous versions. GdkRGB can now render to drawables with
+any visual.">
+      <return-value transfer-ownership="none"
+                    doc="The #GdkVisual chosen by GdkRGB.">
+        <type name="Visual" c:type="GdkVisual*"/>
+      </return-value>
+    </function>
+    <function name="rgb_init" c:identifier="gdk_rgb_init">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="rgb_set_install" c:identifier="gdk_rgb_set_install">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="install" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_set_min_colors" c:identifier="gdk_rgb_set_min_colors">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="min_colors" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_set_verbose" c:identifier="gdk_rgb_set_verbose">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="verbose" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="rgb_xpixel_from_rgb"
+              c:identifier="gdk_rgb_xpixel_from_rgb">
+      <return-value transfer-ownership="none">
+        <type name="ulong" c:type="gulong"/>
+      </return-value>
+      <parameters>
+        <parameter name="rgb" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="rightanglebracket" value="2750">
+      <type name="int"/>
+    </constant>
+    <constant name="rightarrow" value="2301">
+      <type name="int"/>
+    </constant>
+    <constant name="rightcaret" value="2982">
+      <type name="int"/>
+    </constant>
+    <constant name="rightdoublequotemark" value="2771">
+      <type name="int"/>
+    </constant>
+    <constant name="rightmiddlecurlybrace" value="2224">
+      <type name="int"/>
+    </constant>
+    <constant name="rightmiddlesummation" value="2231">
+      <type name="int"/>
+    </constant>
+    <constant name="rightopentriangle" value="2765">
+      <type name="int"/>
+    </constant>
+    <constant name="rightpointer" value="2795">
+      <type name="int"/>
+    </constant>
+    <constant name="rightshoe" value="3032">
+      <type name="int"/>
+    </constant>
+    <constant name="rightsinglequotemark" value="2769">
+      <type name="int"/>
+    </constant>
+    <constant name="rightt" value="2549">
+      <type name="int"/>
+    </constant>
+    <constant name="righttack" value="3068">
+      <type name="int"/>
+    </constant>
+    <constant name="s" value="115">
+      <type name="int"/>
+    </constant>
+    <constant name="sabovedot" value="16784993">
+      <type name="int"/>
+    </constant>
+    <constant name="sacute" value="438">
+      <type name="int"/>
+    </constant>
+    <constant name="scaron" value="441">
+      <type name="int"/>
+    </constant>
+    <constant name="scedilla" value="442">
+      <type name="int"/>
+    </constant>
+    <constant name="schwa" value="16777817">
+      <type name="int"/>
+    </constant>
+    <constant name="scircumflex" value="766">
+      <type name="int"/>
+    </constant>
+    <constant name="script_switch" value="65406">
+      <type name="int"/>
+    </constant>
+    <constant name="seconds" value="2775">
+      <type name="int"/>
+    </constant>
+    <constant name="section" value="167">
+      <type name="int"/>
+    </constant>
+    <function name="selection_convert" c:identifier="gdk_selection_convert">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="requestor" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="selection" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="target" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="time_" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_owner_get"
+              c:identifier="gdk_selection_owner_get">
+      <return-value transfer-ownership="full">
+        <type name="Window" c:type="GdkWindow*"/>
+      </return-value>
+      <parameters>
+        <parameter name="selection" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_owner_get_for_display"
+              c:identifier="gdk_selection_owner_get_for_display"
+              doc="Determine the owner of the given selection.
+Note that the return value may be owned by a different 
+process if a foreign window was previously created for that
+window, but a new foreign window will never be created by this call. 
+window known to the current process, the #GdkWindow that owns the 
+selection, otherwise %NULL."
+              version="2.2">
+      <return-value transfer-ownership="full"
+                    doc="if there is a selection owner for this window, and it is a">
+        <type name="Window" c:type="GdkWindow*"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="a #GdkDisplay.">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="selection"
+                   transfer-ownership="none"
+                   doc="an atom indentifying a selection.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_owner_set"
+              c:identifier="gdk_selection_owner_set">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="owner" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="selection" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="time_" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+        <parameter name="send_event" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_owner_set_for_display"
+              c:identifier="gdk_selection_owner_set_for_display"
+              doc="Sets the #GdkWindow @owner as the current owner of the selection @selection.
+otherwise %FALSE. "
+              version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the selection owner was successfully changed to owner,">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the #GdkDisplay.">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="owner"
+                   transfer-ownership="none"
+                   doc="a #GdkWindow or %NULL to indicate that the owner for the given should be unset.">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="selection"
+                   transfer-ownership="none"
+                   doc="an atom identifying a selection.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="time_"
+                   transfer-ownership="none"
+                   doc="timestamp to use when setting the selection. If this is older than the timestamp given last time the owner was set for the given selection, the request will be ignored.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+        <parameter name="send_event"
+                   transfer-ownership="none"
+                   doc="if %TRUE, and the new owner is different from the current owner, the current owner will be sent a SelectionClear event.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_property_get"
+              c:identifier="gdk_selection_property_get"
+              doc="Retrieves selection data that was stored by the selection
+data in response to a call to gdk_selection_convert(). This function
+will not be used by applications, who should use the #GtkClipboard
+API instead.">
+      <return-value transfer-ownership="none"
+                    doc="the length of the retrieved data.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="requestor"
+                   transfer-ownership="none"
+                   doc="the window on which the data is stored">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="data"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store a pointer to the retrieved data.">
+          <type name="uint8" c:type="guchar**"/>
+        </parameter>
+        <parameter name="prop_type"
+                   transfer-ownership="none"
+                   doc="location to store the type of the property.">
+          <type name="Atom" c:type="GdkAtom*"/>
+        </parameter>
+        <parameter name="prop_format"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the format of the property.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_send_notify"
+              c:identifier="gdk_selection_send_notify">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="requestor" transfer-ownership="none">
+          <type name="NativeWindow" c:type="GdkNativeWindow"/>
+        </parameter>
+        <parameter name="selection" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="target" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="property" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="time_" transfer-ownership="none">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="selection_send_notify_for_display"
+              c:identifier="gdk_selection_send_notify_for_display"
+              doc="Send a response to SelectionRequest event."
+              version="2.2">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the #GdkDisplay where @requestor is realized">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="requestor"
+                   transfer-ownership="none"
+                   doc="window to which to deliver response.">
+          <type name="NativeWindow" c:type="GdkNativeWindow"/>
+        </parameter>
+        <parameter name="selection"
+                   transfer-ownership="none"
+                   doc="selection that was requested.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="target"
+                   transfer-ownership="none"
+                   doc="target that was selected.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="property"
+                   transfer-ownership="none"
+                   doc="property in which the selection owner stored the data, or %GDK_NONE to indicate that the request was rejected.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="time_" transfer-ownership="none" doc="timestamp.">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="semicolon" value="59">
+      <type name="int"/>
+    </constant>
+    <constant name="semivoicedsound" value="1247">
+      <type name="int"/>
+    </constant>
+    <function name="set_double_click_time"
+              c:identifier="gdk_set_double_click_time"
+              doc="Set the double click time for the default display. See
+gdk_display_set_double_click_time(). 
+See also gdk_display_set_double_click_distance().
+Applications should &lt;emphasis&gt;not&lt;/emphasis&gt; set this, it is a 
+global user-configured setting.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="msec"
+                   transfer-ownership="none"
+                   doc="double click time in milliseconds (thousandths of a second)">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="set_locale" c:identifier="gdk_set_locale">
+      <return-value transfer-ownership="full">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+    </function>
+    <function name="set_pointer_hooks"
+              c:identifier="gdk_set_pointer_hooks"
+              doc="This function allows for hooking into the operation
+of getting the current location of the pointer. This
+is only useful for such low-level tools as an
+event recorder. Applications should never have any
+reason to use this facility.
+This function is not multihead safe. For multihead operation,
+see gdk_display_set_pointer_hooks().">
+      <return-value transfer-ownership="full"
+                    doc="the previous pointer hook table">
+        <type name="PointerHooks" c:type="GdkPointerHooks*"/>
+      </return-value>
+      <parameters>
+        <parameter name="new_hooks"
+                   transfer-ownership="none"
+                   doc="a table of pointers to functions for getting quantities related to the current pointer position, or %NULL to restore the default table.">
+          <type name="PointerHooks" c:type="GdkPointerHooks*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="set_program_class" c:identifier="gdk_set_program_class">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="program_class" transfer-ownership="none">
+          <type name="utf8" c:type="char*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="set_show_events"
+              c:identifier="gdk_set_show_events"
+              doc="Sets whether a trace of received events is output.
+Note that GTK+ must be compiled with debugging (that is,
+configured using the &lt;option&gt;--enable-debug&lt;/option&gt; option)
+to use this option.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="show_events"
+                   transfer-ownership="none"
+                   doc="%TRUE to output event debugging information.">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="set_sm_client_id"
+              c:identifier="gdk_set_sm_client_id"
+              doc="Sets the &lt;literal&gt;SM_CLIENT_ID&lt;/literal&gt; property on the application&apos;s leader window so that
+the window manager can save the application&apos;s state using the X11R6 ICCCM
+session management protocol.
+See the X Session Management Library documentation for more information on
+session management and the Inter-Client Communication Conventions Manual
+(ICCCM) for information on the &lt;literal&gt;WM_CLIENT_LEADER&lt;/literal&gt; property. 
+(Both documents are part of the X Window System distribution.)">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="sm_client_id"
+                   transfer-ownership="none"
+                   doc="the client id assigned by the session manager when the connection was opened, or %NULL to remove the property.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="set_use_xshm" c:identifier="gdk_set_use_xshm">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="use_xshm" transfer-ownership="none">
+          <type name="boolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="setting_get"
+              c:identifier="gdk_setting_get"
+              doc="Obtains a desktop-wide setting, such as the double-click time,
+for the default screen. See gdk_screen_get_setting().
+in @value, %FALSE otherwise.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the setting existed and a value was stored">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="name"
+                   transfer-ownership="none"
+                   doc="the name of the setting.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="value"
+                   transfer-ownership="none"
+                   doc="location to store the value of the setting.">
+          <type name="GObject.Value" c:type="GValue*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="seveneighths" value="2758">
+      <type name="int"/>
+    </constant>
+    <constant name="sevensubscript" value="16785543">
+      <type name="int"/>
+    </constant>
+    <constant name="sevensuperior" value="16785527">
+      <type name="int"/>
+    </constant>
+    <constant name="signaturemark" value="2762">
+      <type name="int"/>
+    </constant>
+    <constant name="signifblank" value="2732">
+      <type name="int"/>
+    </constant>
+    <constant name="similarequal" value="2249">
+      <type name="int"/>
+    </constant>
+    <constant name="singlelowquotemark" value="2813">
+      <type name="int"/>
+    </constant>
+    <constant name="sixsubscript" value="16785542">
+      <type name="int"/>
+    </constant>
+    <constant name="sixsuperior" value="16785526">
+      <type name="int"/>
+    </constant>
+    <constant name="slash" value="47">
+      <type name="int"/>
+    </constant>
+    <constant name="soliddiamond" value="2528">
+      <type name="int"/>
+    </constant>
+    <constant name="space" value="32">
+      <type name="int"/>
+    </constant>
+    <function name="spawn_command_line_on_screen"
+              c:identifier="gdk_spawn_command_line_on_screen"
+              doc="Like g_spawn_command_line_async(), except the child process is
+spawned in such an environment that on calling gdk_display_open()
+it would be returned a #GdkDisplay with @screen as the default
+screen.
+This is useful for applications which wish to launch an application
+on a specific screen."
+              version="2.4"
+              throws="1">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE on success, %FALSE if error is set.">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="screen" transfer-ownership="none" doc="a #GdkScreen">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </parameter>
+        <parameter name="command_line"
+                   transfer-ownership="none"
+                   doc="a command line">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="spawn_on_screen"
+              c:identifier="gdk_spawn_on_screen"
+              doc="Like g_spawn_async(), except the child process is spawned in such
+an environment that on calling gdk_display_open() it would be
+returned a #GdkDisplay with @screen as the default screen.
+This is useful for applications which wish to launch an application
+on a specific screen."
+              version="2.4"
+              throws="1">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE on success, %FALSE if error is set">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="screen" transfer-ownership="none" doc="a #GdkScreen">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </parameter>
+        <parameter name="working_directory"
+                   transfer-ownership="none"
+                   doc="child&apos;s current working directory, or %NULL to inherit parent&apos;s">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="argv"
+                   transfer-ownership="none"
+                   doc="child&apos;s argument vector">
+          <array c:type="gchar**">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+        <parameter name="envp"
+                   transfer-ownership="none"
+                   doc="child&apos;s environment, or %NULL to inherit parent&apos;s">
+          <array c:type="gchar**">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+        <parameter name="flags"
+                   transfer-ownership="none"
+                   doc="flags from #GSpawnFlags">
+          <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
+        </parameter>
+        <parameter name="child_setup"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="6"
+                   doc="function to run in the child just before exec()">
+          <type name="GLib.SpawnChildSetupFunc" c:type="GSpawnChildSetupFunc"/>
+        </parameter>
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   doc="user data for @child_setup">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="child_pid"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for child process ID, or %NULL">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="spawn_on_screen_with_pipes"
+              c:identifier="gdk_spawn_on_screen_with_pipes"
+              doc="Like g_spawn_async_with_pipes(), except the child process is
+spawned in such an environment that on calling gdk_display_open()
+it would be returned a #GdkDisplay with @screen as the default
+screen.
+This is useful for applications which wish to launch an application
+on a specific screen."
+              version="2.4"
+              throws="1">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE on success, %FALSE if an error was set">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="screen" transfer-ownership="none" doc="a #GdkScreen">
+          <type name="Screen" c:type="GdkScreen*"/>
+        </parameter>
+        <parameter name="working_directory"
+                   transfer-ownership="none"
+                   doc="child&apos;s current working directory, or %NULL to inherit parent&apos;s">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="argv"
+                   transfer-ownership="none"
+                   doc="child&apos;s argument vector">
+          <array c:type="gchar**">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+        <parameter name="envp"
+                   transfer-ownership="none"
+                   doc="child&apos;s environment, or %NULL to inherit parent&apos;s">
+          <array c:type="gchar**">
+            <type name="utf8"/>
+          </array>
+        </parameter>
+        <parameter name="flags"
+                   transfer-ownership="none"
+                   doc="flags from #GSpawnFlags">
+          <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
+        </parameter>
+        <parameter name="child_setup"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="6"
+                   doc="function to run in the child just before exec()">
+          <type name="GLib.SpawnChildSetupFunc" c:type="GSpawnChildSetupFunc"/>
+        </parameter>
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   doc="user data for @child_setup">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="child_pid"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for child process ID, or %NULL">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="standard_input"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for file descriptor to write to child&apos;s stdin, or %NULL">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="standard_output"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for file descriptor to read child&apos;s stdout, or %NULL">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="standard_error"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="return location for file descriptor to read child&apos;s stderr, or %NULL">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="squareroot" value="16785946">
+      <type name="int"/>
+    </constant>
+    <constant name="ssharp" value="223">
+      <type name="int"/>
+    </constant>
+    <constant name="sterling" value="163">
+      <type name="int"/>
+    </constant>
+    <constant name="stricteq" value="16786019">
+      <type name="int"/>
+    </constant>
+    <function name="string_extents"
+              c:identifier="gdk_string_extents"
+              doc="Gets the metrics of a nul-terminated string.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont.">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="string"
+                   transfer-ownership="none"
+                   doc="the nul-terminated string to measure.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="lbearing"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the left bearing of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="rbearing"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the right bearing of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="width"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the width of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ascent"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the ascent of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="descent"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the descent of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="string_height"
+              c:identifier="gdk_string_height"
+              doc="Determines the total height of a given nul-terminated
+string. This value is not generally useful, because you
+cannot determine how this total height will be drawn in
+relation to the baseline. See gdk_string_extents().">
+      <return-value transfer-ownership="none"
+                    doc="the height of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="string"
+                   transfer-ownership="none"
+                   doc="the nul-terminated string to measure.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="string_measure"
+              c:identifier="gdk_string_measure"
+              doc="Determines the distance from the origin to the rightmost
+portion of a nul-terminated string when drawn. This is not the
+correct value for determining the origin of the next
+portion when drawing text in multiple pieces.
+See gdk_string_width().">
+      <return-value transfer-ownership="none"
+                    doc="the right bearing of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="string"
+                   transfer-ownership="none"
+                   doc="the nul-terminated string to measure.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="string_to_compound_text"
+              c:identifier="gdk_string_to_compound_text">
+      <return-value transfer-ownership="none">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="str" transfer-ownership="none">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="encoding" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom*"/>
+        </parameter>
+        <parameter name="format"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ctext"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="uint8" c:type="guchar**"/>
+        </parameter>
+        <parameter name="length"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="string_to_compound_text_for_display"
+              c:identifier="gdk_string_to_compound_text_for_display"
+              doc="Convert a string from the encoding of the current 
+locale into a form suitable for storing in a window property."
+              version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="0 upon success, non-zero upon failure.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="the #GdkDisplay where the encoding is defined.">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="str"
+                   transfer-ownership="none"
+                   doc="a nul-terminated string.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="encoding"
+                   transfer-ownership="none"
+                   doc="location to store the encoding atom (to be used as the type for the property).">
+          <type name="Atom" c:type="GdkAtom*"/>
+        </parameter>
+        <parameter name="format"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the format of the property">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ctext"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store newly allocated data for the property.">
+          <type name="uint8" c:type="guchar**"/>
+        </parameter>
+        <parameter name="length"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the length of @text, in bytes">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="string_width"
+              c:identifier="gdk_string_width"
+              doc="Determines the width of a nul-terminated string.
+(The distance from the origin of the string to the 
+point where the next string in a sequence of strings
+should be drawn)">
+      <return-value transfer-ownership="none"
+                    doc="the width of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="string"
+                   transfer-ownership="none"
+                   doc="the nul-terminated string to measure">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="synthesize_window_state"
+              c:identifier="gdk_synthesize_window_state">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="unset_flags" transfer-ownership="none">
+          <type name="WindowState" c:type="GdkWindowState"/>
+        </parameter>
+        <parameter name="set_flags" transfer-ownership="none">
+          <type name="WindowState" c:type="GdkWindowState"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="t" value="116">
+      <type name="int"/>
+    </constant>
+    <constant name="tabovedot" value="16785003">
+      <type name="int"/>
+    </constant>
+    <constant name="tcaron" value="443">
+      <type name="int"/>
+    </constant>
+    <constant name="tcedilla" value="510">
+      <type name="int"/>
+    </constant>
+    <constant name="telephone" value="2809">
+      <type name="int"/>
+    </constant>
+    <constant name="telephonerecorder" value="2810">
+      <type name="int"/>
+    </constant>
+    <function name="test_render_sync"
+              c:identifier="gdk_test_render_sync"
+              doc="This function retrieves a pixel from @window to force the windowing
+system to carry out any pending rendering commands.
+This function is intended to be used to syncronize with rendering
+pipelines, to benchmark windowing system rendering operations."
+              version="2.14">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="window"
+                   transfer-ownership="none"
+                   doc="a mapped #GdkWindow">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="test_simulate_button"
+              c:identifier="gdk_test_simulate_button">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="button" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="modifiers" transfer-ownership="none">
+          <type name="ModifierType" c:type="GdkModifierType"/>
+        </parameter>
+        <parameter name="button_pressrelease" transfer-ownership="none">
+          <type name="EventType" c:type="GdkEventType"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="test_simulate_key" c:identifier="gdk_test_simulate_key">
+      <return-value transfer-ownership="none">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="window" transfer-ownership="none">
+          <type name="Window" c:type="GdkWindow*"/>
+        </parameter>
+        <parameter name="x" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="y" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="keyval" transfer-ownership="none">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="modifiers" transfer-ownership="none">
+          <type name="ModifierType" c:type="GdkModifierType"/>
+        </parameter>
+        <parameter name="key_pressrelease" transfer-ownership="none">
+          <type name="EventType" c:type="GdkEventType"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_extents"
+              c:identifier="gdk_text_extents"
+              doc="Gets the metrics of a string.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to measure">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the length of the text in bytes. (If the font is a 16-bit font, this is twice the length of the text in characters.)">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="lbearing"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the left bearing of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="rbearing"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the right bearing of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="width"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the width of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ascent"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the ascent of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="descent"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the descent of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_extents_wc"
+              c:identifier="gdk_text_extents_wc"
+              doc="Gets the metrics of a string of wide characters.">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to measure.">
+          <type name="WChar" c:type="GdkWChar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the length of the text in character.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="lbearing"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the left bearing of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="rbearing"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the right bearing of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="width"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the width of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ascent"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the ascent of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="descent"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="the descent of the string.">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_height"
+              c:identifier="gdk_text_height"
+              doc="Determines the total height of a given string.
+This value is not generally useful, because you cannot
+determine how this total height will be drawn in
+relation to the baseline. See gdk_text_extents().">
+      <return-value transfer-ownership="none"
+                    doc="the height of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to measure.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the length of the text in bytes.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_measure"
+              c:identifier="gdk_text_measure"
+              doc="Determines the distance from the origin to the rightmost
+portion of a string when drawn. This is not the
+correct value for determining the origin of the next
+portion when drawing text in multiple pieces. 
+See gdk_text_width().">
+      <return-value transfer-ownership="none"
+                    doc="the right bearing of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to measure.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the length of the text in bytes.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_property_to_text_list"
+              c:identifier="gdk_text_property_to_text_list">
+      <return-value transfer-ownership="none">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="encoding" transfer-ownership="none">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="format" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="text" transfer-ownership="none">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="length" transfer-ownership="none">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="list" transfer-ownership="none">
+          <type name="utf8" c:type="gchar***"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_property_to_text_list_for_display"
+              c:identifier="gdk_text_property_to_text_list_for_display"
+              doc="Convert a text string from the encoding as it is stored 
+in a property into an array of strings in the encoding of
+the current locale. (The elements of the array represent the
+nul-separated elements of the original text string.)
+if the conversion failed. "
+              version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="the number of strings stored in list, or 0,">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="The #GdkDisplay where the encoding is defined.">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="encoding"
+                   transfer-ownership="none"
+                   doc="an atom representing the encoding. The most common values for this are STRING, or COMPOUND_TEXT. This is value used as the type for the property.">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="format"
+                   transfer-ownership="none"
+                   doc="the format of the property.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="text" transfer-ownership="none" doc="The text data.">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="length"
+                   transfer-ownership="none"
+                   doc="The number of items to transform.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="list"
+                   transfer-ownership="none"
+                   doc="location to store a terminated array of strings in the encoding of the current locale. This array should be freed using gdk_free_text_list().">
+          <type name="utf8" c:type="gchar***"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_property_to_utf8_list"
+              c:identifier="gdk_text_property_to_utf8_list"
+              doc="Convert a text property in the giving encoding to
+a list of UTF-8 strings. 
+list.">
+      <return-value transfer-ownership="none"
+                    doc="the number of strings in the resulting">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="encoding"
+                   transfer-ownership="none"
+                   doc="an atom representing the encoding of the text">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="format"
+                   transfer-ownership="none"
+                   doc="the format of the property">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to convert">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="length"
+                   transfer-ownership="none"
+                   doc="the length of @text, in bytes">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="list"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   doc="location to store the list of strings or %NULL. The list should be freed with g_strfreev().">
+          <type name="utf8" c:type="gchar***"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_property_to_utf8_list_for_display"
+              c:identifier="gdk_text_property_to_utf8_list_for_display"
+              doc="Converts a text property in the given encoding to
+a list of UTF-8 strings. 
+list."
+              version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="the number of strings in the resulting">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="a #GdkDisplay">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="encoding"
+                   transfer-ownership="none"
+                   doc="an atom representing the encoding of the text">
+          <type name="Atom" c:type="GdkAtom"/>
+        </parameter>
+        <parameter name="format"
+                   transfer-ownership="none"
+                   doc="the format of the property">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to convert">
+          <array c:type="guchar*">
+            <type name="uint8"/>
+          </array>
+        </parameter>
+        <parameter name="length"
+                   transfer-ownership="none"
+                   doc="the length of @text, in bytes">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="list"
+                   transfer-ownership="none"
+                   doc="location to store the list of strings or %NULL. The list should be freed with g_strfreev().">
+          <type name="utf8" c:type="gchar***"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_width"
+              c:identifier="gdk_text_width"
+              doc="Determines the width of a given string.">
+      <return-value transfer-ownership="none"
+                    doc="the width of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to measure.">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the length of the text in bytes.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="text_width_wc"
+              c:identifier="gdk_text_width_wc"
+              doc="Determines the width of a given wide-character string.">
+      <return-value transfer-ownership="none"
+                    doc="the width of the string in pixels.">
+        <type name="int" c:type="gint"/>
+      </return-value>
+      <parameters>
+        <parameter name="font" transfer-ownership="none" doc="a #GdkFont">
+          <type name="Font" c:type="GdkFont*"/>
+        </parameter>
+        <parameter name="text"
+                   transfer-ownership="none"
+                   doc="the text to measure.">
+          <type name="WChar" c:type="GdkWChar*"/>
+        </parameter>
+        <parameter name="text_length"
+                   transfer-ownership="none"
+                   doc="the length of the text in characters.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="therefore" value="2240">
+      <type name="int"/>
+    </constant>
+    <constant name="thinspace" value="2727">
+      <type name="int"/>
+    </constant>
+    <constant name="thorn" value="254">
+      <type name="int"/>
+    </constant>
+    <function name="threads_add_idle"
+              c:identifier="gdk_threads_add_idle"
+              doc="A wrapper for the common usage of gdk_threads_add_idle_full() 
+assigning the default priority, #G_PRIORITY_DEFAULT_IDLE.
+See gdk_threads_add_idle_full()."
+              version="2.12">
+      <return-value transfer-ownership="none"
+                    doc="the ID (greater than 0) of the event source.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="1"
+                   doc="function to call">
+          <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="data to pass to @function">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="threads_add_idle_full"
+              c:identifier="gdk_threads_add_idle_full"
+              doc="Adds a function to be called whenever there are no higher priority
+events pending.  If the function returns %FALSE it is automatically
+removed from the list of event sources and will not be called again.
+This variant of g_idle_add_full() calls @function with the GDK lock
+held. It can be thought of a MT-safe version for GTK+ widgets for the 
+following use case, where you have to worry about idle_callback()
+running in thread A and accessing @self after it has been finalized
+in thread B:
+|[
+static gboolean
+idle_callback (gpointer data)
+{
+/&amp;ast; gdk_threads_enter(); would be needed for g_idle_add() &amp;ast;/
+SomeWidget *self = data;
+/&amp;ast; do stuff with self &amp;ast;/
+self-&gt;idle_id = 0;
+/&amp;ast; gdk_threads_leave(); would be needed for g_idle_add() &amp;ast;/
+return FALSE;
+}
+static void
+some_widget_do_stuff_later (SomeWidget *self)
+{
+self-&gt;idle_id = gdk_threads_add_idle (idle_callback, self)
+/&amp;ast; using g_idle_add() here would require thread protection in the callback &amp;ast;/
+}
+static void
+some_widget_finalize (GObject *object)
+{
+SomeWidget *self = SOME_WIDGET (object);
+if (self-&gt;idle_id)
+g_source_remove (self-&gt;idle_id);
+G_OBJECT_CLASS (parent_class)-&gt;finalize (object);
+}
+]|"
+              version="2.12">
+      <return-value transfer-ownership="none"
+                    doc="the ID (greater than 0) of the event source.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="priority"
+                   transfer-ownership="none"
+                   doc="the priority of the idle source. Typically this will be in the range btweeen #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="notified"
+                   closure="2"
+                   destroy="3"
+                   doc="function to call">
+          <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="data to pass to @function">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="notify"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   scope="call"
+                   doc="function to call when the idle is removed, or %NULL">
+          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="threads_add_timeout"
+              c:identifier="gdk_threads_add_timeout"
+              doc="A wrapper for the common usage of gdk_threads_add_timeout_full() 
+assigning the default priority, #G_PRIORITY_DEFAULT.
+See gdk_threads_add_timeout_full()."
+              version="2.12">
+      <return-value transfer-ownership="none"
+                    doc="the ID (greater than 0) of the event source.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="interval"
+                   transfer-ownership="none"
+                   doc="the time between calls to the function, in milliseconds (1/1000ths of a second)">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="2"
+                   doc="function to call">
+          <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="data to pass to @function">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="threads_add_timeout_full"
+              c:identifier="gdk_threads_add_timeout_full"
+              doc="Sets a function to be called at regular intervals holding the GDK lock,
+with the given priority.  The function is called repeatedly until it 
+returns %FALSE, at which point the timeout is automatically destroyed 
+and the function will not be called again.  The @notify function is
+called when the timeout is destroyed.  The first call to the
+function will be at the end of the first @interval.
+Note that timeout functions may be delayed, due to the processing of other
+event sources. Thus they should not be relied on for precise timing.
+After each call to the timeout function, the time of the next
+timeout is recalculated based on the current time and the given interval
+(it does not try to &apos;catch up&apos; time lost in delays).
+This variant of g_timeout_add_full() can be thought of a MT-safe version 
+for GTK+ widgets for the following use case:
+|[
+static gboolean timeout_callback (gpointer data)
+{
+SomeWidget *self = data;
+/&amp;ast; do stuff with self &amp;ast;/
+self-&gt;timeout_id = 0;
+return FALSE;
+}
+static void some_widget_do_stuff_later (SomeWidget *self)
+{
+self-&gt;timeout_id = g_timeout_add (timeout_callback, self)
+}
+static void some_widget_finalize (GObject *object)
+{
+SomeWidget *self = SOME_WIDGET (object);
+if (self-&gt;timeout_id)
+g_source_remove (self-&gt;timeout_id);
+G_OBJECT_CLASS (parent_class)-&gt;finalize (object);
+}
+]|"
+              version="2.12">
+      <return-value transfer-ownership="none"
+                    doc="the ID (greater than 0) of the event source.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="priority"
+                   transfer-ownership="none"
+                   doc="the priority of the timeout source. Typically this will be in the range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="interval"
+                   transfer-ownership="none"
+                   doc="the time between calls to the function, in milliseconds (1/1000ths of a second)">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="notified"
+                   closure="3"
+                   destroy="4"
+                   doc="function to call">
+          <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="data to pass to @function">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="notify"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   scope="call"
+                   doc="function to call when the timeout is removed, or %NULL">
+          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="threads_add_timeout_seconds"
+              c:identifier="gdk_threads_add_timeout_seconds"
+              doc="A wrapper for the common usage of gdk_threads_add_timeout_seconds_full() 
+assigning the default priority, #G_PRIORITY_DEFAULT.
+For details, see gdk_threads_add_timeout_full()."
+              version="2.14">
+      <return-value transfer-ownership="none"
+                    doc="the ID (greater than 0) of the event source.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="interval"
+                   transfer-ownership="none"
+                   doc="the time between calls to the function, in seconds">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="call"
+                   closure="2"
+                   doc="function to call">
+          <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="data to pass to @function">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="threads_add_timeout_seconds_full"
+              c:identifier="gdk_threads_add_timeout_seconds_full"
+              doc="A variant of gdk_threads_add_timout_full() with second-granularity.
+See g_timeout_add_seconds_full() for a discussion of why it is
+a good idea to use this function if you don&apos;t need finer granularity."
+              version="2.14">
+      <return-value transfer-ownership="none"
+                    doc="the ID (greater than 0) of the event source.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="priority"
+                   transfer-ownership="none"
+                   doc="the priority of the timeout source. Typically this will be in the range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.">
+          <type name="int" c:type="gint"/>
+        </parameter>
+        <parameter name="interval"
+                   transfer-ownership="none"
+                   doc="the time between calls to the function, in seconds">
+          <type name="uint" c:type="guint"/>
+        </parameter>
+        <parameter name="function"
+                   transfer-ownership="none"
+                   scope="notified"
+                   closure="3"
+                   destroy="4"
+                   doc="function to call">
+          <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
+        </parameter>
+        <parameter name="data"
+                   transfer-ownership="none"
+                   doc="data to pass to @function">
+          <type name="any" c:type="gpointer"/>
+        </parameter>
+        <parameter name="notify"
+                   transfer-ownership="none"
+                   allow-none="1"
+                   scope="call"
+                   doc="function to call when the timeout is removed, or %NULL">
+          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="threads_enter" c:identifier="gdk_threads_enter">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="threads_init"
+              c:identifier="gdk_threads_init"
+              doc="Initializes GDK so that it can be used from multiple threads
+in conjunction with gdk_threads_enter() and gdk_threads_leave().
+g_thread_init() must be called previous to this function.
+This call must be made before any use of the main loop from
+GTK+; to be safe, call it before gtk_init().">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="threads_leave" c:identifier="gdk_threads_leave">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="threads_set_lock_functions"
+              c:identifier="gdk_threads_set_lock_functions"
+              doc="Allows the application to replace the standard method that
+GDK uses to protect its data structures. Normally, GDK
+creates a single #GMutex that is locked by gdk_threads_enter(),
+and released by gdk_threads_leave(); using this function an
+application provides, instead, a function @enter_fn that is
+called by gdk_threads_enter() and a function @leave_fn that is
+called by gdk_threads_leave().
+The functions must provide at least same locking functionality
+as the default implementation, but can also do extra application
+specific processing.
+As an example, consider an application that has its own recursive
+lock that when held, holds the GTK+ lock as well. When GTK+ unlocks
+the GTK+ lock when entering a recursive main loop, the application
+must temporarily release its lock as well.
+Most threaded GTK+ apps won&apos;t need to use this method.
+This method must be called before gdk_threads_init(), and cannot
+be called multiple times."
+              version="2.4">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="enter_fn"
+                   transfer-ownership="none"
+                   scope="call"
+                   doc="function called to guard GDK">
+          <type name="GObject.Callback" c:type="GCallback"/>
+        </parameter>
+        <parameter name="leave_fn"
+                   transfer-ownership="none"
+                   scope="call"
+                   doc="function called to release the guard">
+          <type name="GObject.Callback" c:type="GCallback"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="threeeighths" value="2756">
+      <type name="int"/>
+    </constant>
+    <constant name="threefifths" value="2740">
+      <type name="int"/>
+    </constant>
+    <constant name="threequarters" value="190">
+      <type name="int"/>
+    </constant>
+    <constant name="threesubscript" value="16785539">
+      <type name="int"/>
+    </constant>
+    <constant name="threesuperior" value="179">
+      <type name="int"/>
+    </constant>
+    <constant name="tintegral" value="16785965">
+      <type name="int"/>
+    </constant>
+    <constant name="topintegral" value="2212">
+      <type name="int"/>
+    </constant>
+    <constant name="topleftparens" value="2219">
+      <type name="int"/>
+    </constant>
+    <constant name="topleftradical" value="2210">
+      <type name="int"/>
+    </constant>
+    <constant name="topleftsqbracket" value="2215">
+      <type name="int"/>
+    </constant>
+    <constant name="topleftsummation" value="2225">
+      <type name="int"/>
+    </constant>
+    <constant name="toprightparens" value="2221">
+      <type name="int"/>
+    </constant>
+    <constant name="toprightsqbracket" value="2217">
+      <type name="int"/>
+    </constant>
+    <constant name="toprightsummation" value="2229">
+      <type name="int"/>
+    </constant>
+    <constant name="topt" value="2551">
+      <type name="int"/>
+    </constant>
+    <constant name="topvertsummationconnector" value="2227">
+      <type name="int"/>
+    </constant>
+    <constant name="trademark" value="2761">
+      <type name="int"/>
+    </constant>
+    <constant name="trademarkincircle" value="2763">
+      <type name="int"/>
+    </constant>
+    <constant name="tslash" value="956">
+      <type name="int"/>
+    </constant>
+    <constant name="twofifths" value="2739">
+      <type name="int"/>
+    </constant>
+    <constant name="twosubscript" value="16785538">
+      <type name="int"/>
+    </constant>
+    <constant name="twosuperior" value="178">
+      <type name="int"/>
+    </constant>
+    <constant name="twothirds" value="2737">
+      <type name="int"/>
+    </constant>
+    <constant name="u" value="117">
+      <type name="int"/>
+    </constant>
+    <constant name="uacute" value="250">
+      <type name="int"/>
+    </constant>
+    <constant name="ubelowdot" value="16785125">
+      <type name="int"/>
+    </constant>
+    <constant name="ubreve" value="765">
+      <type name="int"/>
+    </constant>
+    <constant name="ucircumflex" value="251">
+      <type name="int"/>
+    </constant>
+    <constant name="udiaeresis" value="252">
+      <type name="int"/>
+    </constant>
+    <constant name="udoubleacute" value="507">
+      <type name="int"/>
+    </constant>
+    <constant name="ugrave" value="249">
+      <type name="int"/>
+    </constant>
+    <constant name="uhook" value="16785127">
+      <type name="int"/>
+    </constant>
+    <constant name="uhorn" value="16777648">
+      <type name="int"/>
+    </constant>
+    <constant name="uhornacute" value="16785129">
+      <type name="int"/>
+    </constant>
+    <constant name="uhornbelowdot" value="16785137">
+      <type name="int"/>
+    </constant>
+    <constant name="uhorngrave" value="16785131">
+      <type name="int"/>
+    </constant>
+    <constant name="uhornhook" value="16785133">
+      <type name="int"/>
+    </constant>
+    <constant name="uhorntilde" value="16785135">
+      <type name="int"/>
+    </constant>
+    <constant name="umacron" value="1022">
+      <type name="int"/>
+    </constant>
+    <constant name="underbar" value="3014">
+      <type name="int"/>
+    </constant>
+    <constant name="underscore" value="95">
+      <type name="int"/>
+    </constant>
+    <function name="unicode_to_keyval"
+              c:identifier="gdk_unicode_to_keyval"
+              doc="Convert from a ISO10646 character to a key symbol.
+or, if there is no corresponding symbol, 
+wc | 0x01000000">
+      <return-value transfer-ownership="none"
+                    doc="the corresponding GDK key symbol, if one exists.">
+        <type name="uint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="wc"
+                   transfer-ownership="none"
+                   doc="a ISO10646 encoded character">
+          <type name="uint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="union" value="2269">
+      <type name="int"/>
+    </constant>
+    <constant name="uogonek" value="1017">
+      <type name="int"/>
+    </constant>
+    <constant name="uparrow" value="2300">
+      <type name="int"/>
+    </constant>
+    <constant name="upcaret" value="2985">
+      <type name="int"/>
+    </constant>
+    <constant name="upleftcorner" value="2540">
+      <type name="int"/>
+    </constant>
+    <constant name="uprightcorner" value="2539">
+      <type name="int"/>
+    </constant>
+    <constant name="upshoe" value="3011">
+      <type name="int"/>
+    </constant>
+    <constant name="upstile" value="3027">
+      <type name="int"/>
+    </constant>
+    <constant name="uptack" value="3022">
+      <type name="int"/>
+    </constant>
+    <constant name="uring" value="505">
+      <type name="int"/>
+    </constant>
+    <function name="utf8_to_compound_text"
+              c:identifier="gdk_utf8_to_compound_text"
+              doc="Convert from UTF-8 to compound text. 
+false.">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the conversion succeeded, otherwise">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="str" transfer-ownership="none" doc="a UTF-8 string">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="encoding"
+                   transfer-ownership="none"
+                   doc="location to store resulting encoding">
+          <type name="Atom" c:type="GdkAtom*"/>
+        </parameter>
+        <parameter name="format"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store format of the result">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ctext"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the data of the result">
+          <type name="uint8" c:type="guchar**"/>
+        </parameter>
+        <parameter name="length"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the length of the data stored in @ctext">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="utf8_to_compound_text_for_display"
+              c:identifier="gdk_utf8_to_compound_text_for_display"
+              doc="Converts from UTF-8 to compound text. 
+%FALSE."
+              version="2.2">
+      <return-value transfer-ownership="none"
+                    doc="%TRUE if the conversion succeeded, otherwise">
+        <type name="boolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="display"
+                   transfer-ownership="none"
+                   doc="a #GdkDisplay">
+          <type name="Display" c:type="GdkDisplay*"/>
+        </parameter>
+        <parameter name="str" transfer-ownership="none" doc="a UTF-8 string">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="encoding"
+                   transfer-ownership="none"
+                   doc="location to store resulting encoding">
+          <type name="Atom" c:type="GdkAtom*"/>
+        </parameter>
+        <parameter name="format"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store format of the result">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+        <parameter name="ctext"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the data of the result">
+          <type name="uint8" c:type="guchar**"/>
+        </parameter>
+        <parameter name="length"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   doc="location to store the length of the data stored in @ctext">
+          <type name="int" c:type="gint*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="utf8_to_string_target"
+              c:identifier="gdk_utf8_to_string_target"
+              doc="Converts an UTF-8 string into the best possible representation
+as a STRING. The representation of characters not in STRING
+is not specified; it may be as pseudo-escape sequences
+\x{ABCD}, or it may be in some other form of approximation.
+conversion failed. (It should not fail for
+any properly formed UTF-8 string unless system
+limits like memory or file descriptors are exceeded.)">
+      <return-value transfer-ownership="full"
+                    doc="the newly-allocated string, or %NULL if the">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="str" transfer-ownership="none" doc="a UTF-8 string">
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="utilde" value="1021">
+      <type name="int"/>
+    </constant>
+    <constant name="v" value="118">
+      <type name="int"/>
+    </constant>
+    <constant name="variation" value="2241">
+      <type name="int"/>
+    </constant>
+    <constant name="vertbar" value="2552">
+      <type name="int"/>
+    </constant>
+    <constant name="vertconnector" value="2214">
+      <type name="int"/>
+    </constant>
+    <constant name="voicedsound" value="1246">
+      <type name="int"/>
+    </constant>
+    <constant name="vt" value="2537">
+      <type name="int"/>
+    </constant>
+    <constant name="w" value="119">
+      <type name="int"/>
+    </constant>
+    <constant name="wacute" value="16785027">
+      <type name="int"/>
+    </constant>
+    <constant name="wcircumflex" value="16777589">
+      <type name="int"/>
+    </constant>
+    <function name="wcstombs"
+              c:identifier="gdk_wcstombs"
+              doc="Converts a wide character string to a multi-byte string.
+(The function name comes from an acronym of &apos;Wide Character String TO
+Multi-Byte String&apos;).
+conversion failed. The returned string should be freed with g_free() when no
+longer needed.">
+      <return-value transfer-ownership="full"
+                    doc="the multi-byte string corresponding to @src, or %NULL if the">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="src"
+                   transfer-ownership="none"
+                   doc="a wide character string.">
+          <type name="WChar" c:type="GdkWChar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <constant name="wdiaeresis" value="16785029">
+      <type name="int"/>
+    </constant>
+    <constant name="wgrave" value="16785025">
+      <type name="int"/>
+    </constant>
+    <constant name="x" value="120">
+      <type name="int"/>
+    </constant>
+    <constant name="xabovedot" value="16785035">
+      <type name="int"/>
+    </constant>
+    <constant name="y" value="121">
+      <type name="int"/>
+    </constant>
+    <constant name="yacute" value="253">
+      <type name="int"/>
+    </constant>
+    <constant name="ybelowdot" value="16785141">
+      <type name="int"/>
+    </constant>
+    <constant name="ycircumflex" value="16777591">
+      <type name="int"/>
+    </constant>
+    <constant name="ydiaeresis" value="255">
+      <type name="int"/>
+    </constant>
+    <constant name="yen" value="165">
+      <type name="int"/>
+    </constant>
+    <constant name="ygrave" value="16785139">
+      <type name="int"/>
+    </constant>
+    <constant name="yhook" value="16785143">
+      <type name="int"/>
+    </constant>
+    <constant name="ytilde" value="16785145">
+      <type name="int"/>
+    </constant>
+    <constant name="z" value="122">
+      <type name="int"/>
+    </constant>
+    <constant name="zabovedot" value="447">
+      <type name="int"/>
+    </constant>
+    <constant name="zacute" value="444">
+      <type name="int"/>
+    </constant>
+    <constant name="zcaron" value="446">
+      <type name="int"/>
+    </constant>
+    <constant name="zerosubscript" value="16785536">
+      <type name="int"/>
+    </constant>
+    <constant name="zerosuperior" value="16785520">
+      <type name="int"/>
+    </constant>
+    <constant name="zstroke" value="16777654">
+      <type name="int"/>
+    </constant>
+  </namespace>
+</repository>
diff --git a/gdk/Gdk-2.0.typelib b/gdk/Gdk-2.0.typelib
new file mode 100644
index 0000000..f5f42d7
Binary files /dev/null and b/gdk/Gdk-2.0.typelib differ
diff --git a/gdk/diff b/gdk/diff
new file mode 100644
index 0000000..6b49660
--- /dev/null
+++ b/gdk/diff
@@ -0,0 +1,244 @@
+diff --git a/gdk/gdkdraw.c b/gdk/gdkdraw.c
+index 3c8152e..b7d5bee 100644
+--- a/gdk/gdkdraw.c
++++ b/gdk/gdkdraw.c
+@@ -269,52 +269,6 @@ _gdk_drawable_ref_cairo_surface (GdkDrawable *drawable)
+ 
+ /************************************************************************/
+ 
+-/**
+- * _gdk_drawable_get_subwindow_scratch_gc:
+- * @drawable: A #GdkDrawable
+- * 
+- * Returns a #GdkGC suitable for drawing on @drawable. The #GdkGC has
+- * the standard values for @drawable, except for the graphics_exposures
+- * field which is %TRUE and the subwindow mode which is %GDK_INCLUDE_INFERIORS.
+- *
+- * The foreground color of the returned #GdkGC is undefined. The #GdkGC
+- * must not be altered in any way, except to change its foreground color.
+- * 
+- * Return value: A #GdkGC suitable for drawing on @drawable
+- * 
+- * Since: 2.18
+- **/
+-GdkGC *
+-_gdk_drawable_get_subwindow_scratch_gc (GdkDrawable *drawable)
+-{
+-  GdkScreen *screen;
+-  gint depth;
+-
+-  g_return_val_if_fail (GDK_IS_DRAWABLE (drawable), NULL);
+-
+-  screen = gdk_drawable_get_screen (drawable);
+-
+-  g_return_val_if_fail (!screen->closed, NULL);
+-
+-  depth = gdk_drawable_get_depth (drawable) - 1;
+-
+-  if (!screen->subwindow_gcs[depth])
+-    {
+-      GdkGCValues values;
+-      GdkGCValuesMask mask;
+-      
+-      values.graphics_exposures = TRUE;
+-      values.subwindow_mode = GDK_INCLUDE_INFERIORS;
+-      mask = GDK_GC_EXPOSURES | GDK_GC_SUBWINDOW;  
+-      
+-      screen->subwindow_gcs[depth] =
+-	gdk_gc_new_with_values (drawable, &values, mask);
+-    }
+-  
+-  return screen->subwindow_gcs[depth];
+-}
+-
+-
+ /*
+  * _gdk_drawable_get_source_drawable:
+  * @drawable: a #GdkDrawable
+diff --git a/gdk/gdkscreen.c b/gdk/gdkscreen.c
+index 174c0d5..ac56f20 100644
+--- a/gdk/gdkscreen.c
++++ b/gdk/gdkscreen.c
+@@ -29,7 +29,6 @@
+ #include "gdkintl.h"
+ 
+ 
+-static void gdk_screen_dispose      (GObject        *object);
+ static void gdk_screen_finalize     (GObject        *object);
+ static void gdk_screen_set_property (GObject        *object,
+ 				     guint           prop_id,
+@@ -64,7 +63,6 @@ gdk_screen_class_init (GdkScreenClass *klass)
+ {
+   GObjectClass *object_class = G_OBJECT_CLASS (klass);
+ 
+-  object_class->dispose = gdk_screen_dispose;
+   object_class->finalize = gdk_screen_finalize;
+   object_class->set_property = gdk_screen_set_property;
+   object_class->get_property = gdk_screen_get_property;
+@@ -156,24 +154,6 @@ gdk_screen_init (GdkScreen *screen)
+ }
+ 
+ static void
+-gdk_screen_dispose (GObject *object)
+-{
+-  GdkScreen *screen = GDK_SCREEN (object);
+-  gint i;
+-
+-  for (i = 0; i < 32; ++i)
+-    {
+-      if (screen->subwindow_gcs[i])
+-        {
+-          g_object_unref (screen->subwindow_gcs[i]);
+-          screen->subwindow_gcs[i] = NULL;
+-        }
+-    }
+-
+-  G_OBJECT_CLASS (gdk_screen_parent_class)->dispose (object);
+-}
+-
+-static void
+ gdk_screen_finalize (GObject *object)
+ {
+   GdkScreen *screen = GDK_SCREEN (object);
+diff --git a/gdk/gdkscreen.h b/gdk/gdkscreen.h
+index 544b430..0f0e4ce 100644
+--- a/gdk/gdkscreen.h
++++ b/gdk/gdkscreen.h
+@@ -49,8 +49,6 @@ struct _GdkScreen
+ 
+   guint GSEAL (closed) : 1;
+ 
+-  GdkGC *GSEAL (subwindow_gcs[32]);
+-
+   cairo_font_options_t *GSEAL (font_options);
+   double GSEAL (resolution);	/* pixels/points scale factor for fonts */
+ };
+diff --git a/gdk/x11/gdkgeometry-x11.c b/gdk/x11/gdkgeometry-x11.c
+index 4ddf5b4..de6ac46 100644
+--- a/gdk/x11/gdkgeometry-x11.c
++++ b/gdk/x11/gdkgeometry-x11.c
+@@ -225,6 +225,47 @@ gdk_window_queue (GdkWindow          *window,
+   g_queue_push_tail (display_x11->translate_queue, item);
+ }
+ 
++static GC
++_get_scratch_gc (GdkWindowObject *window, cairo_region_t *clip_region)
++{
++  GdkScreenX11 *screen;
++  XRectangle *rectangles;
++  gint n_rects;
++  gint depth;
++
++  screen = GDK_SCREEN_X11 (gdk_drawable_get_screen (GDK_DRAWABLE (window)));
++  depth = gdk_drawable_get_depth (GDK_DRAWABLE (window)) - 1;
++
++  if (!screen->subwindow_gcs[depth])
++    {
++      XGCValues values;
++      
++      values.graphics_exposures = True;
++      values.subwindow_mode = IncludeInferiors;
++      
++      screen->subwindow_gcs[depth] = XCreateGC (screen->xdisplay,
++                                                GDK_WINDOW_XID (window),
++                                                GCSubwindowMode | GCGraphicsExposures,
++                                                &values);
++    }
++  
++  _gdk_region_get_xrectangles (clip_region,
++                               0, 0,
++                               &rectangles,
++                               &n_rects);
++  
++  XSetClipRectangles (screen->xdisplay,
++                      screen->subwindow_gcs[depth],
++                      0, 0,
++                      rectangles, n_rects,
++                      YXBanded);
++  
++  g_free (rectangles);
++  return screen->subwindow_gcs[depth];
++}
++
++
++
+ void
+ _gdk_x11_window_translate (GdkWindow      *window,
+                            cairo_region_t *area,
+@@ -232,7 +273,7 @@ _gdk_x11_window_translate (GdkWindow      *window,
+                            gint            dy)
+ {
+   GdkWindowQueueItem *item;
+-  GdkGC *tmp_gc;
++  GC xgc;
+   GdkRectangle extents;
+   GdkWindowObject *private, *impl;
+   int px, py;
+@@ -255,17 +296,10 @@ _gdk_x11_window_translate (GdkWindow      *window,
+ 
+   cairo_region_get_extents (area, &extents);
+ 
+-  tmp_gc = _gdk_drawable_get_subwindow_scratch_gc ((GdkWindow *)private);
+-  gdk_gc_set_clip_region (tmp_gc, area);
++  xgc = _get_scratch_gc (impl, area);
+ 
+   cairo_region_translate (area, -dx, -dy); /* Move to source region */
+ 
+-  /* Ensure that the gc is flushed so that we get the right
+-     serial from NextRequest in gdk_window_queue, i.e. the
+-     the serial for the XCopyArea, not the ones from flushing
+-     the gc. */
+-  _gdk_x11_gc_flush (tmp_gc);
+-
+   item = g_new (GdkWindowQueueItem, 1);
+   item->type = GDK_WINDOW_QUEUE_TRANSLATE;
+   item->u.translate.area = cairo_region_copy (area);
+@@ -276,12 +310,10 @@ _gdk_x11_window_translate (GdkWindow      *window,
+   XCopyArea (GDK_WINDOW_XDISPLAY (impl),
+              GDK_DRAWABLE_IMPL_X11 (private->impl)->xid,
+              GDK_DRAWABLE_IMPL_X11 (impl->impl)->xid,
+-             GDK_GC_GET_XGC (tmp_gc),
++             xgc,
+              extents.x - dx, extents.y - dy,
+              extents.width, extents.height,
+              extents.x, extents.y);
+-
+-  gdk_gc_set_clip_region (tmp_gc, NULL);
+ }
+ 
+ gboolean
+diff --git a/gdk/x11/gdkscreen-x11.c b/gdk/x11/gdkscreen-x11.c
+index 7c20a0e..44abed2 100644
+--- a/gdk/x11/gdkscreen-x11.c
++++ b/gdk/x11/gdkscreen-x11.c
+@@ -297,6 +297,16 @@ static void
+ gdk_screen_x11_dispose (GObject *object)
+ {
+   GdkScreenX11 *screen_x11 = GDK_SCREEN_X11 (object);
++  int i;
++
++  for (i = 0; i < 32; ++i)
++    {
++      if (screen_x11->subwindow_gcs[i])
++        {
++          XFreeGC (screen_x11->xdisplay, screen_x11->subwindow_gcs[i]);
++          screen_x11->subwindow_gcs[i] = 0;
++        }
++    }
+ 
+   _gdk_screen_x11_events_uninit (GDK_SCREEN (object));
+ 
+diff --git a/gdk/x11/gdkscreen-x11.h b/gdk/x11/gdkscreen-x11.h
+index 3efee6a..cb8e45e 100644
+--- a/gdk/x11/gdkscreen-x11.h
++++ b/gdk/x11/gdkscreen-x11.h
+@@ -95,8 +95,7 @@ struct _GdkScreenX11
+   GdkX11Monitor	*monitors;
+   gint           primary_monitor;
+ 
+-  /* Pango renderer object singleton */
+-  PangoRenderer *renderer;
++  GC subwindow_gcs[32];
+ 
+   /* Xft resources for the display, used for default values for
+    * the Xft/ XSETTINGS
diff --git a/gdk/foo.png b/gdk/foo.png
new file mode 100644
index 0000000..fefbe29
Binary files /dev/null and b/gdk/foo.png differ
diff --git a/gdk/gdk.symbols b/gdk/gdk.symbols
index 290a492..557f207 100644
--- a/gdk/gdk.symbols
+++ b/gdk/gdk.symbols
@@ -549,8 +549,6 @@ gdk_drawable_get_visible_region
 gdk_drawable_get_visual
 gdk_drawable_set_colormap
 gdk_draw_drawable
-gdk_draw_glyphs
-gdk_draw_glyphs_transformed
 gdk_draw_line
 gdk_draw_lines
 gdk_draw_point
diff --git a/gdk/gdkalias.h b/gdk/gdkalias.h
new file mode 100644
index 0000000..7bd096f
--- /dev/null
+++ b/gdk/gdkalias.h
@@ -0,0 +1,2808 @@
+/* Generated by makegdkalias.pl */
+
+#ifndef DISABLE_VISIBILITY
+
+#include <glib.h>
+
+#ifdef G_HAVE_GNUC_VISIBILITY
+
+#define IN_FILE(x) 1
+#define IN_HEADER defined
+
+#if IN_HEADER(__GDK_EVENTS_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+extern __typeof (gdk_add_client_message_filter) IA__gdk_add_client_message_filter __attribute((visibility("hidden")));
+#define gdk_add_client_message_filter IA__gdk_add_client_message_filter
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_event_get_graphics_expose) IA__gdk_event_get_graphics_expose __attribute((visibility("hidden")));
+#define gdk_event_get_graphics_expose IA__gdk_event_get_graphics_expose
+
+#endif
+extern __typeof (gdk_events_pending) IA__gdk_events_pending __attribute((visibility("hidden")));
+#define gdk_events_pending IA__gdk_events_pending
+
+#endif
+#endif
+#if IN_HEADER(__GDK_TEST_UTILS_H__)
+#if IN_FILE(__GDK_TEST_UTILS_X11_C__)
+extern __typeof (gdk_test_simulate_button) IA__gdk_test_simulate_button __attribute((visibility("hidden")));
+#define gdk_test_simulate_button IA__gdk_test_simulate_button
+
+extern __typeof (gdk_test_simulate_key) IA__gdk_test_simulate_key __attribute((visibility("hidden")));
+#define gdk_test_simulate_key IA__gdk_test_simulate_key
+
+extern __typeof (gdk_test_render_sync) IA__gdk_test_render_sync __attribute((visibility("hidden")));
+#define gdk_test_render_sync IA__gdk_test_render_sync
+
+#endif
+#endif
+#if IN_HEADER(__GDK_EVENTS_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+extern __typeof (gdk_event_copy) IA__gdk_event_copy __attribute((visibility("hidden")));
+#define gdk_event_copy IA__gdk_event_copy
+
+extern __typeof (gdk_event_free) IA__gdk_event_free __attribute((visibility("hidden")));
+#define gdk_event_free IA__gdk_event_free
+
+extern __typeof (gdk_event_get) IA__gdk_event_get __attribute((visibility("hidden")));
+#define gdk_event_get IA__gdk_event_get
+
+extern __typeof (gdk_event_get_axis) IA__gdk_event_get_axis __attribute((visibility("hidden")));
+#define gdk_event_get_axis IA__gdk_event_get_axis
+
+extern __typeof (gdk_event_get_coords) IA__gdk_event_get_coords __attribute((visibility("hidden")));
+#define gdk_event_get_coords IA__gdk_event_get_coords
+
+extern __typeof (gdk_event_get_root_coords) IA__gdk_event_get_root_coords __attribute((visibility("hidden")));
+#define gdk_event_get_root_coords IA__gdk_event_get_root_coords
+
+extern __typeof (gdk_event_get_screen) IA__gdk_event_get_screen __attribute((visibility("hidden")));
+#define gdk_event_get_screen IA__gdk_event_get_screen
+
+extern __typeof (gdk_event_get_state) IA__gdk_event_get_state __attribute((visibility("hidden")));
+#define gdk_event_get_state IA__gdk_event_get_state
+
+extern __typeof (gdk_event_get_time) IA__gdk_event_get_time __attribute((visibility("hidden")));
+#define gdk_event_get_time IA__gdk_event_get_time
+
+extern __typeof (gdk_event_get_type) IA__gdk_event_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_event_get_type IA__gdk_event_get_type
+
+extern __typeof (gdk_event_handler_set) IA__gdk_event_handler_set __attribute((visibility("hidden")));
+#define gdk_event_handler_set IA__gdk_event_handler_set
+
+extern __typeof (gdk_event_new) IA__gdk_event_new __attribute((visibility("hidden")));
+#define gdk_event_new IA__gdk_event_new
+
+extern __typeof (gdk_event_peek) IA__gdk_event_peek __attribute((visibility("hidden")));
+#define gdk_event_peek IA__gdk_event_peek
+
+extern __typeof (gdk_event_put) IA__gdk_event_put __attribute((visibility("hidden")));
+#define gdk_event_put IA__gdk_event_put
+
+extern __typeof (gdk_event_request_motions) IA__gdk_event_request_motions __attribute((visibility("hidden")));
+#define gdk_event_request_motions IA__gdk_event_request_motions
+
+extern __typeof (gdk_event_set_screen) IA__gdk_event_set_screen __attribute((visibility("hidden")));
+#define gdk_event_set_screen IA__gdk_event_set_screen
+
+extern __typeof (gdk_get_show_events) IA__gdk_get_show_events __attribute((visibility("hidden")));
+#define gdk_get_show_events IA__gdk_get_show_events
+
+extern __typeof (gdk_set_show_events) IA__gdk_set_show_events __attribute((visibility("hidden")));
+#define gdk_set_show_events IA__gdk_set_show_events
+
+extern __typeof (gdk_setting_get) IA__gdk_setting_get __attribute((visibility("hidden")));
+#define gdk_setting_get IA__gdk_setting_get
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_MAIN_X11_C__)
+extern __typeof (gdk_error_trap_pop) IA__gdk_error_trap_pop __attribute((visibility("hidden")));
+#define gdk_error_trap_pop IA__gdk_error_trap_pop
+
+extern __typeof (gdk_error_trap_push) IA__gdk_error_trap_push __attribute((visibility("hidden")));
+#define gdk_error_trap_push IA__gdk_error_trap_push
+
+extern __typeof (gdk_get_display) IA__gdk_get_display __attribute((visibility("hidden")));
+#define gdk_get_display IA__gdk_get_display
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_get_use_xshm) IA__gdk_get_use_xshm __attribute((visibility("hidden")));
+#define gdk_get_use_xshm IA__gdk_get_use_xshm
+
+extern __typeof (gdk_set_use_xshm) IA__gdk_set_use_xshm __attribute((visibility("hidden")));
+#define gdk_set_use_xshm IA__gdk_set_use_xshm
+
+#endif
+extern __typeof (gdk_keyboard_grab) IA__gdk_keyboard_grab __attribute((visibility("hidden")));
+#define gdk_keyboard_grab IA__gdk_keyboard_grab
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+extern __typeof (gdk_beep) IA__gdk_beep __attribute((visibility("hidden")));
+#define gdk_beep IA__gdk_beep
+
+extern __typeof (gdk_set_pointer_hooks) IA__gdk_set_pointer_hooks __attribute((visibility("hidden")));
+#define gdk_set_pointer_hooks IA__gdk_set_pointer_hooks
+
+extern __typeof (gdk_keyboard_ungrab) IA__gdk_keyboard_ungrab __attribute((visibility("hidden")));
+#define gdk_keyboard_ungrab IA__gdk_keyboard_ungrab
+
+extern __typeof (gdk_pointer_is_grabbed) IA__gdk_pointer_is_grabbed __attribute((visibility("hidden")));
+#define gdk_pointer_is_grabbed IA__gdk_pointer_is_grabbed
+
+extern __typeof (gdk_pointer_ungrab) IA__gdk_pointer_ungrab __attribute((visibility("hidden")));
+#define gdk_pointer_ungrab IA__gdk_pointer_ungrab
+
+extern __typeof (gdk_event_send_client_message) IA__gdk_event_send_client_message __attribute((visibility("hidden")));
+#define gdk_event_send_client_message IA__gdk_event_send_client_message
+
+extern __typeof (gdk_event_send_clientmessage_toall) IA__gdk_event_send_clientmessage_toall __attribute((visibility("hidden")));
+#define gdk_event_send_clientmessage_toall IA__gdk_event_send_clientmessage_toall
+
+extern __typeof (gdk_keyboard_grab_info_libgtk_only) IA__gdk_keyboard_grab_info_libgtk_only __attribute((visibility("hidden")));
+#define gdk_keyboard_grab_info_libgtk_only IA__gdk_keyboard_grab_info_libgtk_only
+
+extern __typeof (gdk_pointer_grab_info_libgtk_only) IA__gdk_pointer_grab_info_libgtk_only __attribute((visibility("hidden")));
+#define gdk_pointer_grab_info_libgtk_only IA__gdk_pointer_grab_info_libgtk_only
+
+extern __typeof (gdk_display_pointer_is_grabbed) IA__gdk_display_pointer_is_grabbed __attribute((visibility("hidden")));
+#define gdk_display_pointer_is_grabbed IA__gdk_display_pointer_is_grabbed
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_IM_X11_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_mbstowcs) IA__gdk_mbstowcs __attribute((visibility("hidden")));
+#define gdk_mbstowcs IA__gdk_mbstowcs
+
+extern __typeof (gdk_wcstombs) IA__gdk_wcstombs __attribute((visibility("hidden")));
+#define gdk_wcstombs IA__gdk_wcstombs
+
+#endif
+extern __typeof (gdk_set_locale) IA__gdk_set_locale __attribute((visibility("hidden")));
+#define gdk_set_locale IA__gdk_set_locale
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+extern __typeof (gdk_event_send_client_message_for_display) IA__gdk_event_send_client_message_for_display __attribute((visibility("hidden")));
+#define gdk_event_send_client_message_for_display IA__gdk_event_send_client_message_for_display
+
+extern __typeof (gdk_flush) IA__gdk_flush __attribute((visibility("hidden")));
+#define gdk_flush IA__gdk_flush
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_DISPLAY_X11_C__)
+extern __typeof (gdk_notify_startup_complete) IA__gdk_notify_startup_complete __attribute((visibility("hidden")));
+#define gdk_notify_startup_complete IA__gdk_notify_startup_complete
+
+extern __typeof (gdk_notify_startup_complete_with_id) IA__gdk_notify_startup_complete_with_id __attribute((visibility("hidden")));
+#define gdk_notify_startup_complete_with_id IA__gdk_notify_startup_complete_with_id
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_RECTANGLE_C__)
+extern __typeof (gdk_rectangle_get_type) IA__gdk_rectangle_get_type __attribute((visibility("hidden")));
+#define gdk_rectangle_get_type IA__gdk_rectangle_get_type
+
+extern __typeof (gdk_rectangle_intersect) IA__gdk_rectangle_intersect __attribute((visibility("hidden")));
+#define gdk_rectangle_intersect IA__gdk_rectangle_intersect
+
+extern __typeof (gdk_rectangle_union) IA__gdk_rectangle_union __attribute((visibility("hidden")));
+#define gdk_rectangle_union IA__gdk_rectangle_union
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+extern __typeof (gdk_set_double_click_time) IA__gdk_set_double_click_time __attribute((visibility("hidden")));
+#define gdk_set_double_click_time IA__gdk_set_double_click_time
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_C__)
+extern __typeof (gdk_add_option_entries_libgtk_only) IA__gdk_add_option_entries_libgtk_only __attribute((visibility("hidden")));
+#define gdk_add_option_entries_libgtk_only IA__gdk_add_option_entries_libgtk_only
+
+extern __typeof (gdk_get_display_arg_name) IA__gdk_get_display_arg_name __attribute((visibility("hidden")));
+#define gdk_get_display_arg_name IA__gdk_get_display_arg_name
+
+extern __typeof (gdk_get_program_class) IA__gdk_get_program_class __attribute((visibility("hidden")));
+#define gdk_get_program_class IA__gdk_get_program_class
+
+extern __typeof (gdk_init) IA__gdk_init __attribute((visibility("hidden")));
+#define gdk_init IA__gdk_init
+
+extern __typeof (gdk_init_check) IA__gdk_init_check __attribute((visibility("hidden")));
+#define gdk_init_check IA__gdk_init_check
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_exit) IA__gdk_exit __attribute((visibility("hidden")));
+#define gdk_exit IA__gdk_exit
+
+#endif
+extern __typeof (gdk_pre_parse_libgtk_only) IA__gdk_pre_parse_libgtk_only __attribute((visibility("hidden")));
+#define gdk_pre_parse_libgtk_only IA__gdk_pre_parse_libgtk_only
+
+extern __typeof (gdk_parse_args) IA__gdk_parse_args __attribute((visibility("hidden")));
+#define gdk_parse_args IA__gdk_parse_args
+
+extern __typeof (gdk_set_program_class) IA__gdk_set_program_class __attribute((visibility("hidden")));
+#define gdk_set_program_class IA__gdk_set_program_class
+
+extern __typeof (gdk_threads_enter) IA__gdk_threads_enter __attribute((visibility("hidden")));
+#define gdk_threads_enter IA__gdk_threads_enter
+
+extern __typeof (gdk_threads_init) IA__gdk_threads_init __attribute((visibility("hidden")));
+#define gdk_threads_init IA__gdk_threads_init
+
+extern __typeof (gdk_threads_leave) IA__gdk_threads_leave __attribute((visibility("hidden")));
+#define gdk_threads_leave IA__gdk_threads_leave
+
+extern __typeof (gdk_threads_set_lock_functions) IA__gdk_threads_set_lock_functions __attribute((visibility("hidden")));
+#define gdk_threads_set_lock_functions IA__gdk_threads_set_lock_functions
+
+extern __typeof (gdk_threads_add_idle) IA__gdk_threads_add_idle __attribute((visibility("hidden")));
+#define gdk_threads_add_idle IA__gdk_threads_add_idle
+
+extern __typeof (gdk_threads_add_idle_full) IA__gdk_threads_add_idle_full __attribute((visibility("hidden")));
+#define gdk_threads_add_idle_full IA__gdk_threads_add_idle_full
+
+extern __typeof (gdk_threads_add_timeout) IA__gdk_threads_add_timeout __attribute((visibility("hidden")));
+#define gdk_threads_add_timeout IA__gdk_threads_add_timeout
+
+extern __typeof (gdk_threads_add_timeout_full) IA__gdk_threads_add_timeout_full __attribute((visibility("hidden")));
+#define gdk_threads_add_timeout_full IA__gdk_threads_add_timeout_full
+
+extern __typeof (gdk_threads_add_timeout_seconds) IA__gdk_threads_add_timeout_seconds __attribute((visibility("hidden")));
+#define gdk_threads_add_timeout_seconds IA__gdk_threads_add_timeout_seconds
+
+extern __typeof (gdk_threads_add_timeout_seconds_full) IA__gdk_threads_add_timeout_seconds_full __attribute((visibility("hidden")));
+#define gdk_threads_add_timeout_seconds_full IA__gdk_threads_add_timeout_seconds_full
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_input_add) IA__gdk_input_add __attribute((visibility("hidden")));
+#define gdk_input_add IA__gdk_input_add
+
+extern __typeof (gdk_input_remove) IA__gdk_input_remove __attribute((visibility("hidden")));
+#define gdk_input_remove IA__gdk_input_remove
+
+extern __typeof (gdk_input_add_full) IA__gdk_input_add_full __attribute((visibility("hidden")));
+#define gdk_input_add_full IA__gdk_input_add_full
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_SCREEN_C__)
+extern __typeof (gdk_screen_width) IA__gdk_screen_width __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_screen_width IA__gdk_screen_width
+
+extern __typeof (gdk_screen_width_mm) IA__gdk_screen_width_mm __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_screen_width_mm IA__gdk_screen_width_mm
+
+extern __typeof (gdk_screen_height) IA__gdk_screen_height __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_screen_height IA__gdk_screen_height
+
+extern __typeof (gdk_screen_height_mm) IA__gdk_screen_height_mm __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_screen_height_mm IA__gdk_screen_height_mm
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PROPERTY_H__)
+#if IN_FILE(__GDK_SELECTION_C__)
+extern __typeof (gdk_string_to_compound_text) IA__gdk_string_to_compound_text __attribute((visibility("hidden")));
+#define gdk_string_to_compound_text IA__gdk_string_to_compound_text
+
+extern __typeof (gdk_text_property_to_text_list) IA__gdk_text_property_to_text_list __attribute((visibility("hidden")));
+#define gdk_text_property_to_text_list IA__gdk_text_property_to_text_list
+
+extern __typeof (gdk_text_property_to_utf8_list) IA__gdk_text_property_to_utf8_list __attribute((visibility("hidden")));
+#define gdk_text_property_to_utf8_list IA__gdk_text_property_to_utf8_list
+
+extern __typeof (gdk_utf8_to_compound_text) IA__gdk_utf8_to_compound_text __attribute((visibility("hidden")));
+#define gdk_utf8_to_compound_text IA__gdk_utf8_to_compound_text
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PROPERTY_H__)
+#if IN_FILE(__GDK_PROPERTY_X11_C__)
+extern __typeof (gdk_atom_intern) IA__gdk_atom_intern __attribute((visibility("hidden")));
+#define gdk_atom_intern IA__gdk_atom_intern
+
+extern __typeof (gdk_atom_intern_static_string) IA__gdk_atom_intern_static_string __attribute((visibility("hidden")));
+#define gdk_atom_intern_static_string IA__gdk_atom_intern_static_string
+
+extern __typeof (gdk_atom_name) IA__gdk_atom_name __attribute((visibility("hidden")));
+#define gdk_atom_name IA__gdk_atom_name
+
+extern __typeof (gdk_property_change) IA__gdk_property_change __attribute((visibility("hidden")));
+#define gdk_property_change IA__gdk_property_change
+
+extern __typeof (gdk_property_delete) IA__gdk_property_delete __attribute((visibility("hidden")));
+#define gdk_property_delete IA__gdk_property_delete
+
+extern __typeof (gdk_property_get) IA__gdk_property_get __attribute((visibility("hidden")));
+#define gdk_property_get IA__gdk_property_get
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PROPERTY_H__)
+#if IN_FILE(__GDK_SELECTION_X11_C__)
+extern __typeof (gdk_free_compound_text) IA__gdk_free_compound_text __attribute((visibility("hidden")));
+#define gdk_free_compound_text IA__gdk_free_compound_text
+
+extern __typeof (gdk_free_text_list) IA__gdk_free_text_list __attribute((visibility("hidden")));
+#define gdk_free_text_list IA__gdk_free_text_list
+
+extern __typeof (gdk_string_to_compound_text_for_display) IA__gdk_string_to_compound_text_for_display __attribute((visibility("hidden")));
+#define gdk_string_to_compound_text_for_display IA__gdk_string_to_compound_text_for_display
+
+extern __typeof (gdk_text_property_to_text_list_for_display) IA__gdk_text_property_to_text_list_for_display __attribute((visibility("hidden")));
+#define gdk_text_property_to_text_list_for_display IA__gdk_text_property_to_text_list_for_display
+
+extern __typeof (gdk_text_property_to_utf8_list_for_display) IA__gdk_text_property_to_utf8_list_for_display __attribute((visibility("hidden")));
+#define gdk_text_property_to_utf8_list_for_display IA__gdk_text_property_to_utf8_list_for_display
+
+extern __typeof (gdk_utf8_to_string_target) IA__gdk_utf8_to_string_target __attribute((visibility("hidden")));
+#define gdk_utf8_to_string_target IA__gdk_utf8_to_string_target
+
+extern __typeof (gdk_utf8_to_compound_text_for_display) IA__gdk_utf8_to_compound_text_for_display __attribute((visibility("hidden")));
+#define gdk_utf8_to_compound_text_for_display IA__gdk_utf8_to_compound_text_for_display
+
+#endif
+#endif
+#if IN_HEADER(__GDK_ENUM_TYPES_H__)
+#if IN_FILE(__GDK_ENUM_TYPES_C__)
+extern __typeof (gdk_rgb_dither_get_type) IA__gdk_rgb_dither_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_rgb_dither_get_type IA__gdk_rgb_dither_get_type
+
+extern __typeof (gdk_drag_protocol_get_type) IA__gdk_drag_protocol_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_drag_protocol_get_type IA__gdk_drag_protocol_get_type
+
+extern __typeof (gdk_input_source_get_type) IA__gdk_input_source_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_input_source_get_type IA__gdk_input_source_get_type
+
+extern __typeof (gdk_input_condition_get_type) IA__gdk_input_condition_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_input_condition_get_type IA__gdk_input_condition_get_type
+
+extern __typeof (gdk_input_mode_get_type) IA__gdk_input_mode_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_input_mode_get_type IA__gdk_input_mode_get_type
+
+extern __typeof (gdk_axis_use_get_type) IA__gdk_axis_use_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_axis_use_get_type IA__gdk_axis_use_get_type
+
+extern __typeof (gdk_byte_order_get_type) IA__gdk_byte_order_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_byte_order_get_type IA__gdk_byte_order_get_type
+
+extern __typeof (gdk_cap_style_get_type) IA__gdk_cap_style_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_cap_style_get_type IA__gdk_cap_style_get_type
+
+extern __typeof (gdk_crossing_mode_get_type) IA__gdk_crossing_mode_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_crossing_mode_get_type IA__gdk_crossing_mode_get_type
+
+extern __typeof (gdk_extension_mode_get_type) IA__gdk_extension_mode_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_extension_mode_get_type IA__gdk_extension_mode_get_type
+
+extern __typeof (gdk_event_mask_get_type) IA__gdk_event_mask_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_event_mask_get_type IA__gdk_event_mask_get_type
+
+extern __typeof (gdk_event_type_get_type) IA__gdk_event_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_event_type_get_type IA__gdk_event_type_get_type
+
+extern __typeof (gdk_fill_get_type) IA__gdk_fill_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_fill_get_type IA__gdk_fill_get_type
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_fill_rule_get_type) IA__gdk_fill_rule_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_fill_rule_get_type IA__gdk_fill_rule_get_type
+
+#endif
+extern __typeof (gdk_filter_return_get_type) IA__gdk_filter_return_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_filter_return_get_type IA__gdk_filter_return_get_type
+
+extern __typeof (gdk_function_get_type) IA__gdk_function_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_function_get_type IA__gdk_function_get_type
+
+extern __typeof (gdk_grab_status_get_type) IA__gdk_grab_status_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_grab_status_get_type IA__gdk_grab_status_get_type
+
+extern __typeof (gdk_gravity_get_type) IA__gdk_gravity_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_gravity_get_type IA__gdk_gravity_get_type
+
+extern __typeof (gdk_join_style_get_type) IA__gdk_join_style_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_join_style_get_type IA__gdk_join_style_get_type
+
+extern __typeof (gdk_line_style_get_type) IA__gdk_line_style_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_line_style_get_type IA__gdk_line_style_get_type
+
+extern __typeof (gdk_modifier_type_get_type) IA__gdk_modifier_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_modifier_type_get_type IA__gdk_modifier_type_get_type
+
+extern __typeof (gdk_notify_type_get_type) IA__gdk_notify_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_notify_type_get_type IA__gdk_notify_type_get_type
+
+extern __typeof (gdk_overlap_type_get_type) IA__gdk_overlap_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_overlap_type_get_type IA__gdk_overlap_type_get_type
+
+extern __typeof (gdk_owner_change_get_type) IA__gdk_owner_change_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_owner_change_get_type IA__gdk_owner_change_get_type
+
+extern __typeof (gdk_property_state_get_type) IA__gdk_property_state_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_property_state_get_type IA__gdk_property_state_get_type
+
+extern __typeof (gdk_prop_mode_get_type) IA__gdk_prop_mode_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_prop_mode_get_type IA__gdk_prop_mode_get_type
+
+extern __typeof (gdk_scroll_direction_get_type) IA__gdk_scroll_direction_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_scroll_direction_get_type IA__gdk_scroll_direction_get_type
+
+extern __typeof (gdk_setting_action_get_type) IA__gdk_setting_action_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_setting_action_get_type IA__gdk_setting_action_get_type
+
+extern __typeof (gdk_status_get_type) IA__gdk_status_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_status_get_type IA__gdk_status_get_type
+
+extern __typeof (gdk_subwindow_mode_get_type) IA__gdk_subwindow_mode_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_subwindow_mode_get_type IA__gdk_subwindow_mode_get_type
+
+extern __typeof (gdk_visibility_state_get_type) IA__gdk_visibility_state_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_visibility_state_get_type IA__gdk_visibility_state_get_type
+
+extern __typeof (gdk_wm_decoration_get_type) IA__gdk_wm_decoration_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_wm_decoration_get_type IA__gdk_wm_decoration_get_type
+
+extern __typeof (gdk_wm_function_get_type) IA__gdk_wm_function_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_wm_function_get_type IA__gdk_wm_function_get_type
+
+extern __typeof (gdk_font_type_get_type) IA__gdk_font_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_font_type_get_type IA__gdk_font_type_get_type
+
+extern __typeof (gdk_cursor_type_get_type) IA__gdk_cursor_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_cursor_type_get_type IA__gdk_cursor_type_get_type
+
+extern __typeof (gdk_drag_action_get_type) IA__gdk_drag_action_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_drag_action_get_type IA__gdk_drag_action_get_type
+
+extern __typeof (gdk_gc_values_mask_get_type) IA__gdk_gc_values_mask_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_gc_values_mask_get_type IA__gdk_gc_values_mask_get_type
+
+extern __typeof (gdk_window_attributes_type_get_type) IA__gdk_window_attributes_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_attributes_type_get_type IA__gdk_window_attributes_type_get_type
+
+extern __typeof (gdk_window_class_get_type) IA__gdk_window_class_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_class_get_type IA__gdk_window_class_get_type
+
+extern __typeof (gdk_window_edge_get_type) IA__gdk_window_edge_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_edge_get_type IA__gdk_window_edge_get_type
+
+extern __typeof (gdk_window_hints_get_type) IA__gdk_window_hints_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_hints_get_type IA__gdk_window_hints_get_type
+
+extern __typeof (gdk_window_state_get_type) IA__gdk_window_state_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_state_get_type IA__gdk_window_state_get_type
+
+extern __typeof (gdk_window_type_get_type) IA__gdk_window_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_type_get_type IA__gdk_window_type_get_type
+
+extern __typeof (gdk_window_type_hint_get_type) IA__gdk_window_type_hint_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_type_hint_get_type IA__gdk_window_type_hint_get_type
+
+extern __typeof (gdk_image_type_get_type) IA__gdk_image_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_image_type_get_type IA__gdk_image_type_get_type
+
+extern __typeof (gdk_visual_type_get_type) IA__gdk_visual_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_visual_type_get_type IA__gdk_visual_type_get_type
+
+#endif
+#endif
+#if IN_HEADER(__GDK_FONT_H__)
+#if IN_FILE(__GDK_FONT_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_font_from_description) IA__gdk_font_from_description __attribute((visibility("hidden")));
+#define gdk_font_from_description IA__gdk_font_from_description
+
+#endif
+extern __typeof (gdk_font_get_type) IA__gdk_font_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_font_get_type IA__gdk_font_get_type
+
+extern __typeof (gdk_font_ref) IA__gdk_font_ref __attribute((visibility("hidden")));
+#define gdk_font_ref IA__gdk_font_ref
+
+extern __typeof (gdk_font_unref) IA__gdk_font_unref __attribute((visibility("hidden")));
+#define gdk_font_unref IA__gdk_font_unref
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_font_load) IA__gdk_font_load __attribute((visibility("hidden")));
+#define gdk_font_load IA__gdk_font_load
+
+extern __typeof (gdk_string_width) IA__gdk_string_width __attribute((visibility("hidden")));
+#define gdk_string_width IA__gdk_string_width
+
+extern __typeof (gdk_char_width) IA__gdk_char_width __attribute((visibility("hidden")));
+#define gdk_char_width IA__gdk_char_width
+
+extern __typeof (gdk_char_width_wc) IA__gdk_char_width_wc __attribute((visibility("hidden")));
+#define gdk_char_width_wc IA__gdk_char_width_wc
+
+extern __typeof (gdk_string_measure) IA__gdk_string_measure __attribute((visibility("hidden")));
+#define gdk_string_measure IA__gdk_string_measure
+
+extern __typeof (gdk_text_measure) IA__gdk_text_measure __attribute((visibility("hidden")));
+#define gdk_text_measure IA__gdk_text_measure
+
+extern __typeof (gdk_char_measure) IA__gdk_char_measure __attribute((visibility("hidden")));
+#define gdk_char_measure IA__gdk_char_measure
+
+extern __typeof (gdk_string_height) IA__gdk_string_height __attribute((visibility("hidden")));
+#define gdk_string_height IA__gdk_string_height
+
+extern __typeof (gdk_text_height) IA__gdk_text_height __attribute((visibility("hidden")));
+#define gdk_text_height IA__gdk_text_height
+
+extern __typeof (gdk_char_height) IA__gdk_char_height __attribute((visibility("hidden")));
+#define gdk_char_height IA__gdk_char_height
+
+extern __typeof (gdk_string_extents) IA__gdk_string_extents __attribute((visibility("hidden")));
+#define gdk_string_extents IA__gdk_string_extents
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_FONT_H__)
+#if IN_FILE(__GDK_FONT_X11_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_text_extents) IA__gdk_text_extents __attribute((visibility("hidden")));
+#define gdk_text_extents IA__gdk_text_extents
+
+extern __typeof (gdk_text_extents_wc) IA__gdk_text_extents_wc __attribute((visibility("hidden")));
+#define gdk_text_extents_wc IA__gdk_text_extents_wc
+
+extern __typeof (gdk_text_width) IA__gdk_text_width __attribute((visibility("hidden")));
+#define gdk_text_width IA__gdk_text_width
+
+extern __typeof (gdk_text_width_wc) IA__gdk_text_width_wc __attribute((visibility("hidden")));
+#define gdk_text_width_wc IA__gdk_text_width_wc
+
+extern __typeof (gdk_font_get_display) IA__gdk_font_get_display __attribute((visibility("hidden")));
+#define gdk_font_get_display IA__gdk_font_get_display
+
+extern __typeof (gdk_fontset_load) IA__gdk_fontset_load __attribute((visibility("hidden")));
+#define gdk_fontset_load IA__gdk_fontset_load
+
+#endif
+extern __typeof (gdk_font_id) IA__gdk_font_id __attribute((visibility("hidden")));
+#define gdk_font_id IA__gdk_font_id
+
+extern __typeof (gdk_font_equal) IA__gdk_font_equal __attribute((visibility("hidden")));
+#define gdk_font_equal IA__gdk_font_equal
+
+extern __typeof (gdk_font_load_for_display) IA__gdk_font_load_for_display __attribute((visibility("hidden")));
+#define gdk_font_load_for_display IA__gdk_font_load_for_display
+
+extern __typeof (gdk_font_from_description_for_display) IA__gdk_font_from_description_for_display __attribute((visibility("hidden")));
+#define gdk_font_from_description_for_display IA__gdk_font_from_description_for_display
+
+extern __typeof (gdk_fontset_load_for_display) IA__gdk_fontset_load_for_display __attribute((visibility("hidden")));
+#define gdk_fontset_load_for_display IA__gdk_fontset_load_for_display
+
+#endif
+#endif
+#if IN_HEADER(__GDK_CAIRO_H__)
+#if IN_FILE(__GDK_CAIRO_C__)
+extern __typeof (gdk_cairo_create) IA__gdk_cairo_create __attribute((visibility("hidden")));
+#define gdk_cairo_create IA__gdk_cairo_create
+
+extern __typeof (gdk_cairo_reset_clip) IA__gdk_cairo_reset_clip __attribute((visibility("hidden")));
+#define gdk_cairo_reset_clip IA__gdk_cairo_reset_clip
+
+extern __typeof (gdk_cairo_set_source_color) IA__gdk_cairo_set_source_color __attribute((visibility("hidden")));
+#define gdk_cairo_set_source_color IA__gdk_cairo_set_source_color
+
+extern __typeof (gdk_cairo_set_source_pixbuf) IA__gdk_cairo_set_source_pixbuf __attribute((visibility("hidden")));
+#define gdk_cairo_set_source_pixbuf IA__gdk_cairo_set_source_pixbuf
+
+extern __typeof (gdk_cairo_set_source_pixmap) IA__gdk_cairo_set_source_pixmap __attribute((visibility("hidden")));
+#define gdk_cairo_set_source_pixmap IA__gdk_cairo_set_source_pixmap
+
+extern __typeof (gdk_cairo_rectangle) IA__gdk_cairo_rectangle __attribute((visibility("hidden")));
+#define gdk_cairo_rectangle IA__gdk_cairo_rectangle
+
+extern __typeof (gdk_cairo_region) IA__gdk_cairo_region __attribute((visibility("hidden")));
+#define gdk_cairo_region IA__gdk_cairo_region
+
+#endif
+#endif
+#if IN_HEADER(__GDK_COLOR_H__)
+#if IN_FILE(__GDK_COLOR_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_colors_store) IA__gdk_colors_store __attribute((visibility("hidden")));
+#define gdk_colors_store IA__gdk_colors_store
+
+extern __typeof (gdk_color_white) IA__gdk_color_white __attribute((visibility("hidden")));
+#define gdk_color_white IA__gdk_color_white
+
+extern __typeof (gdk_color_black) IA__gdk_color_black __attribute((visibility("hidden")));
+#define gdk_color_black IA__gdk_color_black
+
+extern __typeof (gdk_color_alloc) IA__gdk_color_alloc __attribute((visibility("hidden")));
+#define gdk_color_alloc IA__gdk_color_alloc
+
+#endif
+extern __typeof (gdk_color_copy) IA__gdk_color_copy __attribute((visibility("hidden")));
+#define gdk_color_copy IA__gdk_color_copy
+
+extern __typeof (gdk_color_equal) IA__gdk_color_equal __attribute((visibility("hidden")));
+#define gdk_color_equal IA__gdk_color_equal
+
+extern __typeof (gdk_color_free) IA__gdk_color_free __attribute((visibility("hidden")));
+#define gdk_color_free IA__gdk_color_free
+
+extern __typeof (gdk_color_get_type) IA__gdk_color_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_color_get_type IA__gdk_color_get_type
+
+extern __typeof (gdk_color_hash) IA__gdk_color_hash __attribute((visibility("hidden")));
+#define gdk_color_hash IA__gdk_color_hash
+
+extern __typeof (gdk_colormap_alloc_color) IA__gdk_colormap_alloc_color __attribute((visibility("hidden")));
+#define gdk_colormap_alloc_color IA__gdk_colormap_alloc_color
+
+extern __typeof (gdk_colormap_get_system) IA__gdk_colormap_get_system __attribute((visibility("hidden")));
+#define gdk_colormap_get_system IA__gdk_colormap_get_system
+
+extern __typeof (gdk_colormap_get_visual) IA__gdk_colormap_get_visual __attribute((visibility("hidden")));
+#define gdk_colormap_get_visual IA__gdk_colormap_get_visual
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_colormap_ref) IA__gdk_colormap_ref __attribute((visibility("hidden")));
+#define gdk_colormap_ref IA__gdk_colormap_ref
+
+extern __typeof (gdk_colormap_unref) IA__gdk_colormap_unref __attribute((visibility("hidden")));
+#define gdk_colormap_unref IA__gdk_colormap_unref
+
+#endif
+extern __typeof (gdk_color_parse) IA__gdk_color_parse __attribute((visibility("hidden")));
+#define gdk_color_parse IA__gdk_color_parse
+
+extern __typeof (gdk_color_to_string) IA__gdk_color_to_string __attribute((visibility("hidden")));
+#define gdk_color_to_string IA__gdk_color_to_string
+
+#endif
+#endif
+#if IN_HEADER(__GDK_COLOR_H__)
+#if IN_FILE(__GDK_COLOR_X11_C__)
+extern __typeof (gdk_colormap_new) IA__gdk_colormap_new __attribute((visibility("hidden")));
+#define gdk_colormap_new IA__gdk_colormap_new
+
+extern __typeof (gdk_colormap_get_type) IA__gdk_colormap_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_colormap_get_type IA__gdk_colormap_get_type
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_colormap_change) IA__gdk_colormap_change __attribute((visibility("hidden")));
+#define gdk_colormap_change IA__gdk_colormap_change
+
+extern __typeof (gdk_colors_alloc) IA__gdk_colors_alloc __attribute((visibility("hidden")));
+#define gdk_colors_alloc IA__gdk_colors_alloc
+
+extern __typeof (gdk_colors_free) IA__gdk_colors_free __attribute((visibility("hidden")));
+#define gdk_colors_free IA__gdk_colors_free
+
+extern __typeof (gdk_colormap_get_system_size) IA__gdk_colormap_get_system_size __attribute((visibility("hidden")));
+#define gdk_colormap_get_system_size IA__gdk_colormap_get_system_size
+
+extern __typeof (gdk_color_change) IA__gdk_color_change __attribute((visibility("hidden")));
+#define gdk_color_change IA__gdk_color_change
+
+#endif
+extern __typeof (gdk_colormap_alloc_colors) IA__gdk_colormap_alloc_colors __attribute((visibility("hidden")));
+#define gdk_colormap_alloc_colors IA__gdk_colormap_alloc_colors
+
+extern __typeof (gdk_colormap_free_colors) IA__gdk_colormap_free_colors __attribute((visibility("hidden")));
+#define gdk_colormap_free_colors IA__gdk_colormap_free_colors
+
+extern __typeof (gdk_colormap_query_color) IA__gdk_colormap_query_color __attribute((visibility("hidden")));
+#define gdk_colormap_query_color IA__gdk_colormap_query_color
+
+extern __typeof (gdk_colormap_get_screen) IA__gdk_colormap_get_screen __attribute((visibility("hidden")));
+#define gdk_colormap_get_screen IA__gdk_colormap_get_screen
+
+#endif
+#endif
+#if IN_HEADER(__GDK_CURSOR_H__)
+#if IN_FILE(__GDK_CURSOR_C__)
+extern __typeof (gdk_cursor_get_type) IA__gdk_cursor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_cursor_get_type IA__gdk_cursor_get_type
+
+extern __typeof (gdk_cursor_get_cursor_type) IA__gdk_cursor_get_cursor_type __attribute((visibility("hidden")));
+#define gdk_cursor_get_cursor_type IA__gdk_cursor_get_cursor_type
+
+extern __typeof (gdk_cursor_new) IA__gdk_cursor_new __attribute((visibility("hidden")));
+#define gdk_cursor_new IA__gdk_cursor_new
+
+extern __typeof (gdk_cursor_ref) IA__gdk_cursor_ref __attribute((visibility("hidden")));
+#define gdk_cursor_ref IA__gdk_cursor_ref
+
+extern __typeof (gdk_cursor_unref) IA__gdk_cursor_unref __attribute((visibility("hidden")));
+#define gdk_cursor_unref IA__gdk_cursor_unref
+
+#endif
+#endif
+#if IN_HEADER(__GDK_CURSOR_H__)
+#if IN_FILE(__GDK_CURSOR_X11_C__)
+extern __typeof (gdk_cursor_get_display) IA__gdk_cursor_get_display __attribute((visibility("hidden")));
+#define gdk_cursor_get_display IA__gdk_cursor_get_display
+
+extern __typeof (gdk_cursor_new_for_display) IA__gdk_cursor_new_for_display __attribute((visibility("hidden")));
+#define gdk_cursor_new_for_display IA__gdk_cursor_new_for_display
+
+extern __typeof (gdk_cursor_new_from_pixbuf) IA__gdk_cursor_new_from_pixbuf __attribute((visibility("hidden")));
+#define gdk_cursor_new_from_pixbuf IA__gdk_cursor_new_from_pixbuf
+
+extern __typeof (gdk_cursor_new_from_pixmap) IA__gdk_cursor_new_from_pixmap __attribute((visibility("hidden")));
+#define gdk_cursor_new_from_pixmap IA__gdk_cursor_new_from_pixmap
+
+extern __typeof (gdk_cursor_new_from_name) IA__gdk_cursor_new_from_name __attribute((visibility("hidden")));
+#define gdk_cursor_new_from_name IA__gdk_cursor_new_from_name
+
+extern __typeof (gdk_cursor_get_image) IA__gdk_cursor_get_image __attribute((visibility("hidden")));
+#define gdk_cursor_get_image IA__gdk_cursor_get_image
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_C__)
+extern __typeof (gdk_device_free_history) IA__gdk_device_free_history __attribute((visibility("hidden")));
+#define gdk_device_free_history IA__gdk_device_free_history
+
+extern __typeof (gdk_device_get_axis) IA__gdk_device_get_axis __attribute((visibility("hidden")));
+#define gdk_device_get_axis IA__gdk_device_get_axis
+
+extern __typeof (gdk_device_get_axis_use) IA__gdk_device_get_axis_use __attribute((visibility("hidden")));
+#define gdk_device_get_axis_use IA__gdk_device_get_axis_use
+
+extern __typeof (gdk_device_get_has_cursor) IA__gdk_device_get_has_cursor __attribute((visibility("hidden")));
+#define gdk_device_get_has_cursor IA__gdk_device_get_has_cursor
+
+extern __typeof (gdk_device_get_history) IA__gdk_device_get_history __attribute((visibility("hidden")));
+#define gdk_device_get_history IA__gdk_device_get_history
+
+extern __typeof (gdk_device_get_key) IA__gdk_device_get_key __attribute((visibility("hidden")));
+#define gdk_device_get_key IA__gdk_device_get_key
+
+extern __typeof (gdk_device_get_mode) IA__gdk_device_get_mode __attribute((visibility("hidden")));
+#define gdk_device_get_mode IA__gdk_device_get_mode
+
+extern __typeof (gdk_device_get_name) IA__gdk_device_get_name __attribute((visibility("hidden")));
+#define gdk_device_get_name IA__gdk_device_get_name
+
+extern __typeof (gdk_device_get_n_axes) IA__gdk_device_get_n_axes __attribute((visibility("hidden")));
+#define gdk_device_get_n_axes IA__gdk_device_get_n_axes
+
+extern __typeof (gdk_device_get_source) IA__gdk_device_get_source __attribute((visibility("hidden")));
+#define gdk_device_get_source IA__gdk_device_get_source
+
+extern __typeof (gdk_device_get_type) IA__gdk_device_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_device_get_type IA__gdk_device_get_type
+
+extern __typeof (gdk_device_set_axis_use) IA__gdk_device_set_axis_use __attribute((visibility("hidden")));
+#define gdk_device_set_axis_use IA__gdk_device_set_axis_use
+
+extern __typeof (gdk_device_set_key) IA__gdk_device_set_key __attribute((visibility("hidden")));
+#define gdk_device_set_key IA__gdk_device_set_key
+
+extern __typeof (gdk_device_set_source) IA__gdk_device_set_source __attribute((visibility("hidden")));
+#define gdk_device_set_source IA__gdk_device_set_source
+
+extern __typeof (gdk_devices_list) IA__gdk_devices_list __attribute((visibility("hidden")));
+#define gdk_devices_list IA__gdk_devices_list
+
+extern __typeof (gdk_input_set_extension_events) IA__gdk_input_set_extension_events __attribute((visibility("hidden")));
+#define gdk_input_set_extension_events IA__gdk_input_set_extension_events
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+extern __typeof (gdk_device_get_core_pointer) IA__gdk_device_get_core_pointer __attribute((visibility("hidden")));
+#define gdk_device_get_core_pointer IA__gdk_device_get_core_pointer
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_X11_C__)
+extern __typeof (gdk_device_get_state) IA__gdk_device_get_state __attribute((visibility("hidden")));
+#define gdk_device_get_state IA__gdk_device_get_state
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_XFREE_C__)
+extern __typeof (gdk_device_set_mode) IA__gdk_device_set_mode __attribute((visibility("hidden")));
+#define gdk_device_set_mode IA__gdk_device_set_mode
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_NONE_C__)
+extern __typeof (gdk_device_get_state) IA__gdk_device_get_state __attribute((visibility("hidden")));
+#define gdk_device_get_state IA__gdk_device_get_state
+
+extern __typeof (gdk_device_set_mode) IA__gdk_device_set_mode __attribute((visibility("hidden")));
+#define gdk_device_set_mode IA__gdk_device_set_mode
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+extern __typeof (gdk_display_add_client_message_filter) IA__gdk_display_add_client_message_filter __attribute((visibility("hidden")));
+#define gdk_display_add_client_message_filter IA__gdk_display_add_client_message_filter
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+extern __typeof (gdk_display_close) IA__gdk_display_close __attribute((visibility("hidden")));
+#define gdk_display_close IA__gdk_display_close
+
+extern __typeof (gdk_display_get_core_pointer) IA__gdk_display_get_core_pointer __attribute((visibility("hidden")));
+#define gdk_display_get_core_pointer IA__gdk_display_get_core_pointer
+
+extern __typeof (gdk_display_get_event) IA__gdk_display_get_event __attribute((visibility("hidden")));
+#define gdk_display_get_event IA__gdk_display_get_event
+
+extern __typeof (gdk_display_get_pointer) IA__gdk_display_get_pointer __attribute((visibility("hidden")));
+#define gdk_display_get_pointer IA__gdk_display_get_pointer
+
+extern __typeof (gdk_display_get_type) IA__gdk_display_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_display_get_type IA__gdk_display_get_type
+
+extern __typeof (gdk_display_get_window_at_pointer) IA__gdk_display_get_window_at_pointer __attribute((visibility("hidden")));
+#define gdk_display_get_window_at_pointer IA__gdk_display_get_window_at_pointer
+
+extern __typeof (gdk_display_peek_event) IA__gdk_display_peek_event __attribute((visibility("hidden")));
+#define gdk_display_peek_event IA__gdk_display_peek_event
+
+extern __typeof (gdk_display_put_event) IA__gdk_display_put_event __attribute((visibility("hidden")));
+#define gdk_display_put_event IA__gdk_display_put_event
+
+extern __typeof (gdk_display_set_pointer_hooks) IA__gdk_display_set_pointer_hooks __attribute((visibility("hidden")));
+#define gdk_display_set_pointer_hooks IA__gdk_display_set_pointer_hooks
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+extern __typeof (gdk_display_warp_pointer) IA__gdk_display_warp_pointer __attribute((visibility("hidden")));
+#define gdk_display_warp_pointer IA__gdk_display_warp_pointer
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_DISPLAY_MANAGER_C__)
+extern __typeof (gdk_display_get_default) IA__gdk_display_get_default __attribute((visibility("hidden")));
+#define gdk_display_get_default IA__gdk_display_get_default
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_CURSOR_X11_C__)
+extern __typeof (gdk_display_get_default_cursor_size) IA__gdk_display_get_default_cursor_size __attribute((visibility("hidden")));
+#define gdk_display_get_default_cursor_size IA__gdk_display_get_default_cursor_size
+
+extern __typeof (gdk_display_get_maximal_cursor_size) IA__gdk_display_get_maximal_cursor_size __attribute((visibility("hidden")));
+#define gdk_display_get_maximal_cursor_size IA__gdk_display_get_maximal_cursor_size
+
+extern __typeof (gdk_display_supports_cursor_alpha) IA__gdk_display_supports_cursor_alpha __attribute((visibility("hidden")));
+#define gdk_display_supports_cursor_alpha IA__gdk_display_supports_cursor_alpha
+
+extern __typeof (gdk_display_supports_cursor_color) IA__gdk_display_supports_cursor_color __attribute((visibility("hidden")));
+#define gdk_display_supports_cursor_color IA__gdk_display_supports_cursor_color
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_DISPLAY_X11_C__)
+extern __typeof (gdk_display_beep) IA__gdk_display_beep __attribute((visibility("hidden")));
+#define gdk_display_beep IA__gdk_display_beep
+
+extern __typeof (gdk_display_sync) IA__gdk_display_sync __attribute((visibility("hidden")));
+#define gdk_display_sync IA__gdk_display_sync
+
+extern __typeof (gdk_display_flush) IA__gdk_display_flush __attribute((visibility("hidden")));
+#define gdk_display_flush IA__gdk_display_flush
+
+extern __typeof (gdk_display_get_default_group) IA__gdk_display_get_default_group __attribute((visibility("hidden")));
+#define gdk_display_get_default_group IA__gdk_display_get_default_group
+
+extern __typeof (gdk_display_get_default_screen) IA__gdk_display_get_default_screen __attribute((visibility("hidden")));
+#define gdk_display_get_default_screen IA__gdk_display_get_default_screen
+
+extern __typeof (gdk_display_get_name) IA__gdk_display_get_name __attribute((visibility("hidden")));
+#define gdk_display_get_name IA__gdk_display_get_name
+
+extern __typeof (gdk_display_get_n_screens) IA__gdk_display_get_n_screens __attribute((visibility("hidden")));
+#define gdk_display_get_n_screens IA__gdk_display_get_n_screens
+
+extern __typeof (gdk_display_get_screen) IA__gdk_display_get_screen __attribute((visibility("hidden")));
+#define gdk_display_get_screen IA__gdk_display_get_screen
+
+extern __typeof (gdk_display_pointer_ungrab) IA__gdk_display_pointer_ungrab __attribute((visibility("hidden")));
+#define gdk_display_pointer_ungrab IA__gdk_display_pointer_ungrab
+
+extern __typeof (gdk_display_keyboard_ungrab) IA__gdk_display_keyboard_ungrab __attribute((visibility("hidden")));
+#define gdk_display_keyboard_ungrab IA__gdk_display_keyboard_ungrab
+
+extern __typeof (gdk_display_open) IA__gdk_display_open __attribute((visibility("hidden")));
+#define gdk_display_open IA__gdk_display_open
+
+extern __typeof (gdk_display_request_selection_notification) IA__gdk_display_request_selection_notification __attribute((visibility("hidden")));
+#define gdk_display_request_selection_notification IA__gdk_display_request_selection_notification
+
+extern __typeof (gdk_display_store_clipboard) IA__gdk_display_store_clipboard __attribute((visibility("hidden")));
+#define gdk_display_store_clipboard IA__gdk_display_store_clipboard
+
+extern __typeof (gdk_display_supports_clipboard_persistence) IA__gdk_display_supports_clipboard_persistence __attribute((visibility("hidden")));
+#define gdk_display_supports_clipboard_persistence IA__gdk_display_supports_clipboard_persistence
+
+extern __typeof (gdk_display_supports_selection_notification) IA__gdk_display_supports_selection_notification __attribute((visibility("hidden")));
+#define gdk_display_supports_selection_notification IA__gdk_display_supports_selection_notification
+
+extern __typeof (gdk_display_supports_shapes) IA__gdk_display_supports_shapes __attribute((visibility("hidden")));
+#define gdk_display_supports_shapes IA__gdk_display_supports_shapes
+
+extern __typeof (gdk_display_supports_input_shapes) IA__gdk_display_supports_input_shapes __attribute((visibility("hidden")));
+#define gdk_display_supports_input_shapes IA__gdk_display_supports_input_shapes
+
+extern __typeof (gdk_display_supports_composite) IA__gdk_display_supports_composite __attribute((visibility("hidden")));
+#define gdk_display_supports_composite IA__gdk_display_supports_composite
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_INPUT_C__)
+extern __typeof (gdk_display_list_devices) IA__gdk_display_list_devices __attribute((visibility("hidden")));
+#define gdk_display_list_devices IA__gdk_display_list_devices
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_C__)
+extern __typeof (gdk_display_open_default_libgtk_only) IA__gdk_display_open_default_libgtk_only __attribute((visibility("hidden")));
+#define gdk_display_open_default_libgtk_only IA__gdk_display_open_default_libgtk_only
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+extern __typeof (gdk_display_set_double_click_distance) IA__gdk_display_set_double_click_distance __attribute((visibility("hidden")));
+#define gdk_display_set_double_click_distance IA__gdk_display_set_double_click_distance
+
+extern __typeof (gdk_display_set_double_click_time) IA__gdk_display_set_double_click_time __attribute((visibility("hidden")));
+#define gdk_display_set_double_click_time IA__gdk_display_set_double_click_time
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_MANAGER_H__)
+#if IN_FILE(__GDK_DISPLAY_MANAGER_C__)
+extern __typeof (gdk_display_manager_get) IA__gdk_display_manager_get __attribute((visibility("hidden")));
+#define gdk_display_manager_get IA__gdk_display_manager_get
+
+extern __typeof (gdk_display_manager_get_type) IA__gdk_display_manager_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_display_manager_get_type IA__gdk_display_manager_get_type
+
+extern __typeof (gdk_display_manager_list_displays) IA__gdk_display_manager_list_displays __attribute((visibility("hidden")));
+#define gdk_display_manager_list_displays IA__gdk_display_manager_list_displays
+
+extern __typeof (gdk_display_manager_set_default_display) IA__gdk_display_manager_set_default_display __attribute((visibility("hidden")));
+#define gdk_display_manager_set_default_display IA__gdk_display_manager_set_default_display
+
+extern __typeof (gdk_display_manager_get_default_display) IA__gdk_display_manager_get_default_display __attribute((visibility("hidden")));
+#define gdk_display_manager_get_default_display IA__gdk_display_manager_get_default_display
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DND_H__)
+#if IN_FILE(__GDK_DND_X11_C__)
+extern __typeof (gdk_drag_abort) IA__gdk_drag_abort __attribute((visibility("hidden")));
+#define gdk_drag_abort IA__gdk_drag_abort
+
+extern __typeof (gdk_drag_begin) IA__gdk_drag_begin __attribute((visibility("hidden")));
+#define gdk_drag_begin IA__gdk_drag_begin
+
+extern __typeof (gdk_drag_context_get_type) IA__gdk_drag_context_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_drag_context_get_type IA__gdk_drag_context_get_type
+
+extern __typeof (gdk_drag_context_new) IA__gdk_drag_context_new __attribute((visibility("hidden")));
+#define gdk_drag_context_new IA__gdk_drag_context_new
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_drag_context_ref) IA__gdk_drag_context_ref __attribute((visibility("hidden")));
+#define gdk_drag_context_ref IA__gdk_drag_context_ref
+
+extern __typeof (gdk_drag_context_unref) IA__gdk_drag_context_unref __attribute((visibility("hidden")));
+#define gdk_drag_context_unref IA__gdk_drag_context_unref
+
+#endif
+extern __typeof (gdk_drag_drop) IA__gdk_drag_drop __attribute((visibility("hidden")));
+#define gdk_drag_drop IA__gdk_drag_drop
+
+extern __typeof (gdk_drag_drop_succeeded) IA__gdk_drag_drop_succeeded __attribute((visibility("hidden")));
+#define gdk_drag_drop_succeeded IA__gdk_drag_drop_succeeded
+
+extern __typeof (gdk_drag_find_window_for_screen) IA__gdk_drag_find_window_for_screen __attribute((visibility("hidden")));
+#define gdk_drag_find_window_for_screen IA__gdk_drag_find_window_for_screen
+
+extern __typeof (gdk_drag_get_protocol_for_display) IA__gdk_drag_get_protocol_for_display __attribute((visibility("hidden")));
+#define gdk_drag_get_protocol_for_display IA__gdk_drag_get_protocol_for_display
+
+extern __typeof (gdk_drag_get_selection) IA__gdk_drag_get_selection __attribute((visibility("hidden")));
+#define gdk_drag_get_selection IA__gdk_drag_get_selection
+
+extern __typeof (gdk_drag_motion) IA__gdk_drag_motion __attribute((visibility("hidden")));
+#define gdk_drag_motion IA__gdk_drag_motion
+
+extern __typeof (gdk_drag_status) IA__gdk_drag_status __attribute((visibility("hidden")));
+#define gdk_drag_status IA__gdk_drag_status
+
+extern __typeof (gdk_drop_finish) IA__gdk_drop_finish __attribute((visibility("hidden")));
+#define gdk_drop_finish IA__gdk_drop_finish
+
+extern __typeof (gdk_drop_reply) IA__gdk_drop_reply __attribute((visibility("hidden")));
+#define gdk_drop_reply IA__gdk_drop_reply
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DND_H__)
+#if IN_FILE(__GDK_DND_C__)
+extern __typeof (gdk_drag_context_get_actions) IA__gdk_drag_context_get_actions __attribute((visibility("hidden")));
+#define gdk_drag_context_get_actions IA__gdk_drag_context_get_actions
+
+extern __typeof (gdk_drag_context_get_selected_action) IA__gdk_drag_context_get_selected_action __attribute((visibility("hidden")));
+#define gdk_drag_context_get_selected_action IA__gdk_drag_context_get_selected_action
+
+extern __typeof (gdk_drag_context_get_suggested_action) IA__gdk_drag_context_get_suggested_action __attribute((visibility("hidden")));
+#define gdk_drag_context_get_suggested_action IA__gdk_drag_context_get_suggested_action
+
+extern __typeof (gdk_drag_context_list_targets) IA__gdk_drag_context_list_targets __attribute((visibility("hidden")));
+#define gdk_drag_context_list_targets IA__gdk_drag_context_list_targets
+
+extern __typeof (gdk_drag_context_get_source_window) IA__gdk_drag_context_get_source_window __attribute((visibility("hidden")));
+#define gdk_drag_context_get_source_window IA__gdk_drag_context_get_source_window
+
+extern __typeof (gdk_drag_find_window) IA__gdk_drag_find_window __attribute((visibility("hidden")));
+#define gdk_drag_find_window IA__gdk_drag_find_window
+
+extern __typeof (gdk_drag_get_protocol) IA__gdk_drag_get_protocol __attribute((visibility("hidden")));
+#define gdk_drag_get_protocol IA__gdk_drag_get_protocol
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DRAWABLE_H__)
+#if IN_FILE(__GDK_DRAW_C__)
+extern __typeof (gdk_drawable_copy_to_image) IA__gdk_drawable_copy_to_image __attribute((visibility("hidden")));
+#define gdk_drawable_copy_to_image IA__gdk_drawable_copy_to_image
+
+extern __typeof (gdk_drawable_get_clip_region) IA__gdk_drawable_get_clip_region __attribute((visibility("hidden")));
+#define gdk_drawable_get_clip_region IA__gdk_drawable_get_clip_region
+
+extern __typeof (gdk_drawable_get_colormap) IA__gdk_drawable_get_colormap __attribute((visibility("hidden")));
+#define gdk_drawable_get_colormap IA__gdk_drawable_get_colormap
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_drawable_get_data) IA__gdk_drawable_get_data __attribute((visibility("hidden")));
+#define gdk_drawable_get_data IA__gdk_drawable_get_data
+
+extern __typeof (gdk_drawable_set_data) IA__gdk_drawable_set_data __attribute((visibility("hidden")));
+#define gdk_drawable_set_data IA__gdk_drawable_set_data
+
+extern __typeof (gdk_drawable_ref) IA__gdk_drawable_ref __attribute((visibility("hidden")));
+#define gdk_drawable_ref IA__gdk_drawable_ref
+
+extern __typeof (gdk_drawable_unref) IA__gdk_drawable_unref __attribute((visibility("hidden")));
+#define gdk_drawable_unref IA__gdk_drawable_unref
+
+extern __typeof (gdk_draw_string) IA__gdk_draw_string __attribute((visibility("hidden")));
+#define gdk_draw_string IA__gdk_draw_string
+
+extern __typeof (gdk_draw_text) IA__gdk_draw_text __attribute((visibility("hidden")));
+#define gdk_draw_text IA__gdk_draw_text
+
+extern __typeof (gdk_draw_text_wc) IA__gdk_draw_text_wc __attribute((visibility("hidden")));
+#define gdk_draw_text_wc IA__gdk_draw_text_wc
+
+#endif
+extern __typeof (gdk_drawable_get_depth) IA__gdk_drawable_get_depth __attribute((visibility("hidden")));
+#define gdk_drawable_get_depth IA__gdk_drawable_get_depth
+
+extern __typeof (gdk_drawable_get_display) IA__gdk_drawable_get_display __attribute((visibility("hidden")));
+#define gdk_drawable_get_display IA__gdk_drawable_get_display
+
+extern __typeof (gdk_drawable_get_image) IA__gdk_drawable_get_image __attribute((visibility("hidden")));
+#define gdk_drawable_get_image IA__gdk_drawable_get_image
+
+extern __typeof (gdk_drawable_get_screen) IA__gdk_drawable_get_screen __attribute((visibility("hidden")));
+#define gdk_drawable_get_screen IA__gdk_drawable_get_screen
+
+extern __typeof (gdk_drawable_get_size) IA__gdk_drawable_get_size __attribute((visibility("hidden")));
+#define gdk_drawable_get_size IA__gdk_drawable_get_size
+
+extern __typeof (gdk_drawable_get_type) IA__gdk_drawable_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_drawable_get_type IA__gdk_drawable_get_type
+
+extern __typeof (gdk_drawable_get_visible_region) IA__gdk_drawable_get_visible_region __attribute((visibility("hidden")));
+#define gdk_drawable_get_visible_region IA__gdk_drawable_get_visible_region
+
+extern __typeof (gdk_drawable_get_visual) IA__gdk_drawable_get_visual __attribute((visibility("hidden")));
+#define gdk_drawable_get_visual IA__gdk_drawable_get_visual
+
+extern __typeof (gdk_drawable_set_colormap) IA__gdk_drawable_set_colormap __attribute((visibility("hidden")));
+#define gdk_drawable_set_colormap IA__gdk_drawable_set_colormap
+
+extern __typeof (gdk_draw_arc) IA__gdk_draw_arc __attribute((visibility("hidden")));
+#define gdk_draw_arc IA__gdk_draw_arc
+
+extern __typeof (gdk_draw_drawable) IA__gdk_draw_drawable __attribute((visibility("hidden")));
+#define gdk_draw_drawable IA__gdk_draw_drawable
+
+extern __typeof (gdk_draw_glyphs) IA__gdk_draw_glyphs __attribute((visibility("hidden")));
+#define gdk_draw_glyphs IA__gdk_draw_glyphs
+
+extern __typeof (gdk_draw_glyphs_transformed) IA__gdk_draw_glyphs_transformed __attribute((visibility("hidden")));
+#define gdk_draw_glyphs_transformed IA__gdk_draw_glyphs_transformed
+
+extern __typeof (gdk_draw_image) IA__gdk_draw_image __attribute((visibility("hidden")));
+#define gdk_draw_image IA__gdk_draw_image
+
+extern __typeof (gdk_draw_line) IA__gdk_draw_line __attribute((visibility("hidden")));
+#define gdk_draw_line IA__gdk_draw_line
+
+extern __typeof (gdk_draw_lines) IA__gdk_draw_lines __attribute((visibility("hidden")));
+#define gdk_draw_lines IA__gdk_draw_lines
+
+extern __typeof (gdk_draw_pixbuf) IA__gdk_draw_pixbuf __attribute((visibility("hidden")));
+#define gdk_draw_pixbuf IA__gdk_draw_pixbuf
+
+extern __typeof (gdk_draw_point) IA__gdk_draw_point __attribute((visibility("hidden")));
+#define gdk_draw_point IA__gdk_draw_point
+
+extern __typeof (gdk_draw_points) IA__gdk_draw_points __attribute((visibility("hidden")));
+#define gdk_draw_points IA__gdk_draw_points
+
+extern __typeof (gdk_draw_polygon) IA__gdk_draw_polygon __attribute((visibility("hidden")));
+#define gdk_draw_polygon IA__gdk_draw_polygon
+
+extern __typeof (gdk_draw_rectangle) IA__gdk_draw_rectangle __attribute((visibility("hidden")));
+#define gdk_draw_rectangle IA__gdk_draw_rectangle
+
+extern __typeof (gdk_draw_segments) IA__gdk_draw_segments __attribute((visibility("hidden")));
+#define gdk_draw_segments IA__gdk_draw_segments
+
+extern __typeof (gdk_draw_trapezoids) IA__gdk_draw_trapezoids __attribute((visibility("hidden")));
+#define gdk_draw_trapezoids IA__gdk_draw_trapezoids
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DRAWABLE_H__)
+#if IN_FILE(__GDK_PANGO_C__)
+extern __typeof (gdk_draw_layout) IA__gdk_draw_layout __attribute((visibility("hidden")));
+#define gdk_draw_layout IA__gdk_draw_layout
+
+extern __typeof (gdk_draw_layout_line) IA__gdk_draw_layout_line __attribute((visibility("hidden")));
+#define gdk_draw_layout_line IA__gdk_draw_layout_line
+
+extern __typeof (gdk_draw_layout_line_with_colors) IA__gdk_draw_layout_line_with_colors __attribute((visibility("hidden")));
+#define gdk_draw_layout_line_with_colors IA__gdk_draw_layout_line_with_colors
+
+extern __typeof (gdk_draw_layout_with_colors) IA__gdk_draw_layout_with_colors __attribute((visibility("hidden")));
+#define gdk_draw_layout_with_colors IA__gdk_draw_layout_with_colors
+
+#endif
+#endif
+#if IN_HEADER(__GDK_GC_H__)
+#if IN_FILE(__GDK_GC_C__)
+extern __typeof (gdk_gc_new) IA__gdk_gc_new __attribute((visibility("hidden")));
+#define gdk_gc_new IA__gdk_gc_new
+
+extern __typeof (gdk_gc_get_type) IA__gdk_gc_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_gc_get_type IA__gdk_gc_get_type
+
+extern __typeof (gdk_gc_new_with_values) IA__gdk_gc_new_with_values __attribute((visibility("hidden")));
+#define gdk_gc_new_with_values IA__gdk_gc_new_with_values
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_gc_ref) IA__gdk_gc_ref __attribute((visibility("hidden")));
+#define gdk_gc_ref IA__gdk_gc_ref
+
+extern __typeof (gdk_gc_unref) IA__gdk_gc_unref __attribute((visibility("hidden")));
+#define gdk_gc_unref IA__gdk_gc_unref
+
+extern __typeof (gdk_gc_set_font) IA__gdk_gc_set_font __attribute((visibility("hidden")));
+#define gdk_gc_set_font IA__gdk_gc_set_font
+
+#endif
+extern __typeof (gdk_gc_get_values) IA__gdk_gc_get_values __attribute((visibility("hidden")));
+#define gdk_gc_get_values IA__gdk_gc_get_values
+
+extern __typeof (gdk_gc_set_values) IA__gdk_gc_set_values __attribute((visibility("hidden")));
+#define gdk_gc_set_values IA__gdk_gc_set_values
+
+extern __typeof (gdk_gc_set_foreground) IA__gdk_gc_set_foreground __attribute((visibility("hidden")));
+#define gdk_gc_set_foreground IA__gdk_gc_set_foreground
+
+extern __typeof (gdk_gc_set_background) IA__gdk_gc_set_background __attribute((visibility("hidden")));
+#define gdk_gc_set_background IA__gdk_gc_set_background
+
+extern __typeof (gdk_gc_set_function) IA__gdk_gc_set_function __attribute((visibility("hidden")));
+#define gdk_gc_set_function IA__gdk_gc_set_function
+
+extern __typeof (gdk_gc_set_fill) IA__gdk_gc_set_fill __attribute((visibility("hidden")));
+#define gdk_gc_set_fill IA__gdk_gc_set_fill
+
+extern __typeof (gdk_gc_set_tile) IA__gdk_gc_set_tile __attribute((visibility("hidden")));
+#define gdk_gc_set_tile IA__gdk_gc_set_tile
+
+extern __typeof (gdk_gc_set_stipple) IA__gdk_gc_set_stipple __attribute((visibility("hidden")));
+#define gdk_gc_set_stipple IA__gdk_gc_set_stipple
+
+extern __typeof (gdk_gc_set_ts_origin) IA__gdk_gc_set_ts_origin __attribute((visibility("hidden")));
+#define gdk_gc_set_ts_origin IA__gdk_gc_set_ts_origin
+
+extern __typeof (gdk_gc_set_clip_origin) IA__gdk_gc_set_clip_origin __attribute((visibility("hidden")));
+#define gdk_gc_set_clip_origin IA__gdk_gc_set_clip_origin
+
+extern __typeof (gdk_gc_set_clip_mask) IA__gdk_gc_set_clip_mask __attribute((visibility("hidden")));
+#define gdk_gc_set_clip_mask IA__gdk_gc_set_clip_mask
+
+extern __typeof (gdk_gc_set_clip_rectangle) IA__gdk_gc_set_clip_rectangle __attribute((visibility("hidden")));
+#define gdk_gc_set_clip_rectangle IA__gdk_gc_set_clip_rectangle
+
+extern __typeof (gdk_gc_set_clip_region) IA__gdk_gc_set_clip_region __attribute((visibility("hidden")));
+#define gdk_gc_set_clip_region IA__gdk_gc_set_clip_region
+
+extern __typeof (gdk_gc_set_subwindow) IA__gdk_gc_set_subwindow __attribute((visibility("hidden")));
+#define gdk_gc_set_subwindow IA__gdk_gc_set_subwindow
+
+extern __typeof (gdk_gc_set_exposures) IA__gdk_gc_set_exposures __attribute((visibility("hidden")));
+#define gdk_gc_set_exposures IA__gdk_gc_set_exposures
+
+extern __typeof (gdk_gc_set_line_attributes) IA__gdk_gc_set_line_attributes __attribute((visibility("hidden")));
+#define gdk_gc_set_line_attributes IA__gdk_gc_set_line_attributes
+
+extern __typeof (gdk_gc_set_dashes) IA__gdk_gc_set_dashes __attribute((visibility("hidden")));
+#define gdk_gc_set_dashes IA__gdk_gc_set_dashes
+
+extern __typeof (gdk_gc_offset) IA__gdk_gc_offset __attribute((visibility("hidden")));
+#define gdk_gc_offset IA__gdk_gc_offset
+
+extern __typeof (gdk_gc_copy) IA__gdk_gc_copy __attribute((visibility("hidden")));
+#define gdk_gc_copy IA__gdk_gc_copy
+
+extern __typeof (gdk_gc_get_colormap) IA__gdk_gc_get_colormap __attribute((visibility("hidden")));
+#define gdk_gc_get_colormap IA__gdk_gc_get_colormap
+
+extern __typeof (gdk_gc_set_colormap) IA__gdk_gc_set_colormap __attribute((visibility("hidden")));
+#define gdk_gc_set_colormap IA__gdk_gc_set_colormap
+
+extern __typeof (gdk_gc_set_rgb_bg_color) IA__gdk_gc_set_rgb_bg_color __attribute((visibility("hidden")));
+#define gdk_gc_set_rgb_bg_color IA__gdk_gc_set_rgb_bg_color
+
+extern __typeof (gdk_gc_set_rgb_fg_color) IA__gdk_gc_set_rgb_fg_color __attribute((visibility("hidden")));
+#define gdk_gc_set_rgb_fg_color IA__gdk_gc_set_rgb_fg_color
+
+#endif
+#endif
+#if IN_HEADER(__GDK_GC_H__)
+#if IN_FILE(__GDK_GC_X11_C__)
+extern __typeof (gdk_gc_get_screen) IA__gdk_gc_get_screen __attribute((visibility("hidden")));
+#define gdk_gc_get_screen IA__gdk_gc_get_screen
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXMAP_X11_H__)
+#if IN_FILE(__GDK_PIXMAP_X11_C__)
+#ifdef GDK_WINDOWING_X11
+extern __typeof (gdk_pixmap_impl_x11_get_type) IA__gdk_pixmap_impl_x11_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_pixmap_impl_x11_get_type IA__gdk_pixmap_impl_x11_get_type
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_X11_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+#ifdef GDK_WINDOWING_X11
+extern __typeof (gdk_window_impl_x11_get_type) IA__gdk_window_impl_x11_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_impl_x11_get_type IA__gdk_window_impl_x11_get_type
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_WINDOW_C__)
+extern __typeof (gdk_get_default_root_window) IA__gdk_get_default_root_window __attribute((visibility("hidden")));
+#define gdk_get_default_root_window IA__gdk_get_default_root_window
+
+extern __typeof (gdk_window_new) IA__gdk_window_new __attribute((visibility("hidden")));
+#define gdk_window_new IA__gdk_window_new
+
+extern __typeof (gdk_window_show_unraised) IA__gdk_window_show_unraised __attribute((visibility("hidden")));
+#define gdk_window_show_unraised IA__gdk_window_show_unraised
+
+extern __typeof (gdk_window_show) IA__gdk_window_show __attribute((visibility("hidden")));
+#define gdk_window_show IA__gdk_window_show
+
+extern __typeof (gdk_window_hide) IA__gdk_window_hide __attribute((visibility("hidden")));
+#define gdk_window_hide IA__gdk_window_hide
+
+extern __typeof (gdk_window_withdraw) IA__gdk_window_withdraw __attribute((visibility("hidden")));
+#define gdk_window_withdraw IA__gdk_window_withdraw
+
+extern __typeof (gdk_window_get_events) IA__gdk_window_get_events __attribute((visibility("hidden")));
+#define gdk_window_get_events IA__gdk_window_get_events
+
+extern __typeof (gdk_window_set_events) IA__gdk_window_set_events __attribute((visibility("hidden")));
+#define gdk_window_set_events IA__gdk_window_set_events
+
+extern __typeof (gdk_window_raise) IA__gdk_window_raise __attribute((visibility("hidden")));
+#define gdk_window_raise IA__gdk_window_raise
+
+extern __typeof (gdk_window_lower) IA__gdk_window_lower __attribute((visibility("hidden")));
+#define gdk_window_lower IA__gdk_window_lower
+
+extern __typeof (gdk_window_restack) IA__gdk_window_restack __attribute((visibility("hidden")));
+#define gdk_window_restack IA__gdk_window_restack
+
+extern __typeof (gdk_window_move) IA__gdk_window_move __attribute((visibility("hidden")));
+#define gdk_window_move IA__gdk_window_move
+
+extern __typeof (gdk_window_resize) IA__gdk_window_resize __attribute((visibility("hidden")));
+#define gdk_window_resize IA__gdk_window_resize
+
+extern __typeof (gdk_window_move_resize) IA__gdk_window_move_resize __attribute((visibility("hidden")));
+#define gdk_window_move_resize IA__gdk_window_move_resize
+
+extern __typeof (gdk_window_scroll) IA__gdk_window_scroll __attribute((visibility("hidden")));
+#define gdk_window_scroll IA__gdk_window_scroll
+
+extern __typeof (gdk_window_move_region) IA__gdk_window_move_region __attribute((visibility("hidden")));
+#define gdk_window_move_region IA__gdk_window_move_region
+
+extern __typeof (gdk_window_get_accept_focus) IA__gdk_window_get_accept_focus __attribute((visibility("hidden")));
+#define gdk_window_get_accept_focus IA__gdk_window_get_accept_focus
+
+extern __typeof (gdk_window_get_back_pixmap) IA__gdk_window_get_back_pixmap __attribute((visibility("hidden")));
+#define gdk_window_get_back_pixmap IA__gdk_window_get_back_pixmap
+
+extern __typeof (gdk_window_get_background) IA__gdk_window_get_background __attribute((visibility("hidden")));
+#define gdk_window_get_background IA__gdk_window_get_background
+
+extern __typeof (gdk_window_get_composited) IA__gdk_window_get_composited __attribute((visibility("hidden")));
+#define gdk_window_get_composited IA__gdk_window_get_composited
+
+extern __typeof (gdk_window_get_cursor) IA__gdk_window_get_cursor __attribute((visibility("hidden")));
+#define gdk_window_get_cursor IA__gdk_window_get_cursor
+
+extern __typeof (gdk_window_get_deskrelative_origin) IA__gdk_window_get_deskrelative_origin __attribute((visibility("hidden")));
+#define gdk_window_get_deskrelative_origin IA__gdk_window_get_deskrelative_origin
+
+extern __typeof (gdk_window_get_focus_on_map) IA__gdk_window_get_focus_on_map __attribute((visibility("hidden")));
+#define gdk_window_get_focus_on_map IA__gdk_window_get_focus_on_map
+
+extern __typeof (gdk_window_get_geometry) IA__gdk_window_get_geometry __attribute((visibility("hidden")));
+#define gdk_window_get_geometry IA__gdk_window_get_geometry
+
+extern __typeof (gdk_window_get_modal_hint) IA__gdk_window_get_modal_hint __attribute((visibility("hidden")));
+#define gdk_window_get_modal_hint IA__gdk_window_get_modal_hint
+
+extern __typeof (gdk_window_get_origin) IA__gdk_window_get_origin __attribute((visibility("hidden")));
+#define gdk_window_get_origin IA__gdk_window_get_origin
+
+extern __typeof (gdk_window_get_root_coords) IA__gdk_window_get_root_coords __attribute((visibility("hidden")));
+#define gdk_window_get_root_coords IA__gdk_window_get_root_coords
+
+extern __typeof (gdk_window_set_background) IA__gdk_window_set_background __attribute((visibility("hidden")));
+#define gdk_window_set_background IA__gdk_window_set_background
+
+extern __typeof (gdk_window_set_back_pixmap) IA__gdk_window_set_back_pixmap __attribute((visibility("hidden")));
+#define gdk_window_set_back_pixmap IA__gdk_window_set_back_pixmap
+
+extern __typeof (gdk_window_set_cursor) IA__gdk_window_set_cursor __attribute((visibility("hidden")));
+#define gdk_window_set_cursor IA__gdk_window_set_cursor
+
+extern __typeof (gdk_window_shape_combine_mask) IA__gdk_window_shape_combine_mask __attribute((visibility("hidden")));
+#define gdk_window_shape_combine_mask IA__gdk_window_shape_combine_mask
+
+extern __typeof (gdk_window_shape_combine_region) IA__gdk_window_shape_combine_region __attribute((visibility("hidden")));
+#define gdk_window_shape_combine_region IA__gdk_window_shape_combine_region
+
+extern __typeof (gdk_window_set_child_shapes) IA__gdk_window_set_child_shapes __attribute((visibility("hidden")));
+#define gdk_window_set_child_shapes IA__gdk_window_set_child_shapes
+
+extern __typeof (gdk_window_merge_child_shapes) IA__gdk_window_merge_child_shapes __attribute((visibility("hidden")));
+#define gdk_window_merge_child_shapes IA__gdk_window_merge_child_shapes
+
+extern __typeof (gdk_window_input_shape_combine_mask) IA__gdk_window_input_shape_combine_mask __attribute((visibility("hidden")));
+#define gdk_window_input_shape_combine_mask IA__gdk_window_input_shape_combine_mask
+
+extern __typeof (gdk_window_input_shape_combine_region) IA__gdk_window_input_shape_combine_region __attribute((visibility("hidden")));
+#define gdk_window_input_shape_combine_region IA__gdk_window_input_shape_combine_region
+
+extern __typeof (gdk_window_set_child_input_shapes) IA__gdk_window_set_child_input_shapes __attribute((visibility("hidden")));
+#define gdk_window_set_child_input_shapes IA__gdk_window_set_child_input_shapes
+
+extern __typeof (gdk_window_merge_child_input_shapes) IA__gdk_window_merge_child_input_shapes __attribute((visibility("hidden")));
+#define gdk_window_merge_child_input_shapes IA__gdk_window_merge_child_input_shapes
+
+extern __typeof (gdk_window_set_static_gravities) IA__gdk_window_set_static_gravities __attribute((visibility("hidden")));
+#define gdk_window_set_static_gravities IA__gdk_window_set_static_gravities
+
+extern __typeof (gdk_window_reparent) IA__gdk_window_reparent __attribute((visibility("hidden")));
+#define gdk_window_reparent IA__gdk_window_reparent
+
+extern __typeof (gdk_window_add_filter) IA__gdk_window_add_filter __attribute((visibility("hidden")));
+#define gdk_window_add_filter IA__gdk_window_add_filter
+
+extern __typeof (gdk_window_at_pointer) IA__gdk_window_at_pointer __attribute((visibility("hidden")));
+#define gdk_window_at_pointer IA__gdk_window_at_pointer
+
+extern __typeof (gdk_window_begin_paint_rect) IA__gdk_window_begin_paint_rect __attribute((visibility("hidden")));
+#define gdk_window_begin_paint_rect IA__gdk_window_begin_paint_rect
+
+extern __typeof (gdk_window_begin_paint_region) IA__gdk_window_begin_paint_region __attribute((visibility("hidden")));
+#define gdk_window_begin_paint_region IA__gdk_window_begin_paint_region
+
+extern __typeof (gdk_window_clear) IA__gdk_window_clear __attribute((visibility("hidden")));
+#define gdk_window_clear IA__gdk_window_clear
+
+extern __typeof (gdk_window_clear_area) IA__gdk_window_clear_area __attribute((visibility("hidden")));
+#define gdk_window_clear_area IA__gdk_window_clear_area
+
+extern __typeof (gdk_window_clear_area_e) IA__gdk_window_clear_area_e __attribute((visibility("hidden")));
+#define gdk_window_clear_area_e IA__gdk_window_clear_area_e
+
+extern __typeof (gdk_window_constrain_size) IA__gdk_window_constrain_size __attribute((visibility("hidden")));
+#define gdk_window_constrain_size IA__gdk_window_constrain_size
+
+extern __typeof (gdk_window_coords_from_parent) IA__gdk_window_coords_from_parent __attribute((visibility("hidden")));
+#define gdk_window_coords_from_parent IA__gdk_window_coords_from_parent
+
+extern __typeof (gdk_window_coords_to_parent) IA__gdk_window_coords_to_parent __attribute((visibility("hidden")));
+#define gdk_window_coords_to_parent IA__gdk_window_coords_to_parent
+
+extern __typeof (gdk_window_destroy) IA__gdk_window_destroy __attribute((visibility("hidden")));
+#define gdk_window_destroy IA__gdk_window_destroy
+
+extern __typeof (gdk_window_end_paint) IA__gdk_window_end_paint __attribute((visibility("hidden")));
+#define gdk_window_end_paint IA__gdk_window_end_paint
+
+extern __typeof (gdk_window_flush) IA__gdk_window_flush __attribute((visibility("hidden")));
+#define gdk_window_flush IA__gdk_window_flush
+
+extern __typeof (gdk_window_foreign_new) IA__gdk_window_foreign_new __attribute((visibility("hidden")));
+#define gdk_window_foreign_new IA__gdk_window_foreign_new
+
+extern __typeof (gdk_window_freeze_toplevel_updates_libgtk_only) IA__gdk_window_freeze_toplevel_updates_libgtk_only __attribute((visibility("hidden")));
+#define gdk_window_freeze_toplevel_updates_libgtk_only IA__gdk_window_freeze_toplevel_updates_libgtk_only
+
+extern __typeof (gdk_window_freeze_updates) IA__gdk_window_freeze_updates __attribute((visibility("hidden")));
+#define gdk_window_freeze_updates IA__gdk_window_freeze_updates
+
+extern __typeof (gdk_window_get_children) IA__gdk_window_get_children __attribute((visibility("hidden")));
+#define gdk_window_get_children IA__gdk_window_get_children
+
+extern __typeof (gdk_window_get_internal_paint_info) IA__gdk_window_get_internal_paint_info __attribute((visibility("hidden")));
+#define gdk_window_get_internal_paint_info IA__gdk_window_get_internal_paint_info
+
+extern __typeof (gdk_window_get_parent) IA__gdk_window_get_parent __attribute((visibility("hidden")));
+#define gdk_window_get_parent IA__gdk_window_get_parent
+
+extern __typeof (gdk_window_get_effective_parent) IA__gdk_window_get_effective_parent __attribute((visibility("hidden")));
+#define gdk_window_get_effective_parent IA__gdk_window_get_effective_parent
+
+extern __typeof (gdk_window_get_pointer) IA__gdk_window_get_pointer __attribute((visibility("hidden")));
+#define gdk_window_get_pointer IA__gdk_window_get_pointer
+
+extern __typeof (gdk_window_get_position) IA__gdk_window_get_position __attribute((visibility("hidden")));
+#define gdk_window_get_position IA__gdk_window_get_position
+
+extern __typeof (gdk_window_get_state) IA__gdk_window_get_state __attribute((visibility("hidden")));
+#define gdk_window_get_state IA__gdk_window_get_state
+
+extern __typeof (gdk_window_get_toplevel) IA__gdk_window_get_toplevel __attribute((visibility("hidden")));
+#define gdk_window_get_toplevel IA__gdk_window_get_toplevel
+
+extern __typeof (gdk_window_get_effective_toplevel) IA__gdk_window_get_effective_toplevel __attribute((visibility("hidden")));
+#define gdk_window_get_effective_toplevel IA__gdk_window_get_effective_toplevel
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_window_get_toplevels) IA__gdk_window_get_toplevels __attribute((visibility("hidden")));
+#define gdk_window_get_toplevels IA__gdk_window_get_toplevels
+
+#endif
+extern __typeof (gdk_window_get_update_area) IA__gdk_window_get_update_area __attribute((visibility("hidden")));
+#define gdk_window_get_update_area IA__gdk_window_get_update_area
+
+extern __typeof (gdk_window_get_user_data) IA__gdk_window_get_user_data __attribute((visibility("hidden")));
+#define gdk_window_get_user_data IA__gdk_window_get_user_data
+
+extern __typeof (gdk_window_get_window_type) IA__gdk_window_get_window_type __attribute((visibility("hidden")));
+#define gdk_window_get_window_type IA__gdk_window_get_window_type
+
+extern __typeof (gdk_window_has_native) IA__gdk_window_has_native __attribute((visibility("hidden")));
+#define gdk_window_has_native IA__gdk_window_has_native
+
+extern __typeof (gdk_window_invalidate_maybe_recurse) IA__gdk_window_invalidate_maybe_recurse __attribute((visibility("hidden")));
+#define gdk_window_invalidate_maybe_recurse IA__gdk_window_invalidate_maybe_recurse
+
+extern __typeof (gdk_window_invalidate_rect) IA__gdk_window_invalidate_rect __attribute((visibility("hidden")));
+#define gdk_window_invalidate_rect IA__gdk_window_invalidate_rect
+
+extern __typeof (gdk_window_invalidate_region) IA__gdk_window_invalidate_region __attribute((visibility("hidden")));
+#define gdk_window_invalidate_region IA__gdk_window_invalidate_region
+
+extern __typeof (gdk_window_is_destroyed) IA__gdk_window_is_destroyed __attribute((visibility("hidden")));
+#define gdk_window_is_destroyed IA__gdk_window_is_destroyed
+
+extern __typeof (gdk_window_is_input_only) IA__gdk_window_is_input_only __attribute((visibility("hidden")));
+#define gdk_window_is_input_only IA__gdk_window_is_input_only
+
+extern __typeof (gdk_window_is_shaped) IA__gdk_window_is_shaped __attribute((visibility("hidden")));
+#define gdk_window_is_shaped IA__gdk_window_is_shaped
+
+extern __typeof (gdk_window_is_viewable) IA__gdk_window_is_viewable __attribute((visibility("hidden")));
+#define gdk_window_is_viewable IA__gdk_window_is_viewable
+
+extern __typeof (gdk_window_is_visible) IA__gdk_window_is_visible __attribute((visibility("hidden")));
+#define gdk_window_is_visible IA__gdk_window_is_visible
+
+extern __typeof (gdk_window_object_get_type) IA__gdk_window_object_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_object_get_type IA__gdk_window_object_get_type
+
+extern __typeof (gdk_window_peek_children) IA__gdk_window_peek_children __attribute((visibility("hidden")));
+#define gdk_window_peek_children IA__gdk_window_peek_children
+
+extern __typeof (gdk_window_process_all_updates) IA__gdk_window_process_all_updates __attribute((visibility("hidden")));
+#define gdk_window_process_all_updates IA__gdk_window_process_all_updates
+
+extern __typeof (gdk_window_process_updates) IA__gdk_window_process_updates __attribute((visibility("hidden")));
+#define gdk_window_process_updates IA__gdk_window_process_updates
+
+extern __typeof (gdk_window_redirect_to_drawable) IA__gdk_window_redirect_to_drawable __attribute((visibility("hidden")));
+#define gdk_window_redirect_to_drawable IA__gdk_window_redirect_to_drawable
+
+extern __typeof (gdk_window_remove_filter) IA__gdk_window_remove_filter __attribute((visibility("hidden")));
+#define gdk_window_remove_filter IA__gdk_window_remove_filter
+
+extern __typeof (gdk_window_remove_redirection) IA__gdk_window_remove_redirection __attribute((visibility("hidden")));
+#define gdk_window_remove_redirection IA__gdk_window_remove_redirection
+
+extern __typeof (gdk_window_set_debug_updates) IA__gdk_window_set_debug_updates __attribute((visibility("hidden")));
+#define gdk_window_set_debug_updates IA__gdk_window_set_debug_updates
+
+extern __typeof (gdk_window_set_user_data) IA__gdk_window_set_user_data __attribute((visibility("hidden")));
+#define gdk_window_set_user_data IA__gdk_window_set_user_data
+
+extern __typeof (gdk_window_thaw_toplevel_updates_libgtk_only) IA__gdk_window_thaw_toplevel_updates_libgtk_only __attribute((visibility("hidden")));
+#define gdk_window_thaw_toplevel_updates_libgtk_only IA__gdk_window_thaw_toplevel_updates_libgtk_only
+
+extern __typeof (gdk_window_thaw_updates) IA__gdk_window_thaw_updates __attribute((visibility("hidden")));
+#define gdk_window_thaw_updates IA__gdk_window_thaw_updates
+
+extern __typeof (gdk_window_set_composited) IA__gdk_window_set_composited __attribute((visibility("hidden")));
+#define gdk_window_set_composited IA__gdk_window_set_composited
+
+extern __typeof (gdk_pointer_grab) IA__gdk_pointer_grab __attribute((visibility("hidden")));
+#define gdk_pointer_grab IA__gdk_pointer_grab
+
+extern __typeof (gdk_window_beep) IA__gdk_window_beep __attribute((visibility("hidden")));
+#define gdk_window_beep IA__gdk_window_beep
+
+extern __typeof (gdk_window_geometry_changed) IA__gdk_window_geometry_changed __attribute((visibility("hidden")));
+#define gdk_window_geometry_changed IA__gdk_window_geometry_changed
+
+extern __typeof (gdk_window_ensure_native) IA__gdk_window_ensure_native __attribute((visibility("hidden")));
+#define gdk_window_ensure_native IA__gdk_window_ensure_native
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_OFFSCREEN_WINDOW_C__)
+extern __typeof (gdk_offscreen_window_get_pixmap) IA__gdk_offscreen_window_get_pixmap __attribute((visibility("hidden")));
+#define gdk_offscreen_window_get_pixmap IA__gdk_offscreen_window_get_pixmap
+
+extern __typeof (gdk_offscreen_window_set_embedder) IA__gdk_offscreen_window_set_embedder __attribute((visibility("hidden")));
+#define gdk_offscreen_window_set_embedder IA__gdk_offscreen_window_set_embedder
+
+extern __typeof (gdk_offscreen_window_get_embedder) IA__gdk_offscreen_window_get_embedder __attribute((visibility("hidden")));
+#define gdk_offscreen_window_get_embedder IA__gdk_offscreen_window_get_embedder
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INTERNALS_H__)
+#if IN_FILE(__GDK_OFFSCREEN_WINDOW_C__)
+extern __typeof (gdk_offscreen_window_get_type) IA__gdk_offscreen_window_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_offscreen_window_get_type IA__gdk_offscreen_window_get_type
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_DND_X11_C__)
+extern __typeof (gdk_window_register_dnd) IA__gdk_window_register_dnd __attribute((visibility("hidden")));
+#define gdk_window_register_dnd IA__gdk_window_register_dnd
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+extern __typeof (gdk_window_foreign_new_for_display) IA__gdk_window_foreign_new_for_display __attribute((visibility("hidden")));
+#define gdk_window_foreign_new_for_display IA__gdk_window_foreign_new_for_display
+
+extern __typeof (gdk_window_focus) IA__gdk_window_focus __attribute((visibility("hidden")));
+#define gdk_window_focus IA__gdk_window_focus
+
+extern __typeof (gdk_window_lookup) IA__gdk_window_lookup __attribute((visibility("hidden")));
+#define gdk_window_lookup IA__gdk_window_lookup
+
+extern __typeof (gdk_window_lookup_for_display) IA__gdk_window_lookup_for_display __attribute((visibility("hidden")));
+#define gdk_window_lookup_for_display IA__gdk_window_lookup_for_display
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_window_set_hints) IA__gdk_window_set_hints __attribute((visibility("hidden")));
+#define gdk_window_set_hints IA__gdk_window_set_hints
+
+#endif
+extern __typeof (gdk_window_get_type_hint) IA__gdk_window_get_type_hint __attribute((visibility("hidden")));
+#define gdk_window_get_type_hint IA__gdk_window_get_type_hint
+
+extern __typeof (gdk_window_set_type_hint) IA__gdk_window_set_type_hint __attribute((visibility("hidden")));
+#define gdk_window_set_type_hint IA__gdk_window_set_type_hint
+
+extern __typeof (gdk_window_set_modal_hint) IA__gdk_window_set_modal_hint __attribute((visibility("hidden")));
+#define gdk_window_set_modal_hint IA__gdk_window_set_modal_hint
+
+extern __typeof (gdk_window_set_skip_taskbar_hint) IA__gdk_window_set_skip_taskbar_hint __attribute((visibility("hidden")));
+#define gdk_window_set_skip_taskbar_hint IA__gdk_window_set_skip_taskbar_hint
+
+extern __typeof (gdk_window_set_skip_pager_hint) IA__gdk_window_set_skip_pager_hint __attribute((visibility("hidden")));
+#define gdk_window_set_skip_pager_hint IA__gdk_window_set_skip_pager_hint
+
+extern __typeof (gdk_window_set_urgency_hint) IA__gdk_window_set_urgency_hint __attribute((visibility("hidden")));
+#define gdk_window_set_urgency_hint IA__gdk_window_set_urgency_hint
+
+extern __typeof (gdk_window_set_geometry_hints) IA__gdk_window_set_geometry_hints __attribute((visibility("hidden")));
+#define gdk_window_set_geometry_hints IA__gdk_window_set_geometry_hints
+
+extern __typeof (gdk_window_set_title) IA__gdk_window_set_title __attribute((visibility("hidden")));
+#define gdk_window_set_title IA__gdk_window_set_title
+
+extern __typeof (gdk_window_set_role) IA__gdk_window_set_role __attribute((visibility("hidden")));
+#define gdk_window_set_role IA__gdk_window_set_role
+
+extern __typeof (gdk_window_set_startup_id) IA__gdk_window_set_startup_id __attribute((visibility("hidden")));
+#define gdk_window_set_startup_id IA__gdk_window_set_startup_id
+
+extern __typeof (gdk_window_set_transient_for) IA__gdk_window_set_transient_for __attribute((visibility("hidden")));
+#define gdk_window_set_transient_for IA__gdk_window_set_transient_for
+
+extern __typeof (gdk_window_get_root_origin) IA__gdk_window_get_root_origin __attribute((visibility("hidden")));
+#define gdk_window_get_root_origin IA__gdk_window_get_root_origin
+
+extern __typeof (gdk_window_get_frame_extents) IA__gdk_window_get_frame_extents __attribute((visibility("hidden")));
+#define gdk_window_get_frame_extents IA__gdk_window_get_frame_extents
+
+extern __typeof (gdk_window_set_override_redirect) IA__gdk_window_set_override_redirect __attribute((visibility("hidden")));
+#define gdk_window_set_override_redirect IA__gdk_window_set_override_redirect
+
+extern __typeof (gdk_window_set_accept_focus) IA__gdk_window_set_accept_focus __attribute((visibility("hidden")));
+#define gdk_window_set_accept_focus IA__gdk_window_set_accept_focus
+
+extern __typeof (gdk_window_set_focus_on_map) IA__gdk_window_set_focus_on_map __attribute((visibility("hidden")));
+#define gdk_window_set_focus_on_map IA__gdk_window_set_focus_on_map
+
+extern __typeof (gdk_window_set_icon_list) IA__gdk_window_set_icon_list __attribute((visibility("hidden")));
+#define gdk_window_set_icon_list IA__gdk_window_set_icon_list
+
+extern __typeof (gdk_window_set_icon) IA__gdk_window_set_icon __attribute((visibility("hidden")));
+#define gdk_window_set_icon IA__gdk_window_set_icon
+
+extern __typeof (gdk_window_set_icon_name) IA__gdk_window_set_icon_name __attribute((visibility("hidden")));
+#define gdk_window_set_icon_name IA__gdk_window_set_icon_name
+
+extern __typeof (gdk_window_set_opacity) IA__gdk_window_set_opacity __attribute((visibility("hidden")));
+#define gdk_window_set_opacity IA__gdk_window_set_opacity
+
+extern __typeof (gdk_window_iconify) IA__gdk_window_iconify __attribute((visibility("hidden")));
+#define gdk_window_iconify IA__gdk_window_iconify
+
+extern __typeof (gdk_window_deiconify) IA__gdk_window_deiconify __attribute((visibility("hidden")));
+#define gdk_window_deiconify IA__gdk_window_deiconify
+
+extern __typeof (gdk_window_stick) IA__gdk_window_stick __attribute((visibility("hidden")));
+#define gdk_window_stick IA__gdk_window_stick
+
+extern __typeof (gdk_window_unstick) IA__gdk_window_unstick __attribute((visibility("hidden")));
+#define gdk_window_unstick IA__gdk_window_unstick
+
+extern __typeof (gdk_window_maximize) IA__gdk_window_maximize __attribute((visibility("hidden")));
+#define gdk_window_maximize IA__gdk_window_maximize
+
+extern __typeof (gdk_window_unmaximize) IA__gdk_window_unmaximize __attribute((visibility("hidden")));
+#define gdk_window_unmaximize IA__gdk_window_unmaximize
+
+extern __typeof (gdk_window_fullscreen) IA__gdk_window_fullscreen __attribute((visibility("hidden")));
+#define gdk_window_fullscreen IA__gdk_window_fullscreen
+
+extern __typeof (gdk_window_unfullscreen) IA__gdk_window_unfullscreen __attribute((visibility("hidden")));
+#define gdk_window_unfullscreen IA__gdk_window_unfullscreen
+
+extern __typeof (gdk_window_set_keep_above) IA__gdk_window_set_keep_above __attribute((visibility("hidden")));
+#define gdk_window_set_keep_above IA__gdk_window_set_keep_above
+
+extern __typeof (gdk_window_set_keep_below) IA__gdk_window_set_keep_below __attribute((visibility("hidden")));
+#define gdk_window_set_keep_below IA__gdk_window_set_keep_below
+
+extern __typeof (gdk_window_get_group) IA__gdk_window_get_group __attribute((visibility("hidden")));
+#define gdk_window_get_group IA__gdk_window_get_group
+
+extern __typeof (gdk_window_set_group) IA__gdk_window_set_group __attribute((visibility("hidden")));
+#define gdk_window_set_group IA__gdk_window_set_group
+
+extern __typeof (gdk_window_get_decorations) IA__gdk_window_get_decorations __attribute((visibility("hidden")));
+#define gdk_window_get_decorations IA__gdk_window_get_decorations
+
+extern __typeof (gdk_window_set_decorations) IA__gdk_window_set_decorations __attribute((visibility("hidden")));
+#define gdk_window_set_decorations IA__gdk_window_set_decorations
+
+extern __typeof (gdk_window_set_functions) IA__gdk_window_set_functions __attribute((visibility("hidden")));
+#define gdk_window_set_functions IA__gdk_window_set_functions
+
+extern __typeof (gdk_window_begin_move_drag) IA__gdk_window_begin_move_drag __attribute((visibility("hidden")));
+#define gdk_window_begin_move_drag IA__gdk_window_begin_move_drag
+
+extern __typeof (gdk_window_begin_resize_drag) IA__gdk_window_begin_resize_drag __attribute((visibility("hidden")));
+#define gdk_window_begin_resize_drag IA__gdk_window_begin_resize_drag
+
+extern __typeof (gdk_window_enable_synchronized_configure) IA__gdk_window_enable_synchronized_configure __attribute((visibility("hidden")));
+#define gdk_window_enable_synchronized_configure IA__gdk_window_enable_synchronized_configure
+
+extern __typeof (gdk_window_configure_finished) IA__gdk_window_configure_finished __attribute((visibility("hidden")));
+#define gdk_window_configure_finished IA__gdk_window_configure_finished
+
+#endif
+#endif
+#if IN_HEADER(__GDK_IMAGE_H__)
+#if IN_FILE(__GDK_IMAGE_C__)
+extern __typeof (gdk_image_get_bits_per_pixel) IA__gdk_image_get_bits_per_pixel __attribute((visibility("hidden")));
+#define gdk_image_get_bits_per_pixel IA__gdk_image_get_bits_per_pixel
+
+extern __typeof (gdk_image_get_bytes_per_pixel) IA__gdk_image_get_bytes_per_pixel __attribute((visibility("hidden")));
+#define gdk_image_get_bytes_per_pixel IA__gdk_image_get_bytes_per_pixel
+
+extern __typeof (gdk_image_get_bytes_per_line) IA__gdk_image_get_bytes_per_line __attribute((visibility("hidden")));
+#define gdk_image_get_bytes_per_line IA__gdk_image_get_bytes_per_line
+
+extern __typeof (gdk_image_get_byte_order) IA__gdk_image_get_byte_order __attribute((visibility("hidden")));
+#define gdk_image_get_byte_order IA__gdk_image_get_byte_order
+
+extern __typeof (gdk_image_get_depth) IA__gdk_image_get_depth __attribute((visibility("hidden")));
+#define gdk_image_get_depth IA__gdk_image_get_depth
+
+extern __typeof (gdk_image_get_height) IA__gdk_image_get_height __attribute((visibility("hidden")));
+#define gdk_image_get_height IA__gdk_image_get_height
+
+extern __typeof (gdk_image_get_image_type) IA__gdk_image_get_image_type __attribute((visibility("hidden")));
+#define gdk_image_get_image_type IA__gdk_image_get_image_type
+
+extern __typeof (gdk_image_get_visual) IA__gdk_image_get_visual __attribute((visibility("hidden")));
+#define gdk_image_get_visual IA__gdk_image_get_visual
+
+extern __typeof (gdk_image_get_width) IA__gdk_image_get_width __attribute((visibility("hidden")));
+#define gdk_image_get_width IA__gdk_image_get_width
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_image_ref) IA__gdk_image_ref __attribute((visibility("hidden")));
+#define gdk_image_ref IA__gdk_image_ref
+
+extern __typeof (gdk_image_unref) IA__gdk_image_unref __attribute((visibility("hidden")));
+#define gdk_image_unref IA__gdk_image_unref
+
+extern __typeof (gdk_image_get) IA__gdk_image_get __attribute((visibility("hidden")));
+#define gdk_image_get IA__gdk_image_get
+
+#endif
+extern __typeof (gdk_image_get_pixels) IA__gdk_image_get_pixels __attribute((visibility("hidden")));
+#define gdk_image_get_pixels IA__gdk_image_get_pixels
+
+extern __typeof (gdk_image_set_colormap) IA__gdk_image_set_colormap __attribute((visibility("hidden")));
+#define gdk_image_set_colormap IA__gdk_image_set_colormap
+
+extern __typeof (gdk_image_get_colormap) IA__gdk_image_get_colormap __attribute((visibility("hidden")));
+#define gdk_image_get_colormap IA__gdk_image_get_colormap
+
+extern __typeof (gdk_image_new) IA__gdk_image_new __attribute((visibility("hidden")));
+#define gdk_image_new IA__gdk_image_new
+
+#endif
+#endif
+#if IN_HEADER(__GDK_IMAGE_H__)
+#if IN_FILE(__GDK_IMAGE_X11_C__)
+#ifdef GDK_ENABLE_BROKEN
+extern __typeof (gdk_image_new_bitmap) IA__gdk_image_new_bitmap __attribute((visibility("hidden")));
+#define gdk_image_new_bitmap IA__gdk_image_new_bitmap
+
+#endif
+extern __typeof (gdk_image_get_pixel) IA__gdk_image_get_pixel __attribute((visibility("hidden")));
+#define gdk_image_get_pixel IA__gdk_image_get_pixel
+
+extern __typeof (gdk_image_put_pixel) IA__gdk_image_put_pixel __attribute((visibility("hidden")));
+#define gdk_image_put_pixel IA__gdk_image_put_pixel
+
+extern __typeof (gdk_image_get_type) IA__gdk_image_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_image_get_type IA__gdk_image_get_type
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYS_C__)
+extern __typeof (gdk_keymap_get_default) IA__gdk_keymap_get_default __attribute((visibility("hidden")));
+#define gdk_keymap_get_default IA__gdk_keymap_get_default
+
+extern __typeof (gdk_keymap_get_type) IA__gdk_keymap_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keymap_get_type IA__gdk_keymap_get_type
+
+extern __typeof (gdk_keyval_is_lower) IA__gdk_keyval_is_lower __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_is_lower IA__gdk_keyval_is_lower
+
+extern __typeof (gdk_keyval_is_upper) IA__gdk_keyval_is_upper __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_is_upper IA__gdk_keyval_is_upper
+
+extern __typeof (gdk_keyval_to_lower) IA__gdk_keyval_to_lower __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_to_lower IA__gdk_keyval_to_lower
+
+extern __typeof (gdk_keyval_to_upper) IA__gdk_keyval_to_upper __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_to_upper IA__gdk_keyval_to_upper
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYUNI_C__)
+extern __typeof (gdk_keyval_to_unicode) IA__gdk_keyval_to_unicode __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_to_unicode IA__gdk_keyval_to_unicode
+
+extern __typeof (gdk_unicode_to_keyval) IA__gdk_unicode_to_keyval __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_unicode_to_keyval IA__gdk_unicode_to_keyval
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYS_X11_C__)
+extern __typeof (gdk_keymap_get_direction) IA__gdk_keymap_get_direction __attribute((visibility("hidden")));
+#define gdk_keymap_get_direction IA__gdk_keymap_get_direction
+
+extern __typeof (gdk_keymap_get_entries_for_keycode) IA__gdk_keymap_get_entries_for_keycode __attribute((visibility("hidden")));
+#define gdk_keymap_get_entries_for_keycode IA__gdk_keymap_get_entries_for_keycode
+
+extern __typeof (gdk_keymap_get_entries_for_keyval) IA__gdk_keymap_get_entries_for_keyval __attribute((visibility("hidden")));
+#define gdk_keymap_get_entries_for_keyval IA__gdk_keymap_get_entries_for_keyval
+
+extern __typeof (gdk_keymap_get_for_display) IA__gdk_keymap_get_for_display __attribute((visibility("hidden")));
+#define gdk_keymap_get_for_display IA__gdk_keymap_get_for_display
+
+extern __typeof (gdk_keymap_have_bidi_layouts) IA__gdk_keymap_have_bidi_layouts __attribute((visibility("hidden")));
+#define gdk_keymap_have_bidi_layouts IA__gdk_keymap_have_bidi_layouts
+
+extern __typeof (gdk_keymap_get_caps_lock_state) IA__gdk_keymap_get_caps_lock_state __attribute((visibility("hidden")));
+#define gdk_keymap_get_caps_lock_state IA__gdk_keymap_get_caps_lock_state
+
+extern __typeof (gdk_keymap_lookup_key) IA__gdk_keymap_lookup_key __attribute((visibility("hidden")));
+#define gdk_keymap_lookup_key IA__gdk_keymap_lookup_key
+
+extern __typeof (gdk_keymap_translate_keyboard_state) IA__gdk_keymap_translate_keyboard_state __attribute((visibility("hidden")));
+#define gdk_keymap_translate_keyboard_state IA__gdk_keymap_translate_keyboard_state
+
+extern __typeof (gdk_keymap_add_virtual_modifiers) IA__gdk_keymap_add_virtual_modifiers __attribute((visibility("hidden")));
+#define gdk_keymap_add_virtual_modifiers IA__gdk_keymap_add_virtual_modifiers
+
+extern __typeof (gdk_keymap_map_virtual_modifiers) IA__gdk_keymap_map_virtual_modifiers __attribute((visibility("hidden")));
+#define gdk_keymap_map_virtual_modifiers IA__gdk_keymap_map_virtual_modifiers
+
+extern __typeof (gdk_keyval_convert_case) IA__gdk_keyval_convert_case __attribute((visibility("hidden")));
+#define gdk_keyval_convert_case IA__gdk_keyval_convert_case
+
+extern __typeof (gdk_keyval_from_name) IA__gdk_keyval_from_name __attribute((visibility("hidden")));
+#define gdk_keyval_from_name IA__gdk_keyval_from_name
+
+extern __typeof (gdk_keyval_name) IA__gdk_keyval_name __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_name IA__gdk_keyval_name
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYS_DIRECTFB_C__)
+extern __typeof (gdk_keymap_get_direction) IA__gdk_keymap_get_direction __attribute((visibility("hidden")));
+#define gdk_keymap_get_direction IA__gdk_keymap_get_direction
+
+extern __typeof (gdk_keymap_get_entries_for_keycode) IA__gdk_keymap_get_entries_for_keycode __attribute((visibility("hidden")));
+#define gdk_keymap_get_entries_for_keycode IA__gdk_keymap_get_entries_for_keycode
+
+extern __typeof (gdk_keymap_get_entries_for_keyval) IA__gdk_keymap_get_entries_for_keyval __attribute((visibility("hidden")));
+#define gdk_keymap_get_entries_for_keyval IA__gdk_keymap_get_entries_for_keyval
+
+extern __typeof (gdk_keymap_get_for_display) IA__gdk_keymap_get_for_display __attribute((visibility("hidden")));
+#define gdk_keymap_get_for_display IA__gdk_keymap_get_for_display
+
+extern __typeof (gdk_keymap_get_caps_lock_state) IA__gdk_keymap_get_caps_lock_state __attribute((visibility("hidden")));
+#define gdk_keymap_get_caps_lock_state IA__gdk_keymap_get_caps_lock_state
+
+extern __typeof (gdk_keymap_lookup_key) IA__gdk_keymap_lookup_key __attribute((visibility("hidden")));
+#define gdk_keymap_lookup_key IA__gdk_keymap_lookup_key
+
+extern __typeof (gdk_keymap_translate_keyboard_state) IA__gdk_keymap_translate_keyboard_state __attribute((visibility("hidden")));
+#define gdk_keymap_translate_keyboard_state IA__gdk_keymap_translate_keyboard_state
+
+extern __typeof (gdk_keymap_add_virtual_modifiers) IA__gdk_keymap_add_virtual_modifiers __attribute((visibility("hidden")));
+#define gdk_keymap_add_virtual_modifiers IA__gdk_keymap_add_virtual_modifiers
+
+extern __typeof (gdk_keymap_map_virtual_modifiers) IA__gdk_keymap_map_virtual_modifiers __attribute((visibility("hidden")));
+#define gdk_keymap_map_virtual_modifiers IA__gdk_keymap_map_virtual_modifiers
+
+extern __typeof (gdk_keyval_from_name) IA__gdk_keyval_from_name __attribute((visibility("hidden")));
+#define gdk_keyval_from_name IA__gdk_keyval_from_name
+
+extern __typeof (gdk_keyval_name) IA__gdk_keyval_name __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_keyval_name IA__gdk_keyval_name
+
+#endif
+#endif
+#if IN_HEADER(__GDK_VISUAL_H__)
+#if IN_FILE(__GDK_VISUAL_C__)
+extern __typeof (gdk_list_visuals) IA__gdk_list_visuals __attribute((visibility("hidden")));
+#define gdk_list_visuals IA__gdk_list_visuals
+
+extern __typeof (gdk_visual_get_bits_per_rgb) IA__gdk_visual_get_bits_per_rgb __attribute((visibility("hidden")));
+#define gdk_visual_get_bits_per_rgb IA__gdk_visual_get_bits_per_rgb
+
+extern __typeof (gdk_visual_get_blue_pixel_details) IA__gdk_visual_get_blue_pixel_details __attribute((visibility("hidden")));
+#define gdk_visual_get_blue_pixel_details IA__gdk_visual_get_blue_pixel_details
+
+extern __typeof (gdk_visual_get_byte_order) IA__gdk_visual_get_byte_order __attribute((visibility("hidden")));
+#define gdk_visual_get_byte_order IA__gdk_visual_get_byte_order
+
+extern __typeof (gdk_visual_get_colormap_size) IA__gdk_visual_get_colormap_size __attribute((visibility("hidden")));
+#define gdk_visual_get_colormap_size IA__gdk_visual_get_colormap_size
+
+extern __typeof (gdk_visual_get_depth) IA__gdk_visual_get_depth __attribute((visibility("hidden")));
+#define gdk_visual_get_depth IA__gdk_visual_get_depth
+
+extern __typeof (gdk_visual_get_green_pixel_details) IA__gdk_visual_get_green_pixel_details __attribute((visibility("hidden")));
+#define gdk_visual_get_green_pixel_details IA__gdk_visual_get_green_pixel_details
+
+extern __typeof (gdk_visual_get_red_pixel_details) IA__gdk_visual_get_red_pixel_details __attribute((visibility("hidden")));
+#define gdk_visual_get_red_pixel_details IA__gdk_visual_get_red_pixel_details
+
+extern __typeof (gdk_visual_get_system) IA__gdk_visual_get_system __attribute((visibility("hidden")));
+#define gdk_visual_get_system IA__gdk_visual_get_system
+
+extern __typeof (gdk_visual_get_visual_type) IA__gdk_visual_get_visual_type __attribute((visibility("hidden")));
+#define gdk_visual_get_visual_type IA__gdk_visual_get_visual_type
+
+#endif
+#endif
+#if IN_HEADER(__GDK_VISUAL_H__)
+#if IN_FILE(__GDK_VISUAL_X11_C__)
+extern __typeof (gdk_query_depths) IA__gdk_query_depths __attribute((visibility("hidden")));
+#define gdk_query_depths IA__gdk_query_depths
+
+extern __typeof (gdk_query_visual_types) IA__gdk_query_visual_types __attribute((visibility("hidden")));
+#define gdk_query_visual_types IA__gdk_query_visual_types
+
+extern __typeof (gdk_visual_get_best) IA__gdk_visual_get_best __attribute((visibility("hidden")));
+#define gdk_visual_get_best IA__gdk_visual_get_best
+
+extern __typeof (gdk_visual_get_best_depth) IA__gdk_visual_get_best_depth __attribute((visibility("hidden")));
+#define gdk_visual_get_best_depth IA__gdk_visual_get_best_depth
+
+extern __typeof (gdk_visual_get_best_type) IA__gdk_visual_get_best_type __attribute((visibility("hidden")));
+#define gdk_visual_get_best_type IA__gdk_visual_get_best_type
+
+extern __typeof (gdk_visual_get_best_with_both) IA__gdk_visual_get_best_with_both __attribute((visibility("hidden")));
+#define gdk_visual_get_best_with_both IA__gdk_visual_get_best_with_both
+
+extern __typeof (gdk_visual_get_best_with_depth) IA__gdk_visual_get_best_with_depth __attribute((visibility("hidden")));
+#define gdk_visual_get_best_with_depth IA__gdk_visual_get_best_with_depth
+
+extern __typeof (gdk_visual_get_best_with_type) IA__gdk_visual_get_best_with_type __attribute((visibility("hidden")));
+#define gdk_visual_get_best_with_type IA__gdk_visual_get_best_with_type
+
+extern __typeof (gdk_visual_get_screen) IA__gdk_visual_get_screen __attribute((visibility("hidden")));
+#define gdk_visual_get_screen IA__gdk_visual_get_screen
+
+extern __typeof (gdk_visual_get_type) IA__gdk_visual_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_visual_get_type IA__gdk_visual_get_type
+
+#endif
+#endif
+#if IN_HEADER(__GDK_X_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+extern __typeof (gdk_net_wm_supports) IA__gdk_net_wm_supports __attribute((visibility("hidden")));
+#define gdk_net_wm_supports IA__gdk_net_wm_supports
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PANGO_H__)
+#if IN_FILE(__GDK_PANGO_C__)
+extern __typeof (gdk_pango_attr_emboss_color_new) IA__gdk_pango_attr_emboss_color_new __attribute((visibility("hidden")));
+#define gdk_pango_attr_emboss_color_new IA__gdk_pango_attr_emboss_color_new
+
+extern __typeof (gdk_pango_attr_embossed_new) IA__gdk_pango_attr_embossed_new __attribute((visibility("hidden")));
+#define gdk_pango_attr_embossed_new IA__gdk_pango_attr_embossed_new
+
+extern __typeof (gdk_pango_attr_stipple_new) IA__gdk_pango_attr_stipple_new __attribute((visibility("hidden")));
+#define gdk_pango_attr_stipple_new IA__gdk_pango_attr_stipple_new
+
+extern __typeof (gdk_pango_context_get) IA__gdk_pango_context_get __attribute((visibility("hidden")));
+#define gdk_pango_context_get IA__gdk_pango_context_get
+
+extern __typeof (gdk_pango_context_get_for_screen) IA__gdk_pango_context_get_for_screen __attribute((visibility("hidden")));
+#define gdk_pango_context_get_for_screen IA__gdk_pango_context_get_for_screen
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_pango_context_set_colormap) IA__gdk_pango_context_set_colormap __attribute((visibility("hidden")));
+#define gdk_pango_context_set_colormap IA__gdk_pango_context_set_colormap
+
+#endif
+extern __typeof (gdk_pango_layout_get_clip_region) IA__gdk_pango_layout_get_clip_region __attribute((visibility("hidden")));
+#define gdk_pango_layout_get_clip_region IA__gdk_pango_layout_get_clip_region
+
+extern __typeof (gdk_pango_layout_line_get_clip_region) IA__gdk_pango_layout_line_get_clip_region __attribute((visibility("hidden")));
+#define gdk_pango_layout_line_get_clip_region IA__gdk_pango_layout_line_get_clip_region
+
+extern __typeof (gdk_pango_renderer_get_default) IA__gdk_pango_renderer_get_default __attribute((visibility("hidden")));
+#define gdk_pango_renderer_get_default IA__gdk_pango_renderer_get_default
+
+extern __typeof (gdk_pango_renderer_get_type) IA__gdk_pango_renderer_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_pango_renderer_get_type IA__gdk_pango_renderer_get_type
+
+extern __typeof (gdk_pango_renderer_new) IA__gdk_pango_renderer_new __attribute((visibility("hidden")));
+#define gdk_pango_renderer_new IA__gdk_pango_renderer_new
+
+extern __typeof (gdk_pango_renderer_set_drawable) IA__gdk_pango_renderer_set_drawable __attribute((visibility("hidden")));
+#define gdk_pango_renderer_set_drawable IA__gdk_pango_renderer_set_drawable
+
+extern __typeof (gdk_pango_renderer_set_gc) IA__gdk_pango_renderer_set_gc __attribute((visibility("hidden")));
+#define gdk_pango_renderer_set_gc IA__gdk_pango_renderer_set_gc
+
+extern __typeof (gdk_pango_renderer_set_override_color) IA__gdk_pango_renderer_set_override_color __attribute((visibility("hidden")));
+#define gdk_pango_renderer_set_override_color IA__gdk_pango_renderer_set_override_color
+
+extern __typeof (gdk_pango_renderer_set_stipple) IA__gdk_pango_renderer_set_stipple __attribute((visibility("hidden")));
+#define gdk_pango_renderer_set_stipple IA__gdk_pango_renderer_set_stipple
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXBUF_H__)
+#if IN_FILE(__GDK_PIXBUF_DRAWABLE_C__)
+extern __typeof (gdk_pixbuf_get_from_drawable) IA__gdk_pixbuf_get_from_drawable __attribute((visibility("hidden")));
+#define gdk_pixbuf_get_from_drawable IA__gdk_pixbuf_get_from_drawable
+
+extern __typeof (gdk_pixbuf_get_from_image) IA__gdk_pixbuf_get_from_image __attribute((visibility("hidden")));
+#define gdk_pixbuf_get_from_image IA__gdk_pixbuf_get_from_image
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXBUF_H__)
+#if IN_FILE(__GDK_PIXBUF_RENDER_C__)
+extern __typeof (gdk_pixbuf_render_pixmap_and_mask) IA__gdk_pixbuf_render_pixmap_and_mask __attribute((visibility("hidden")));
+#define gdk_pixbuf_render_pixmap_and_mask IA__gdk_pixbuf_render_pixmap_and_mask
+
+extern __typeof (gdk_pixbuf_render_pixmap_and_mask_for_colormap) IA__gdk_pixbuf_render_pixmap_and_mask_for_colormap __attribute((visibility("hidden")));
+#define gdk_pixbuf_render_pixmap_and_mask_for_colormap IA__gdk_pixbuf_render_pixmap_and_mask_for_colormap
+
+extern __typeof (gdk_pixbuf_render_threshold_alpha) IA__gdk_pixbuf_render_threshold_alpha __attribute((visibility("hidden")));
+#define gdk_pixbuf_render_threshold_alpha IA__gdk_pixbuf_render_threshold_alpha
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_pixbuf_render_to_drawable) IA__gdk_pixbuf_render_to_drawable __attribute((visibility("hidden")));
+#define gdk_pixbuf_render_to_drawable IA__gdk_pixbuf_render_to_drawable
+
+extern __typeof (gdk_pixbuf_render_to_drawable_alpha) IA__gdk_pixbuf_render_to_drawable_alpha __attribute((visibility("hidden")));
+#define gdk_pixbuf_render_to_drawable_alpha IA__gdk_pixbuf_render_to_drawable_alpha
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXMAP_H__)
+#if IN_FILE(__GDK_PIXMAP_C__)
+extern __typeof (gdk_bitmap_create_from_data) IA__gdk_bitmap_create_from_data __attribute((visibility("hidden")));
+#define gdk_bitmap_create_from_data IA__gdk_bitmap_create_from_data
+
+extern __typeof (gdk_pixmap_colormap_create_from_xpm) IA__gdk_pixmap_colormap_create_from_xpm __attribute((visibility("hidden")));
+#define gdk_pixmap_colormap_create_from_xpm IA__gdk_pixmap_colormap_create_from_xpm
+
+extern __typeof (gdk_pixmap_create_from_data) IA__gdk_pixmap_create_from_data __attribute((visibility("hidden")));
+#define gdk_pixmap_create_from_data IA__gdk_pixmap_create_from_data
+
+extern __typeof (gdk_pixmap_create_from_xpm) IA__gdk_pixmap_create_from_xpm __attribute((visibility("hidden")));
+#define gdk_pixmap_create_from_xpm IA__gdk_pixmap_create_from_xpm
+
+extern __typeof (gdk_pixmap_colormap_create_from_xpm_d) IA__gdk_pixmap_colormap_create_from_xpm_d __attribute((visibility("hidden")));
+#define gdk_pixmap_colormap_create_from_xpm_d IA__gdk_pixmap_colormap_create_from_xpm_d
+
+extern __typeof (gdk_pixmap_create_from_xpm_d) IA__gdk_pixmap_create_from_xpm_d __attribute((visibility("hidden")));
+#define gdk_pixmap_create_from_xpm_d IA__gdk_pixmap_create_from_xpm_d
+
+extern __typeof (gdk_pixmap_get_type) IA__gdk_pixmap_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_pixmap_get_type IA__gdk_pixmap_get_type
+
+extern __typeof (gdk_pixmap_new) IA__gdk_pixmap_new __attribute((visibility("hidden")));
+#define gdk_pixmap_new IA__gdk_pixmap_new
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXMAP_H__)
+#if IN_FILE(__GDK_PIXMAP_X11_C__)
+extern __typeof (gdk_pixmap_foreign_new) IA__gdk_pixmap_foreign_new __attribute((visibility("hidden")));
+#define gdk_pixmap_foreign_new IA__gdk_pixmap_foreign_new
+
+extern __typeof (gdk_pixmap_foreign_new_for_display) IA__gdk_pixmap_foreign_new_for_display __attribute((visibility("hidden")));
+#define gdk_pixmap_foreign_new_for_display IA__gdk_pixmap_foreign_new_for_display
+
+extern __typeof (gdk_pixmap_foreign_new_for_screen) IA__gdk_pixmap_foreign_new_for_screen __attribute((visibility("hidden")));
+#define gdk_pixmap_foreign_new_for_screen IA__gdk_pixmap_foreign_new_for_screen
+
+extern __typeof (gdk_pixmap_lookup) IA__gdk_pixmap_lookup __attribute((visibility("hidden")));
+#define gdk_pixmap_lookup IA__gdk_pixmap_lookup
+
+extern __typeof (gdk_pixmap_lookup_for_display) IA__gdk_pixmap_lookup_for_display __attribute((visibility("hidden")));
+#define gdk_pixmap_lookup_for_display IA__gdk_pixmap_lookup_for_display
+
+#endif
+#endif
+#if IN_HEADER(__GDK_REGION_H__)
+#if IN_FILE(__GDK_REGION_GENERIC_C__)
+extern __typeof (gdk_region_copy) IA__gdk_region_copy __attribute((visibility("hidden")));
+#define gdk_region_copy IA__gdk_region_copy
+
+extern __typeof (gdk_region_destroy) IA__gdk_region_destroy __attribute((visibility("hidden")));
+#define gdk_region_destroy IA__gdk_region_destroy
+
+extern __typeof (gdk_region_empty) IA__gdk_region_empty __attribute((visibility("hidden")));
+#define gdk_region_empty IA__gdk_region_empty
+
+extern __typeof (gdk_region_equal) IA__gdk_region_equal __attribute((visibility("hidden")));
+#define gdk_region_equal IA__gdk_region_equal
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_region_rect_equal) IA__gdk_region_rect_equal __attribute((visibility("hidden")));
+#define gdk_region_rect_equal IA__gdk_region_rect_equal
+
+#endif
+extern __typeof (gdk_region_get_clipbox) IA__gdk_region_get_clipbox __attribute((visibility("hidden")));
+#define gdk_region_get_clipbox IA__gdk_region_get_clipbox
+
+extern __typeof (gdk_region_get_rectangles) IA__gdk_region_get_rectangles __attribute((visibility("hidden")));
+#define gdk_region_get_rectangles IA__gdk_region_get_rectangles
+
+extern __typeof (gdk_region_intersect) IA__gdk_region_intersect __attribute((visibility("hidden")));
+#define gdk_region_intersect IA__gdk_region_intersect
+
+extern __typeof (gdk_region_new) IA__gdk_region_new __attribute((visibility("hidden")));
+#define gdk_region_new IA__gdk_region_new
+
+extern __typeof (gdk_region_offset) IA__gdk_region_offset __attribute((visibility("hidden")));
+#define gdk_region_offset IA__gdk_region_offset
+
+extern __typeof (gdk_region_point_in) IA__gdk_region_point_in __attribute((visibility("hidden")));
+#define gdk_region_point_in IA__gdk_region_point_in
+
+extern __typeof (gdk_region_rectangle) IA__gdk_region_rectangle __attribute((visibility("hidden")));
+#define gdk_region_rectangle IA__gdk_region_rectangle
+
+extern __typeof (gdk_region_rect_in) IA__gdk_region_rect_in __attribute((visibility("hidden")));
+#define gdk_region_rect_in IA__gdk_region_rect_in
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_region_shrink) IA__gdk_region_shrink __attribute((visibility("hidden")));
+#define gdk_region_shrink IA__gdk_region_shrink
+
+extern __typeof (gdk_region_spans_intersect_foreach) IA__gdk_region_spans_intersect_foreach __attribute((visibility("hidden")));
+#define gdk_region_spans_intersect_foreach IA__gdk_region_spans_intersect_foreach
+
+#endif
+extern __typeof (gdk_region_subtract) IA__gdk_region_subtract __attribute((visibility("hidden")));
+#define gdk_region_subtract IA__gdk_region_subtract
+
+extern __typeof (gdk_region_union) IA__gdk_region_union __attribute((visibility("hidden")));
+#define gdk_region_union IA__gdk_region_union
+
+extern __typeof (gdk_region_union_with_rect) IA__gdk_region_union_with_rect __attribute((visibility("hidden")));
+#define gdk_region_union_with_rect IA__gdk_region_union_with_rect
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_region_xor) IA__gdk_region_xor __attribute((visibility("hidden")));
+#define gdk_region_xor IA__gdk_region_xor
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_REGION_H__)
+#if IN_FILE(__GDK_POLYREG_GENERIC_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_region_polygon) IA__gdk_region_polygon __attribute((visibility("hidden")));
+#define gdk_region_polygon IA__gdk_region_polygon
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_RGB_H__)
+#if IN_FILE(__GDK_RGB_C__)
+extern __typeof (gdk_rgb_cmap_free) IA__gdk_rgb_cmap_free __attribute((visibility("hidden")));
+#define gdk_rgb_cmap_free IA__gdk_rgb_cmap_free
+
+extern __typeof (gdk_rgb_cmap_new) IA__gdk_rgb_cmap_new __attribute((visibility("hidden")));
+#define gdk_rgb_cmap_new IA__gdk_rgb_cmap_new
+
+extern __typeof (gdk_rgb_colormap_ditherable) IA__gdk_rgb_colormap_ditherable __attribute((visibility("hidden")));
+#define gdk_rgb_colormap_ditherable IA__gdk_rgb_colormap_ditherable
+
+extern __typeof (gdk_rgb_ditherable) IA__gdk_rgb_ditherable __attribute((visibility("hidden")));
+#define gdk_rgb_ditherable IA__gdk_rgb_ditherable
+
+extern __typeof (gdk_rgb_find_color) IA__gdk_rgb_find_color __attribute((visibility("hidden")));
+#define gdk_rgb_find_color IA__gdk_rgb_find_color
+
+extern __typeof (gdk_rgb_get_colormap) IA__gdk_rgb_get_colormap __attribute((visibility("hidden")));
+#define gdk_rgb_get_colormap IA__gdk_rgb_get_colormap
+
+extern __typeof (gdk_rgb_get_visual) IA__gdk_rgb_get_visual __attribute((visibility("hidden")));
+#define gdk_rgb_get_visual IA__gdk_rgb_get_visual
+
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_rgb_init) IA__gdk_rgb_init __attribute((visibility("hidden")));
+#define gdk_rgb_init IA__gdk_rgb_init
+
+extern __typeof (gdk_rgb_xpixel_from_rgb) IA__gdk_rgb_xpixel_from_rgb __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_rgb_xpixel_from_rgb IA__gdk_rgb_xpixel_from_rgb
+
+extern __typeof (gdk_rgb_gc_set_background) IA__gdk_rgb_gc_set_background __attribute((visibility("hidden")));
+#define gdk_rgb_gc_set_background IA__gdk_rgb_gc_set_background
+
+extern __typeof (gdk_rgb_gc_set_foreground) IA__gdk_rgb_gc_set_foreground __attribute((visibility("hidden")));
+#define gdk_rgb_gc_set_foreground IA__gdk_rgb_gc_set_foreground
+
+#endif
+extern __typeof (gdk_rgb_set_install) IA__gdk_rgb_set_install __attribute((visibility("hidden")));
+#define gdk_rgb_set_install IA__gdk_rgb_set_install
+
+extern __typeof (gdk_rgb_set_min_colors) IA__gdk_rgb_set_min_colors __attribute((visibility("hidden")));
+#define gdk_rgb_set_min_colors IA__gdk_rgb_set_min_colors
+
+extern __typeof (gdk_rgb_set_verbose) IA__gdk_rgb_set_verbose __attribute((visibility("hidden")));
+#define gdk_rgb_set_verbose IA__gdk_rgb_set_verbose
+
+extern __typeof (gdk_draw_gray_image) IA__gdk_draw_gray_image __attribute((visibility("hidden")));
+#define gdk_draw_gray_image IA__gdk_draw_gray_image
+
+extern __typeof (gdk_draw_indexed_image) IA__gdk_draw_indexed_image __attribute((visibility("hidden")));
+#define gdk_draw_indexed_image IA__gdk_draw_indexed_image
+
+extern __typeof (gdk_draw_rgb_32_image) IA__gdk_draw_rgb_32_image __attribute((visibility("hidden")));
+#define gdk_draw_rgb_32_image IA__gdk_draw_rgb_32_image
+
+extern __typeof (gdk_draw_rgb_32_image_dithalign) IA__gdk_draw_rgb_32_image_dithalign __attribute((visibility("hidden")));
+#define gdk_draw_rgb_32_image_dithalign IA__gdk_draw_rgb_32_image_dithalign
+
+extern __typeof (gdk_draw_rgb_image) IA__gdk_draw_rgb_image __attribute((visibility("hidden")));
+#define gdk_draw_rgb_image IA__gdk_draw_rgb_image
+
+extern __typeof (gdk_draw_rgb_image_dithalign) IA__gdk_draw_rgb_image_dithalign __attribute((visibility("hidden")));
+#define gdk_draw_rgb_image_dithalign IA__gdk_draw_rgb_image_dithalign
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_SCREEN_C__)
+extern __typeof (gdk_screen_get_type) IA__gdk_screen_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_screen_get_type IA__gdk_screen_get_type
+
+extern __typeof (gdk_screen_get_monitor_at_point) IA__gdk_screen_get_monitor_at_point __attribute((visibility("hidden")));
+#define gdk_screen_get_monitor_at_point IA__gdk_screen_get_monitor_at_point
+
+extern __typeof (gdk_screen_get_monitor_at_window) IA__gdk_screen_get_monitor_at_window __attribute((visibility("hidden")));
+#define gdk_screen_get_monitor_at_window IA__gdk_screen_get_monitor_at_window
+
+extern __typeof (gdk_screen_set_font_options) IA__gdk_screen_set_font_options __attribute((visibility("hidden")));
+#define gdk_screen_set_font_options IA__gdk_screen_set_font_options
+
+extern __typeof (gdk_screen_get_font_options) IA__gdk_screen_get_font_options __attribute((visibility("hidden")));
+#define gdk_screen_get_font_options IA__gdk_screen_get_font_options
+
+extern __typeof (gdk_screen_set_resolution) IA__gdk_screen_set_resolution __attribute((visibility("hidden")));
+#define gdk_screen_set_resolution IA__gdk_screen_set_resolution
+
+extern __typeof (gdk_screen_get_resolution) IA__gdk_screen_get_resolution __attribute((visibility("hidden")));
+#define gdk_screen_get_resolution IA__gdk_screen_get_resolution
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_DISPLAY_MANAGER_C__)
+extern __typeof (gdk_screen_get_default) IA__gdk_screen_get_default __attribute((visibility("hidden")));
+#define gdk_screen_get_default IA__gdk_screen_get_default
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_RGB_C__)
+extern __typeof (gdk_screen_get_rgb_colormap) IA__gdk_screen_get_rgb_colormap __attribute((visibility("hidden")));
+#define gdk_screen_get_rgb_colormap IA__gdk_screen_get_rgb_colormap
+
+extern __typeof (gdk_screen_get_rgb_visual) IA__gdk_screen_get_rgb_visual __attribute((visibility("hidden")));
+#define gdk_screen_get_rgb_visual IA__gdk_screen_get_rgb_visual
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+extern __typeof (gdk_screen_get_setting) IA__gdk_screen_get_setting __attribute((visibility("hidden")));
+#define gdk_screen_get_setting IA__gdk_screen_get_setting
+
+extern __typeof (gdk_screen_broadcast_client_message) IA__gdk_screen_broadcast_client_message __attribute((visibility("hidden")));
+#define gdk_screen_broadcast_client_message IA__gdk_screen_broadcast_client_message
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_VISUAL_X11_C__)
+extern __typeof (gdk_screen_get_system_visual) IA__gdk_screen_get_system_visual __attribute((visibility("hidden")));
+#define gdk_screen_get_system_visual IA__gdk_screen_get_system_visual
+
+extern __typeof (gdk_screen_list_visuals) IA__gdk_screen_list_visuals __attribute((visibility("hidden")));
+#define gdk_screen_list_visuals IA__gdk_screen_list_visuals
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_WINDOW_C__)
+extern __typeof (gdk_screen_get_toplevel_windows) IA__gdk_screen_get_toplevel_windows __attribute((visibility("hidden")));
+#define gdk_screen_get_toplevel_windows IA__gdk_screen_get_toplevel_windows
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_SCREEN_X11_C__)
+extern __typeof (gdk_screen_get_display) IA__gdk_screen_get_display __attribute((visibility("hidden")));
+#define gdk_screen_get_display IA__gdk_screen_get_display
+
+extern __typeof (gdk_screen_get_width) IA__gdk_screen_get_width __attribute((visibility("hidden")));
+#define gdk_screen_get_width IA__gdk_screen_get_width
+
+extern __typeof (gdk_screen_get_width_mm) IA__gdk_screen_get_width_mm __attribute((visibility("hidden")));
+#define gdk_screen_get_width_mm IA__gdk_screen_get_width_mm
+
+extern __typeof (gdk_screen_get_height) IA__gdk_screen_get_height __attribute((visibility("hidden")));
+#define gdk_screen_get_height IA__gdk_screen_get_height
+
+extern __typeof (gdk_screen_get_height_mm) IA__gdk_screen_get_height_mm __attribute((visibility("hidden")));
+#define gdk_screen_get_height_mm IA__gdk_screen_get_height_mm
+
+extern __typeof (gdk_screen_get_number) IA__gdk_screen_get_number __attribute((visibility("hidden")));
+#define gdk_screen_get_number IA__gdk_screen_get_number
+
+extern __typeof (gdk_screen_get_primary_monitor) IA__gdk_screen_get_primary_monitor __attribute((visibility("hidden")));
+#define gdk_screen_get_primary_monitor IA__gdk_screen_get_primary_monitor
+
+extern __typeof (gdk_screen_get_root_window) IA__gdk_screen_get_root_window __attribute((visibility("hidden")));
+#define gdk_screen_get_root_window IA__gdk_screen_get_root_window
+
+extern __typeof (gdk_screen_get_default_colormap) IA__gdk_screen_get_default_colormap __attribute((visibility("hidden")));
+#define gdk_screen_get_default_colormap IA__gdk_screen_get_default_colormap
+
+extern __typeof (gdk_screen_set_default_colormap) IA__gdk_screen_set_default_colormap __attribute((visibility("hidden")));
+#define gdk_screen_set_default_colormap IA__gdk_screen_set_default_colormap
+
+extern __typeof (gdk_screen_get_n_monitors) IA__gdk_screen_get_n_monitors __attribute((visibility("hidden")));
+#define gdk_screen_get_n_monitors IA__gdk_screen_get_n_monitors
+
+extern __typeof (gdk_screen_get_monitor_geometry) IA__gdk_screen_get_monitor_geometry __attribute((visibility("hidden")));
+#define gdk_screen_get_monitor_geometry IA__gdk_screen_get_monitor_geometry
+
+extern __typeof (gdk_screen_get_monitor_width_mm) IA__gdk_screen_get_monitor_width_mm __attribute((visibility("hidden")));
+#define gdk_screen_get_monitor_width_mm IA__gdk_screen_get_monitor_width_mm
+
+extern __typeof (gdk_screen_get_monitor_height_mm) IA__gdk_screen_get_monitor_height_mm __attribute((visibility("hidden")));
+#define gdk_screen_get_monitor_height_mm IA__gdk_screen_get_monitor_height_mm
+
+extern __typeof (gdk_screen_get_monitor_plug_name) IA__gdk_screen_get_monitor_plug_name __attribute((visibility("hidden")));
+#define gdk_screen_get_monitor_plug_name IA__gdk_screen_get_monitor_plug_name
+
+extern __typeof (gdk_screen_get_rgba_colormap) IA__gdk_screen_get_rgba_colormap __attribute((visibility("hidden")));
+#define gdk_screen_get_rgba_colormap IA__gdk_screen_get_rgba_colormap
+
+extern __typeof (gdk_screen_get_rgba_visual) IA__gdk_screen_get_rgba_visual __attribute((visibility("hidden")));
+#define gdk_screen_get_rgba_visual IA__gdk_screen_get_rgba_visual
+
+extern __typeof (gdk_screen_get_active_window) IA__gdk_screen_get_active_window __attribute((visibility("hidden")));
+#define gdk_screen_get_active_window IA__gdk_screen_get_active_window
+
+extern __typeof (gdk_screen_get_window_stack) IA__gdk_screen_get_window_stack __attribute((visibility("hidden")));
+#define gdk_screen_get_window_stack IA__gdk_screen_get_window_stack
+
+extern __typeof (gdk_screen_is_composited) IA__gdk_screen_is_composited __attribute((visibility("hidden")));
+#define gdk_screen_is_composited IA__gdk_screen_is_composited
+
+extern __typeof (gdk_screen_make_display_name) IA__gdk_screen_make_display_name __attribute((visibility("hidden")));
+#define gdk_screen_make_display_name IA__gdk_screen_make_display_name
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_COLOR_X11_C__)
+extern __typeof (gdk_screen_get_system_colormap) IA__gdk_screen_get_system_colormap __attribute((visibility("hidden")));
+#define gdk_screen_get_system_colormap IA__gdk_screen_get_system_colormap
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SELECTION_H__)
+#if IN_FILE(__GDK_SELECTION_C__)
+extern __typeof (gdk_selection_owner_set) IA__gdk_selection_owner_set __attribute((visibility("hidden")));
+#define gdk_selection_owner_set IA__gdk_selection_owner_set
+
+extern __typeof (gdk_selection_owner_get) IA__gdk_selection_owner_get __attribute((visibility("hidden")));
+#define gdk_selection_owner_get IA__gdk_selection_owner_get
+
+extern __typeof (gdk_selection_send_notify) IA__gdk_selection_send_notify __attribute((visibility("hidden")));
+#define gdk_selection_send_notify IA__gdk_selection_send_notify
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SELECTION_H__)
+#if IN_FILE(__GDK_SELECTION_X11_C__)
+extern __typeof (gdk_selection_convert) IA__gdk_selection_convert __attribute((visibility("hidden")));
+#define gdk_selection_convert IA__gdk_selection_convert
+
+extern __typeof (gdk_selection_owner_get_for_display) IA__gdk_selection_owner_get_for_display __attribute((visibility("hidden")));
+#define gdk_selection_owner_get_for_display IA__gdk_selection_owner_get_for_display
+
+extern __typeof (gdk_selection_owner_set_for_display) IA__gdk_selection_owner_set_for_display __attribute((visibility("hidden")));
+#define gdk_selection_owner_set_for_display IA__gdk_selection_owner_set_for_display
+
+extern __typeof (gdk_selection_property_get) IA__gdk_selection_property_get __attribute((visibility("hidden")));
+#define gdk_selection_property_get IA__gdk_selection_property_get
+
+extern __typeof (gdk_selection_send_notify_for_display) IA__gdk_selection_send_notify_for_display __attribute((visibility("hidden")));
+#define gdk_selection_send_notify_for_display IA__gdk_selection_send_notify_for_display
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+extern __typeof (gdk_set_sm_client_id) IA__gdk_set_sm_client_id __attribute((visibility("hidden")));
+#define gdk_set_sm_client_id IA__gdk_set_sm_client_id
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SPAWN_H__)
+#if IN_FILE(__GDK_SPAWN_X11_C__)
+extern __typeof (gdk_spawn_command_line_on_screen) IA__gdk_spawn_command_line_on_screen __attribute((visibility("hidden")));
+#define gdk_spawn_command_line_on_screen IA__gdk_spawn_command_line_on_screen
+
+extern __typeof (gdk_spawn_on_screen) IA__gdk_spawn_on_screen __attribute((visibility("hidden")));
+#define gdk_spawn_on_screen IA__gdk_spawn_on_screen
+
+extern __typeof (gdk_spawn_on_screen_with_pipes) IA__gdk_spawn_on_screen_with_pipes __attribute((visibility("hidden")));
+#define gdk_spawn_on_screen_with_pipes IA__gdk_spawn_on_screen_with_pipes
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PRIVATE_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+extern __typeof (gdk_synthesize_window_state) IA__gdk_synthesize_window_state __attribute((visibility("hidden")));
+#define gdk_synthesize_window_state IA__gdk_synthesize_window_state
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PRIVATE_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+extern __typeof (gdk_window_destroy_notify) IA__gdk_window_destroy_notify __attribute((visibility("hidden")));
+#define gdk_window_destroy_notify IA__gdk_window_destroy_notify
+
+#endif
+#endif
+#ifdef GDK_WINDOWING_WIN32
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_WIN32ID_C__)
+extern __typeof (gdk_win32_handle_table_lookup) IA__gdk_win32_handle_table_lookup __attribute((visibility("hidden")));
+#define gdk_win32_handle_table_lookup IA__gdk_win32_handle_table_lookup
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_CURSOR_WIN32_C__)
+extern __typeof (gdk_win32_icon_to_pixbuf_libgtk_only) IA__gdk_win32_icon_to_pixbuf_libgtk_only __attribute((visibility("hidden")));
+#define gdk_win32_icon_to_pixbuf_libgtk_only IA__gdk_win32_icon_to_pixbuf_libgtk_only
+
+extern __typeof (gdk_win32_pixbuf_to_hicon_libgtk_only) IA__gdk_win32_pixbuf_to_hicon_libgtk_only __attribute((visibility("hidden")));
+#define gdk_win32_pixbuf_to_hicon_libgtk_only IA__gdk_win32_pixbuf_to_hicon_libgtk_only
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_DRAWABLE_WIN32_C__)
+extern __typeof (gdk_win32_drawable_get_handle) IA__gdk_win32_drawable_get_handle __attribute((visibility("hidden")));
+#define gdk_win32_drawable_get_handle IA__gdk_win32_drawable_get_handle
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_EVENTS_WIN32_C__)
+extern __typeof (gdk_win32_set_modal_dialog_libgtk_only) IA__gdk_win32_set_modal_dialog_libgtk_only __attribute((visibility("hidden")));
+#define gdk_win32_set_modal_dialog_libgtk_only IA__gdk_win32_set_modal_dialog_libgtk_only
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_GC_WIN32_C__)
+extern __typeof (gdk_win32_hdc_get) IA__gdk_win32_hdc_get __attribute((visibility("hidden")));
+#define gdk_win32_hdc_get IA__gdk_win32_hdc_get
+
+extern __typeof (gdk_win32_hdc_release) IA__gdk_win32_hdc_release __attribute((visibility("hidden")));
+#define gdk_win32_hdc_release IA__gdk_win32_hdc_release
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_SELECTION_WIN32_C__)
+extern __typeof (gdk_win32_selection_add_targets) IA__gdk_win32_selection_add_targets __attribute((visibility("hidden")));
+#define gdk_win32_selection_add_targets IA__gdk_win32_selection_add_targets
+
+#endif
+#endif
+#endif
+#ifdef GDK_WINDOWING_X11
+#if IN_HEADER(__GDK_X_H__)
+#if IN_FILE(__GDK_PROPERTY_X11_C__)
+extern __typeof (gdk_x11_atom_to_xatom) IA__gdk_x11_atom_to_xatom __attribute((visibility("hidden")));
+#define gdk_x11_atom_to_xatom IA__gdk_x11_atom_to_xatom
+
+extern __typeof (gdk_x11_atom_to_xatom_for_display) IA__gdk_x11_atom_to_xatom_for_display __attribute((visibility("hidden")));
+#define gdk_x11_atom_to_xatom_for_display IA__gdk_x11_atom_to_xatom_for_display
+
+extern __typeof (gdk_x11_get_xatom_by_name) IA__gdk_x11_get_xatom_by_name __attribute((visibility("hidden")));
+#define gdk_x11_get_xatom_by_name IA__gdk_x11_get_xatom_by_name
+
+extern __typeof (gdk_x11_get_xatom_by_name_for_display) IA__gdk_x11_get_xatom_by_name_for_display __attribute((visibility("hidden")));
+#define gdk_x11_get_xatom_by_name_for_display IA__gdk_x11_get_xatom_by_name_for_display
+
+extern __typeof (gdk_x11_get_xatom_name) IA__gdk_x11_get_xatom_name __attribute((visibility("hidden")));
+#define gdk_x11_get_xatom_name IA__gdk_x11_get_xatom_name
+
+extern __typeof (gdk_x11_get_xatom_name_for_display) IA__gdk_x11_get_xatom_name_for_display __attribute((visibility("hidden")));
+#define gdk_x11_get_xatom_name_for_display IA__gdk_x11_get_xatom_name_for_display
+
+extern __typeof (gdk_x11_xatom_to_atom) IA__gdk_x11_xatom_to_atom __attribute((visibility("hidden")));
+#define gdk_x11_xatom_to_atom IA__gdk_x11_xatom_to_atom
+
+extern __typeof (gdk_x11_xatom_to_atom_for_display) IA__gdk_x11_xatom_to_atom_for_display __attribute((visibility("hidden")));
+#define gdk_x11_xatom_to_atom_for_display IA__gdk_x11_xatom_to_atom_for_display
+
+#endif
+#if IN_FILE(__GDK_COLOR_X11_C__)
+extern __typeof (gdk_x11_colormap_foreign_new) IA__gdk_x11_colormap_foreign_new __attribute((visibility("hidden")));
+#define gdk_x11_colormap_foreign_new IA__gdk_x11_colormap_foreign_new
+
+extern __typeof (gdk_x11_colormap_get_xcolormap) IA__gdk_x11_colormap_get_xcolormap __attribute((visibility("hidden")));
+#define gdk_x11_colormap_get_xcolormap IA__gdk_x11_colormap_get_xcolormap
+
+extern __typeof (gdk_x11_colormap_get_xdisplay) IA__gdk_x11_colormap_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_colormap_get_xdisplay IA__gdk_x11_colormap_get_xdisplay
+
+#ifdef GDK_ENABLE_BROKEN
+extern __typeof (gdkx_colormap_get) IA__gdkx_colormap_get __attribute((visibility("hidden")));
+#define gdkx_colormap_get IA__gdkx_colormap_get
+
+#endif
+#endif
+#if IN_FILE(__GDK_CURSOR_X11_C__)
+extern __typeof (gdk_x11_cursor_get_xcursor) IA__gdk_x11_cursor_get_xcursor __attribute((visibility("hidden")));
+#define gdk_x11_cursor_get_xcursor IA__gdk_x11_cursor_get_xcursor
+
+extern __typeof (gdk_x11_cursor_get_xdisplay) IA__gdk_x11_cursor_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_cursor_get_xdisplay IA__gdk_x11_cursor_get_xdisplay
+
+extern __typeof (gdk_x11_display_set_cursor_theme) IA__gdk_x11_display_set_cursor_theme __attribute((visibility("hidden")));
+#define gdk_x11_display_set_cursor_theme IA__gdk_x11_display_set_cursor_theme
+
+#endif
+#if IN_FILE(__GDK_DISPLAY_X11_C__)
+extern __typeof (gdk_x11_display_get_user_time) IA__gdk_x11_display_get_user_time __attribute((visibility("hidden")));
+#define gdk_x11_display_get_user_time IA__gdk_x11_display_get_user_time
+
+extern __typeof (gdk_x11_display_get_xdisplay) IA__gdk_x11_display_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_display_get_xdisplay IA__gdk_x11_display_get_xdisplay
+
+extern __typeof (gdk_x11_display_grab) IA__gdk_x11_display_grab __attribute((visibility("hidden")));
+#define gdk_x11_display_grab IA__gdk_x11_display_grab
+
+extern __typeof (gdk_x11_display_ungrab) IA__gdk_x11_display_ungrab __attribute((visibility("hidden")));
+#define gdk_x11_display_ungrab IA__gdk_x11_display_ungrab
+
+extern __typeof (gdk_x11_lookup_xdisplay) IA__gdk_x11_lookup_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_lookup_xdisplay IA__gdk_x11_lookup_xdisplay
+
+extern __typeof (gdk_x11_display_broadcast_startup_message) IA__gdk_x11_display_broadcast_startup_message __attribute((visibility("hidden")));
+#define gdk_x11_display_broadcast_startup_message IA__gdk_x11_display_broadcast_startup_message
+
+extern __typeof (gdk_x11_display_get_startup_notification_id) IA__gdk_x11_display_get_startup_notification_id __attribute((visibility("hidden")));
+#define gdk_x11_display_get_startup_notification_id IA__gdk_x11_display_get_startup_notification_id
+
+#endif
+#if IN_FILE(__GDK_DRAWABLE_X11_C__)
+extern __typeof (gdk_x11_drawable_get_xdisplay) IA__gdk_x11_drawable_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_drawable_get_xdisplay IA__gdk_x11_drawable_get_xdisplay
+
+extern __typeof (gdk_x11_drawable_get_xid) IA__gdk_x11_drawable_get_xid __attribute((visibility("hidden")));
+#define gdk_x11_drawable_get_xid IA__gdk_x11_drawable_get_xid
+
+extern __typeof (gdk_x11_window_get_drawable_impl) IA__gdk_x11_window_get_drawable_impl __attribute((visibility("hidden")));
+#define gdk_x11_window_get_drawable_impl IA__gdk_x11_window_get_drawable_impl
+
+extern __typeof (gdk_x11_pixmap_get_drawable_impl) IA__gdk_x11_pixmap_get_drawable_impl __attribute((visibility("hidden")));
+#define gdk_x11_pixmap_get_drawable_impl IA__gdk_x11_pixmap_get_drawable_impl
+
+#endif
+#if IN_FILE(__GDK_FONT_X11_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+extern __typeof (gdk_x11_font_get_name) IA__gdk_x11_font_get_name __attribute((visibility("hidden")));
+#define gdk_x11_font_get_name IA__gdk_x11_font_get_name
+
+extern __typeof (gdk_x11_font_get_xdisplay) IA__gdk_x11_font_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_font_get_xdisplay IA__gdk_x11_font_get_xdisplay
+
+#endif
+extern __typeof (gdk_x11_font_get_xfont) IA__gdk_x11_font_get_xfont __attribute((visibility("hidden")));
+#define gdk_x11_font_get_xfont IA__gdk_x11_font_get_xfont
+
+#endif
+#if IN_FILE(__GDK_GC_X11_C__)
+extern __typeof (gdk_x11_gc_get_xdisplay) IA__gdk_x11_gc_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_gc_get_xdisplay IA__gdk_x11_gc_get_xdisplay
+
+extern __typeof (gdk_x11_gc_get_xgc) IA__gdk_x11_gc_get_xgc __attribute((visibility("hidden")));
+#define gdk_x11_gc_get_xgc IA__gdk_x11_gc_get_xgc
+
+#endif
+#if IN_FILE(__GDK_MAIN_X11_C__)
+extern __typeof (gdk_x11_get_default_root_xwindow) IA__gdk_x11_get_default_root_xwindow __attribute((visibility("hidden")));
+#define gdk_x11_get_default_root_xwindow IA__gdk_x11_get_default_root_xwindow
+
+extern __typeof (gdk_x11_get_default_screen) IA__gdk_x11_get_default_screen __attribute((visibility("hidden")));
+#define gdk_x11_get_default_screen IA__gdk_x11_get_default_screen
+
+extern __typeof (gdk_x11_get_default_xdisplay) IA__gdk_x11_get_default_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_get_default_xdisplay IA__gdk_x11_get_default_xdisplay
+
+extern __typeof (gdk_x11_grab_server) IA__gdk_x11_grab_server __attribute((visibility("hidden")));
+#define gdk_x11_grab_server IA__gdk_x11_grab_server
+
+extern __typeof (gdk_x11_ungrab_server) IA__gdk_x11_ungrab_server __attribute((visibility("hidden")));
+#define gdk_x11_ungrab_server IA__gdk_x11_ungrab_server
+
+#endif
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+extern __typeof (gdk_x11_get_server_time) IA__gdk_x11_get_server_time __attribute((visibility("hidden")));
+#define gdk_x11_get_server_time IA__gdk_x11_get_server_time
+
+extern __typeof (gdk_x11_register_standard_event_type) IA__gdk_x11_register_standard_event_type __attribute((visibility("hidden")));
+#define gdk_x11_register_standard_event_type IA__gdk_x11_register_standard_event_type
+
+extern __typeof (gdk_x11_screen_get_window_manager_name) IA__gdk_x11_screen_get_window_manager_name __attribute((visibility("hidden")));
+#define gdk_x11_screen_get_window_manager_name IA__gdk_x11_screen_get_window_manager_name
+
+extern __typeof (gdk_x11_screen_supports_net_wm_hint) IA__gdk_x11_screen_supports_net_wm_hint __attribute((visibility("hidden")));
+#define gdk_x11_screen_supports_net_wm_hint IA__gdk_x11_screen_supports_net_wm_hint
+
+#endif
+#if IN_FILE(__GDK_IMAGE_X11_C__)
+extern __typeof (gdk_x11_image_get_xdisplay) IA__gdk_x11_image_get_xdisplay __attribute((visibility("hidden")));
+#define gdk_x11_image_get_xdisplay IA__gdk_x11_image_get_xdisplay
+
+extern __typeof (gdk_x11_image_get_ximage) IA__gdk_x11_image_get_ximage __attribute((visibility("hidden")));
+#define gdk_x11_image_get_ximage IA__gdk_x11_image_get_ximage
+
+#endif
+#if IN_FILE(__GDK_SCREEN_X11_C__)
+extern __typeof (gdk_x11_screen_get_screen_number) IA__gdk_x11_screen_get_screen_number __attribute((visibility("hidden")));
+#define gdk_x11_screen_get_screen_number IA__gdk_x11_screen_get_screen_number
+
+extern __typeof (gdk_x11_screen_get_xscreen) IA__gdk_x11_screen_get_xscreen __attribute((visibility("hidden")));
+#define gdk_x11_screen_get_xscreen IA__gdk_x11_screen_get_xscreen
+
+extern __typeof (gdk_x11_screen_get_monitor_output) IA__gdk_x11_screen_get_monitor_output __attribute((visibility("hidden")));
+#define gdk_x11_screen_get_monitor_output IA__gdk_x11_screen_get_monitor_output
+
+#endif
+#if IN_FILE(__GDK_VISUAL_X11_C__)
+extern __typeof (gdk_x11_screen_lookup_visual) IA__gdk_x11_screen_lookup_visual __attribute((visibility("hidden")));
+#define gdk_x11_screen_lookup_visual IA__gdk_x11_screen_lookup_visual
+
+extern __typeof (gdk_x11_visual_get_xvisual) IA__gdk_x11_visual_get_xvisual __attribute((visibility("hidden")));
+#define gdk_x11_visual_get_xvisual IA__gdk_x11_visual_get_xvisual
+
+extern __typeof (gdkx_visual_get) IA__gdkx_visual_get __attribute((visibility("hidden")));
+#define gdkx_visual_get IA__gdkx_visual_get
+
+#endif
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+extern __typeof (gdk_x11_window_set_user_time) IA__gdk_x11_window_set_user_time __attribute((visibility("hidden")));
+#define gdk_x11_window_set_user_time IA__gdk_x11_window_set_user_time
+
+extern __typeof (gdk_x11_window_move_to_current_desktop) IA__gdk_x11_window_move_to_current_desktop __attribute((visibility("hidden")));
+#define gdk_x11_window_move_to_current_desktop IA__gdk_x11_window_move_to_current_desktop
+
+#endif
+#if IN_FILE(__GDK_XID_C__)
+extern __typeof (gdk_xid_table_lookup) IA__gdk_xid_table_lookup __attribute((visibility("hidden")));
+#define gdk_xid_table_lookup IA__gdk_xid_table_lookup
+
+extern __typeof (gdk_xid_table_lookup_for_display) IA__gdk_xid_table_lookup_for_display __attribute((visibility("hidden")));
+#define gdk_xid_table_lookup_for_display IA__gdk_xid_table_lookup_for_display
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_APP_LAUNCH_CONTEXT_H__)
+#if IN_FILE(__GDK_APP_LAUNCH_CONTEXT_C__)
+extern __typeof (gdk_app_launch_context_get_type) IA__gdk_app_launch_context_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_app_launch_context_get_type IA__gdk_app_launch_context_get_type
+
+extern __typeof (gdk_app_launch_context_new) IA__gdk_app_launch_context_new __attribute((visibility("hidden")));
+#define gdk_app_launch_context_new IA__gdk_app_launch_context_new
+
+extern __typeof (gdk_app_launch_context_set_display) IA__gdk_app_launch_context_set_display __attribute((visibility("hidden")));
+#define gdk_app_launch_context_set_display IA__gdk_app_launch_context_set_display
+
+extern __typeof (gdk_app_launch_context_set_screen) IA__gdk_app_launch_context_set_screen __attribute((visibility("hidden")));
+#define gdk_app_launch_context_set_screen IA__gdk_app_launch_context_set_screen
+
+extern __typeof (gdk_app_launch_context_set_desktop) IA__gdk_app_launch_context_set_desktop __attribute((visibility("hidden")));
+#define gdk_app_launch_context_set_desktop IA__gdk_app_launch_context_set_desktop
+
+extern __typeof (gdk_app_launch_context_set_timestamp) IA__gdk_app_launch_context_set_timestamp __attribute((visibility("hidden")));
+#define gdk_app_launch_context_set_timestamp IA__gdk_app_launch_context_set_timestamp
+
+extern __typeof (gdk_app_launch_context_set_icon) IA__gdk_app_launch_context_set_icon __attribute((visibility("hidden")));
+#define gdk_app_launch_context_set_icon IA__gdk_app_launch_context_set_icon
+
+extern __typeof (gdk_app_launch_context_set_icon_name) IA__gdk_app_launch_context_set_icon_name __attribute((visibility("hidden")));
+#define gdk_app_launch_context_set_icon_name IA__gdk_app_launch_context_set_icon_name
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_IMPL_H__)
+#if IN_FILE(__GDK_WINDOW_IMPL_C__)
+extern __typeof (gdk_window_impl_get_type) IA__gdk_window_impl_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;
+#define gdk_window_impl_get_type IA__gdk_window_impl_get_type
+
+#endif
+#endif
+#ifdef GDK_WINDOWING_X11
+#endif
+
+#endif /* G_HAVE_GNUC_VISIBILITY */
+#endif /* DISABLE_VISIBILITY */
diff --git a/gdk/gdkaliasdef.c b/gdk/gdkaliasdef.c
new file mode 100644
index 0000000..af5255e
--- /dev/null
+++ b/gdk/gdkaliasdef.c
@@ -0,0 +1,2811 @@
+/* Generated by makegdkalias.pl */
+
+#ifndef DISABLE_VISIBILITY
+
+#include <glib.h>
+
+#ifdef G_HAVE_GNUC_VISIBILITY
+
+#undef IN_FILE
+#define IN_FILE defined
+
+#undef IN_HEADER
+#define IN_HEADER(x) 1
+
+#if IN_HEADER(__GDK_EVENTS_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+#undef gdk_add_client_message_filter 
+extern __typeof (gdk_add_client_message_filter) gdk_add_client_message_filter __attribute((alias("IA__gdk_add_client_message_filter"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_event_get_graphics_expose 
+extern __typeof (gdk_event_get_graphics_expose) gdk_event_get_graphics_expose __attribute((alias("IA__gdk_event_get_graphics_expose"), visibility("default")));
+
+#endif
+#undef gdk_events_pending 
+extern __typeof (gdk_events_pending) gdk_events_pending __attribute((alias("IA__gdk_events_pending"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_TEST_UTILS_H__)
+#if IN_FILE(__GDK_TEST_UTILS_X11_C__)
+#undef gdk_test_simulate_button 
+extern __typeof (gdk_test_simulate_button) gdk_test_simulate_button __attribute((alias("IA__gdk_test_simulate_button"), visibility("default")));
+
+#undef gdk_test_simulate_key 
+extern __typeof (gdk_test_simulate_key) gdk_test_simulate_key __attribute((alias("IA__gdk_test_simulate_key"), visibility("default")));
+
+#undef gdk_test_render_sync 
+extern __typeof (gdk_test_render_sync) gdk_test_render_sync __attribute((alias("IA__gdk_test_render_sync"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_EVENTS_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+#undef gdk_event_copy 
+extern __typeof (gdk_event_copy) gdk_event_copy __attribute((alias("IA__gdk_event_copy"), visibility("default")));
+
+#undef gdk_event_free 
+extern __typeof (gdk_event_free) gdk_event_free __attribute((alias("IA__gdk_event_free"), visibility("default")));
+
+#undef gdk_event_get 
+extern __typeof (gdk_event_get) gdk_event_get __attribute((alias("IA__gdk_event_get"), visibility("default")));
+
+#undef gdk_event_get_axis 
+extern __typeof (gdk_event_get_axis) gdk_event_get_axis __attribute((alias("IA__gdk_event_get_axis"), visibility("default")));
+
+#undef gdk_event_get_coords 
+extern __typeof (gdk_event_get_coords) gdk_event_get_coords __attribute((alias("IA__gdk_event_get_coords"), visibility("default")));
+
+#undef gdk_event_get_root_coords 
+extern __typeof (gdk_event_get_root_coords) gdk_event_get_root_coords __attribute((alias("IA__gdk_event_get_root_coords"), visibility("default")));
+
+#undef gdk_event_get_screen 
+extern __typeof (gdk_event_get_screen) gdk_event_get_screen __attribute((alias("IA__gdk_event_get_screen"), visibility("default")));
+
+#undef gdk_event_get_state 
+extern __typeof (gdk_event_get_state) gdk_event_get_state __attribute((alias("IA__gdk_event_get_state"), visibility("default")));
+
+#undef gdk_event_get_time 
+extern __typeof (gdk_event_get_time) gdk_event_get_time __attribute((alias("IA__gdk_event_get_time"), visibility("default")));
+
+#undef gdk_event_get_type 
+extern __typeof (gdk_event_get_type) gdk_event_get_type __attribute((alias("IA__gdk_event_get_type"), visibility("default")));
+
+#undef gdk_event_handler_set 
+extern __typeof (gdk_event_handler_set) gdk_event_handler_set __attribute((alias("IA__gdk_event_handler_set"), visibility("default")));
+
+#undef gdk_event_new 
+extern __typeof (gdk_event_new) gdk_event_new __attribute((alias("IA__gdk_event_new"), visibility("default")));
+
+#undef gdk_event_peek 
+extern __typeof (gdk_event_peek) gdk_event_peek __attribute((alias("IA__gdk_event_peek"), visibility("default")));
+
+#undef gdk_event_put 
+extern __typeof (gdk_event_put) gdk_event_put __attribute((alias("IA__gdk_event_put"), visibility("default")));
+
+#undef gdk_event_request_motions 
+extern __typeof (gdk_event_request_motions) gdk_event_request_motions __attribute((alias("IA__gdk_event_request_motions"), visibility("default")));
+
+#undef gdk_event_set_screen 
+extern __typeof (gdk_event_set_screen) gdk_event_set_screen __attribute((alias("IA__gdk_event_set_screen"), visibility("default")));
+
+#undef gdk_get_show_events 
+extern __typeof (gdk_get_show_events) gdk_get_show_events __attribute((alias("IA__gdk_get_show_events"), visibility("default")));
+
+#undef gdk_set_show_events 
+extern __typeof (gdk_set_show_events) gdk_set_show_events __attribute((alias("IA__gdk_set_show_events"), visibility("default")));
+
+#undef gdk_setting_get 
+extern __typeof (gdk_setting_get) gdk_setting_get __attribute((alias("IA__gdk_setting_get"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_MAIN_X11_C__)
+#undef gdk_error_trap_pop 
+extern __typeof (gdk_error_trap_pop) gdk_error_trap_pop __attribute((alias("IA__gdk_error_trap_pop"), visibility("default")));
+
+#undef gdk_error_trap_push 
+extern __typeof (gdk_error_trap_push) gdk_error_trap_push __attribute((alias("IA__gdk_error_trap_push"), visibility("default")));
+
+#undef gdk_get_display 
+extern __typeof (gdk_get_display) gdk_get_display __attribute((alias("IA__gdk_get_display"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_get_use_xshm 
+extern __typeof (gdk_get_use_xshm) gdk_get_use_xshm __attribute((alias("IA__gdk_get_use_xshm"), visibility("default")));
+
+#undef gdk_set_use_xshm 
+extern __typeof (gdk_set_use_xshm) gdk_set_use_xshm __attribute((alias("IA__gdk_set_use_xshm"), visibility("default")));
+
+#endif
+#undef gdk_keyboard_grab 
+extern __typeof (gdk_keyboard_grab) gdk_keyboard_grab __attribute((alias("IA__gdk_keyboard_grab"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+#undef gdk_beep 
+extern __typeof (gdk_beep) gdk_beep __attribute((alias("IA__gdk_beep"), visibility("default")));
+
+#undef gdk_set_pointer_hooks 
+extern __typeof (gdk_set_pointer_hooks) gdk_set_pointer_hooks __attribute((alias("IA__gdk_set_pointer_hooks"), visibility("default")));
+
+#undef gdk_keyboard_ungrab 
+extern __typeof (gdk_keyboard_ungrab) gdk_keyboard_ungrab __attribute((alias("IA__gdk_keyboard_ungrab"), visibility("default")));
+
+#undef gdk_pointer_is_grabbed 
+extern __typeof (gdk_pointer_is_grabbed) gdk_pointer_is_grabbed __attribute((alias("IA__gdk_pointer_is_grabbed"), visibility("default")));
+
+#undef gdk_pointer_ungrab 
+extern __typeof (gdk_pointer_ungrab) gdk_pointer_ungrab __attribute((alias("IA__gdk_pointer_ungrab"), visibility("default")));
+
+#undef gdk_event_send_client_message 
+extern __typeof (gdk_event_send_client_message) gdk_event_send_client_message __attribute((alias("IA__gdk_event_send_client_message"), visibility("default")));
+
+#undef gdk_event_send_clientmessage_toall 
+extern __typeof (gdk_event_send_clientmessage_toall) gdk_event_send_clientmessage_toall __attribute((alias("IA__gdk_event_send_clientmessage_toall"), visibility("default")));
+
+#undef gdk_keyboard_grab_info_libgtk_only 
+extern __typeof (gdk_keyboard_grab_info_libgtk_only) gdk_keyboard_grab_info_libgtk_only __attribute((alias("IA__gdk_keyboard_grab_info_libgtk_only"), visibility("default")));
+
+#undef gdk_pointer_grab_info_libgtk_only 
+extern __typeof (gdk_pointer_grab_info_libgtk_only) gdk_pointer_grab_info_libgtk_only __attribute((alias("IA__gdk_pointer_grab_info_libgtk_only"), visibility("default")));
+
+#undef gdk_display_pointer_is_grabbed 
+extern __typeof (gdk_display_pointer_is_grabbed) gdk_display_pointer_is_grabbed __attribute((alias("IA__gdk_display_pointer_is_grabbed"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_IM_X11_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_mbstowcs 
+extern __typeof (gdk_mbstowcs) gdk_mbstowcs __attribute((alias("IA__gdk_mbstowcs"), visibility("default")));
+
+#undef gdk_wcstombs 
+extern __typeof (gdk_wcstombs) gdk_wcstombs __attribute((alias("IA__gdk_wcstombs"), visibility("default")));
+
+#endif
+#undef gdk_set_locale 
+extern __typeof (gdk_set_locale) gdk_set_locale __attribute((alias("IA__gdk_set_locale"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+#undef gdk_event_send_client_message_for_display 
+extern __typeof (gdk_event_send_client_message_for_display) gdk_event_send_client_message_for_display __attribute((alias("IA__gdk_event_send_client_message_for_display"), visibility("default")));
+
+#undef gdk_flush 
+extern __typeof (gdk_flush) gdk_flush __attribute((alias("IA__gdk_flush"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_DISPLAY_X11_C__)
+#undef gdk_notify_startup_complete 
+extern __typeof (gdk_notify_startup_complete) gdk_notify_startup_complete __attribute((alias("IA__gdk_notify_startup_complete"), visibility("default")));
+
+#undef gdk_notify_startup_complete_with_id 
+extern __typeof (gdk_notify_startup_complete_with_id) gdk_notify_startup_complete_with_id __attribute((alias("IA__gdk_notify_startup_complete_with_id"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_RECTANGLE_C__)
+#undef gdk_rectangle_get_type 
+extern __typeof (gdk_rectangle_get_type) gdk_rectangle_get_type __attribute((alias("IA__gdk_rectangle_get_type"), visibility("default")));
+
+#undef gdk_rectangle_intersect 
+extern __typeof (gdk_rectangle_intersect) gdk_rectangle_intersect __attribute((alias("IA__gdk_rectangle_intersect"), visibility("default")));
+
+#undef gdk_rectangle_union 
+extern __typeof (gdk_rectangle_union) gdk_rectangle_union __attribute((alias("IA__gdk_rectangle_union"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+#undef gdk_set_double_click_time 
+extern __typeof (gdk_set_double_click_time) gdk_set_double_click_time __attribute((alias("IA__gdk_set_double_click_time"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_C__)
+#undef gdk_add_option_entries_libgtk_only 
+extern __typeof (gdk_add_option_entries_libgtk_only) gdk_add_option_entries_libgtk_only __attribute((alias("IA__gdk_add_option_entries_libgtk_only"), visibility("default")));
+
+#undef gdk_get_display_arg_name 
+extern __typeof (gdk_get_display_arg_name) gdk_get_display_arg_name __attribute((alias("IA__gdk_get_display_arg_name"), visibility("default")));
+
+#undef gdk_get_program_class 
+extern __typeof (gdk_get_program_class) gdk_get_program_class __attribute((alias("IA__gdk_get_program_class"), visibility("default")));
+
+#undef gdk_init 
+extern __typeof (gdk_init) gdk_init __attribute((alias("IA__gdk_init"), visibility("default")));
+
+#undef gdk_init_check 
+extern __typeof (gdk_init_check) gdk_init_check __attribute((alias("IA__gdk_init_check"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_exit 
+extern __typeof (gdk_exit) gdk_exit __attribute((alias("IA__gdk_exit"), visibility("default")));
+
+#endif
+#undef gdk_pre_parse_libgtk_only 
+extern __typeof (gdk_pre_parse_libgtk_only) gdk_pre_parse_libgtk_only __attribute((alias("IA__gdk_pre_parse_libgtk_only"), visibility("default")));
+
+#undef gdk_parse_args 
+extern __typeof (gdk_parse_args) gdk_parse_args __attribute((alias("IA__gdk_parse_args"), visibility("default")));
+
+#undef gdk_set_program_class 
+extern __typeof (gdk_set_program_class) gdk_set_program_class __attribute((alias("IA__gdk_set_program_class"), visibility("default")));
+
+#undef gdk_threads_enter 
+extern __typeof (gdk_threads_enter) gdk_threads_enter __attribute((alias("IA__gdk_threads_enter"), visibility("default")));
+
+#undef gdk_threads_init 
+extern __typeof (gdk_threads_init) gdk_threads_init __attribute((alias("IA__gdk_threads_init"), visibility("default")));
+
+#undef gdk_threads_leave 
+extern __typeof (gdk_threads_leave) gdk_threads_leave __attribute((alias("IA__gdk_threads_leave"), visibility("default")));
+
+#undef gdk_threads_set_lock_functions 
+extern __typeof (gdk_threads_set_lock_functions) gdk_threads_set_lock_functions __attribute((alias("IA__gdk_threads_set_lock_functions"), visibility("default")));
+
+#undef gdk_threads_add_idle 
+extern __typeof (gdk_threads_add_idle) gdk_threads_add_idle __attribute((alias("IA__gdk_threads_add_idle"), visibility("default")));
+
+#undef gdk_threads_add_idle_full 
+extern __typeof (gdk_threads_add_idle_full) gdk_threads_add_idle_full __attribute((alias("IA__gdk_threads_add_idle_full"), visibility("default")));
+
+#undef gdk_threads_add_timeout 
+extern __typeof (gdk_threads_add_timeout) gdk_threads_add_timeout __attribute((alias("IA__gdk_threads_add_timeout"), visibility("default")));
+
+#undef gdk_threads_add_timeout_full 
+extern __typeof (gdk_threads_add_timeout_full) gdk_threads_add_timeout_full __attribute((alias("IA__gdk_threads_add_timeout_full"), visibility("default")));
+
+#undef gdk_threads_add_timeout_seconds 
+extern __typeof (gdk_threads_add_timeout_seconds) gdk_threads_add_timeout_seconds __attribute((alias("IA__gdk_threads_add_timeout_seconds"), visibility("default")));
+
+#undef gdk_threads_add_timeout_seconds_full 
+extern __typeof (gdk_threads_add_timeout_seconds_full) gdk_threads_add_timeout_seconds_full __attribute((alias("IA__gdk_threads_add_timeout_seconds_full"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_input_add 
+extern __typeof (gdk_input_add) gdk_input_add __attribute((alias("IA__gdk_input_add"), visibility("default")));
+
+#undef gdk_input_remove 
+extern __typeof (gdk_input_remove) gdk_input_remove __attribute((alias("IA__gdk_input_remove"), visibility("default")));
+
+#undef gdk_input_add_full 
+extern __typeof (gdk_input_add_full) gdk_input_add_full __attribute((alias("IA__gdk_input_add_full"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_H__)
+#if IN_FILE(__GDK_SCREEN_C__)
+#undef gdk_screen_width 
+extern __typeof (gdk_screen_width) gdk_screen_width __attribute((alias("IA__gdk_screen_width"), visibility("default")));
+
+#undef gdk_screen_width_mm 
+extern __typeof (gdk_screen_width_mm) gdk_screen_width_mm __attribute((alias("IA__gdk_screen_width_mm"), visibility("default")));
+
+#undef gdk_screen_height 
+extern __typeof (gdk_screen_height) gdk_screen_height __attribute((alias("IA__gdk_screen_height"), visibility("default")));
+
+#undef gdk_screen_height_mm 
+extern __typeof (gdk_screen_height_mm) gdk_screen_height_mm __attribute((alias("IA__gdk_screen_height_mm"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PROPERTY_H__)
+#if IN_FILE(__GDK_SELECTION_C__)
+#undef gdk_string_to_compound_text 
+extern __typeof (gdk_string_to_compound_text) gdk_string_to_compound_text __attribute((alias("IA__gdk_string_to_compound_text"), visibility("default")));
+
+#undef gdk_text_property_to_text_list 
+extern __typeof (gdk_text_property_to_text_list) gdk_text_property_to_text_list __attribute((alias("IA__gdk_text_property_to_text_list"), visibility("default")));
+
+#undef gdk_text_property_to_utf8_list 
+extern __typeof (gdk_text_property_to_utf8_list) gdk_text_property_to_utf8_list __attribute((alias("IA__gdk_text_property_to_utf8_list"), visibility("default")));
+
+#undef gdk_utf8_to_compound_text 
+extern __typeof (gdk_utf8_to_compound_text) gdk_utf8_to_compound_text __attribute((alias("IA__gdk_utf8_to_compound_text"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PROPERTY_H__)
+#if IN_FILE(__GDK_PROPERTY_X11_C__)
+#undef gdk_atom_intern 
+extern __typeof (gdk_atom_intern) gdk_atom_intern __attribute((alias("IA__gdk_atom_intern"), visibility("default")));
+
+#undef gdk_atom_intern_static_string 
+extern __typeof (gdk_atom_intern_static_string) gdk_atom_intern_static_string __attribute((alias("IA__gdk_atom_intern_static_string"), visibility("default")));
+
+#undef gdk_atom_name 
+extern __typeof (gdk_atom_name) gdk_atom_name __attribute((alias("IA__gdk_atom_name"), visibility("default")));
+
+#undef gdk_property_change 
+extern __typeof (gdk_property_change) gdk_property_change __attribute((alias("IA__gdk_property_change"), visibility("default")));
+
+#undef gdk_property_delete 
+extern __typeof (gdk_property_delete) gdk_property_delete __attribute((alias("IA__gdk_property_delete"), visibility("default")));
+
+#undef gdk_property_get 
+extern __typeof (gdk_property_get) gdk_property_get __attribute((alias("IA__gdk_property_get"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PROPERTY_H__)
+#if IN_FILE(__GDK_SELECTION_X11_C__)
+#undef gdk_free_compound_text 
+extern __typeof (gdk_free_compound_text) gdk_free_compound_text __attribute((alias("IA__gdk_free_compound_text"), visibility("default")));
+
+#undef gdk_free_text_list 
+extern __typeof (gdk_free_text_list) gdk_free_text_list __attribute((alias("IA__gdk_free_text_list"), visibility("default")));
+
+#undef gdk_string_to_compound_text_for_display 
+extern __typeof (gdk_string_to_compound_text_for_display) gdk_string_to_compound_text_for_display __attribute((alias("IA__gdk_string_to_compound_text_for_display"), visibility("default")));
+
+#undef gdk_text_property_to_text_list_for_display 
+extern __typeof (gdk_text_property_to_text_list_for_display) gdk_text_property_to_text_list_for_display __attribute((alias("IA__gdk_text_property_to_text_list_for_display"), visibility("default")));
+
+#undef gdk_text_property_to_utf8_list_for_display 
+extern __typeof (gdk_text_property_to_utf8_list_for_display) gdk_text_property_to_utf8_list_for_display __attribute((alias("IA__gdk_text_property_to_utf8_list_for_display"), visibility("default")));
+
+#undef gdk_utf8_to_string_target 
+extern __typeof (gdk_utf8_to_string_target) gdk_utf8_to_string_target __attribute((alias("IA__gdk_utf8_to_string_target"), visibility("default")));
+
+#undef gdk_utf8_to_compound_text_for_display 
+extern __typeof (gdk_utf8_to_compound_text_for_display) gdk_utf8_to_compound_text_for_display __attribute((alias("IA__gdk_utf8_to_compound_text_for_display"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_ENUM_TYPES_H__)
+#if IN_FILE(__GDK_ENUM_TYPES_C__)
+#undef gdk_rgb_dither_get_type 
+extern __typeof (gdk_rgb_dither_get_type) gdk_rgb_dither_get_type __attribute((alias("IA__gdk_rgb_dither_get_type"), visibility("default")));
+
+#undef gdk_drag_protocol_get_type 
+extern __typeof (gdk_drag_protocol_get_type) gdk_drag_protocol_get_type __attribute((alias("IA__gdk_drag_protocol_get_type"), visibility("default")));
+
+#undef gdk_input_source_get_type 
+extern __typeof (gdk_input_source_get_type) gdk_input_source_get_type __attribute((alias("IA__gdk_input_source_get_type"), visibility("default")));
+
+#undef gdk_input_condition_get_type 
+extern __typeof (gdk_input_condition_get_type) gdk_input_condition_get_type __attribute((alias("IA__gdk_input_condition_get_type"), visibility("default")));
+
+#undef gdk_input_mode_get_type 
+extern __typeof (gdk_input_mode_get_type) gdk_input_mode_get_type __attribute((alias("IA__gdk_input_mode_get_type"), visibility("default")));
+
+#undef gdk_axis_use_get_type 
+extern __typeof (gdk_axis_use_get_type) gdk_axis_use_get_type __attribute((alias("IA__gdk_axis_use_get_type"), visibility("default")));
+
+#undef gdk_byte_order_get_type 
+extern __typeof (gdk_byte_order_get_type) gdk_byte_order_get_type __attribute((alias("IA__gdk_byte_order_get_type"), visibility("default")));
+
+#undef gdk_cap_style_get_type 
+extern __typeof (gdk_cap_style_get_type) gdk_cap_style_get_type __attribute((alias("IA__gdk_cap_style_get_type"), visibility("default")));
+
+#undef gdk_crossing_mode_get_type 
+extern __typeof (gdk_crossing_mode_get_type) gdk_crossing_mode_get_type __attribute((alias("IA__gdk_crossing_mode_get_type"), visibility("default")));
+
+#undef gdk_extension_mode_get_type 
+extern __typeof (gdk_extension_mode_get_type) gdk_extension_mode_get_type __attribute((alias("IA__gdk_extension_mode_get_type"), visibility("default")));
+
+#undef gdk_event_mask_get_type 
+extern __typeof (gdk_event_mask_get_type) gdk_event_mask_get_type __attribute((alias("IA__gdk_event_mask_get_type"), visibility("default")));
+
+#undef gdk_event_type_get_type 
+extern __typeof (gdk_event_type_get_type) gdk_event_type_get_type __attribute((alias("IA__gdk_event_type_get_type"), visibility("default")));
+
+#undef gdk_fill_get_type 
+extern __typeof (gdk_fill_get_type) gdk_fill_get_type __attribute((alias("IA__gdk_fill_get_type"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_fill_rule_get_type 
+extern __typeof (gdk_fill_rule_get_type) gdk_fill_rule_get_type __attribute((alias("IA__gdk_fill_rule_get_type"), visibility("default")));
+
+#endif
+#undef gdk_filter_return_get_type 
+extern __typeof (gdk_filter_return_get_type) gdk_filter_return_get_type __attribute((alias("IA__gdk_filter_return_get_type"), visibility("default")));
+
+#undef gdk_function_get_type 
+extern __typeof (gdk_function_get_type) gdk_function_get_type __attribute((alias("IA__gdk_function_get_type"), visibility("default")));
+
+#undef gdk_grab_status_get_type 
+extern __typeof (gdk_grab_status_get_type) gdk_grab_status_get_type __attribute((alias("IA__gdk_grab_status_get_type"), visibility("default")));
+
+#undef gdk_gravity_get_type 
+extern __typeof (gdk_gravity_get_type) gdk_gravity_get_type __attribute((alias("IA__gdk_gravity_get_type"), visibility("default")));
+
+#undef gdk_join_style_get_type 
+extern __typeof (gdk_join_style_get_type) gdk_join_style_get_type __attribute((alias("IA__gdk_join_style_get_type"), visibility("default")));
+
+#undef gdk_line_style_get_type 
+extern __typeof (gdk_line_style_get_type) gdk_line_style_get_type __attribute((alias("IA__gdk_line_style_get_type"), visibility("default")));
+
+#undef gdk_modifier_type_get_type 
+extern __typeof (gdk_modifier_type_get_type) gdk_modifier_type_get_type __attribute((alias("IA__gdk_modifier_type_get_type"), visibility("default")));
+
+#undef gdk_notify_type_get_type 
+extern __typeof (gdk_notify_type_get_type) gdk_notify_type_get_type __attribute((alias("IA__gdk_notify_type_get_type"), visibility("default")));
+
+#undef gdk_overlap_type_get_type 
+extern __typeof (gdk_overlap_type_get_type) gdk_overlap_type_get_type __attribute((alias("IA__gdk_overlap_type_get_type"), visibility("default")));
+
+#undef gdk_owner_change_get_type 
+extern __typeof (gdk_owner_change_get_type) gdk_owner_change_get_type __attribute((alias("IA__gdk_owner_change_get_type"), visibility("default")));
+
+#undef gdk_property_state_get_type 
+extern __typeof (gdk_property_state_get_type) gdk_property_state_get_type __attribute((alias("IA__gdk_property_state_get_type"), visibility("default")));
+
+#undef gdk_prop_mode_get_type 
+extern __typeof (gdk_prop_mode_get_type) gdk_prop_mode_get_type __attribute((alias("IA__gdk_prop_mode_get_type"), visibility("default")));
+
+#undef gdk_scroll_direction_get_type 
+extern __typeof (gdk_scroll_direction_get_type) gdk_scroll_direction_get_type __attribute((alias("IA__gdk_scroll_direction_get_type"), visibility("default")));
+
+#undef gdk_setting_action_get_type 
+extern __typeof (gdk_setting_action_get_type) gdk_setting_action_get_type __attribute((alias("IA__gdk_setting_action_get_type"), visibility("default")));
+
+#undef gdk_status_get_type 
+extern __typeof (gdk_status_get_type) gdk_status_get_type __attribute((alias("IA__gdk_status_get_type"), visibility("default")));
+
+#undef gdk_subwindow_mode_get_type 
+extern __typeof (gdk_subwindow_mode_get_type) gdk_subwindow_mode_get_type __attribute((alias("IA__gdk_subwindow_mode_get_type"), visibility("default")));
+
+#undef gdk_visibility_state_get_type 
+extern __typeof (gdk_visibility_state_get_type) gdk_visibility_state_get_type __attribute((alias("IA__gdk_visibility_state_get_type"), visibility("default")));
+
+#undef gdk_wm_decoration_get_type 
+extern __typeof (gdk_wm_decoration_get_type) gdk_wm_decoration_get_type __attribute((alias("IA__gdk_wm_decoration_get_type"), visibility("default")));
+
+#undef gdk_wm_function_get_type 
+extern __typeof (gdk_wm_function_get_type) gdk_wm_function_get_type __attribute((alias("IA__gdk_wm_function_get_type"), visibility("default")));
+
+#undef gdk_font_type_get_type 
+extern __typeof (gdk_font_type_get_type) gdk_font_type_get_type __attribute((alias("IA__gdk_font_type_get_type"), visibility("default")));
+
+#undef gdk_cursor_type_get_type 
+extern __typeof (gdk_cursor_type_get_type) gdk_cursor_type_get_type __attribute((alias("IA__gdk_cursor_type_get_type"), visibility("default")));
+
+#undef gdk_drag_action_get_type 
+extern __typeof (gdk_drag_action_get_type) gdk_drag_action_get_type __attribute((alias("IA__gdk_drag_action_get_type"), visibility("default")));
+
+#undef gdk_gc_values_mask_get_type 
+extern __typeof (gdk_gc_values_mask_get_type) gdk_gc_values_mask_get_type __attribute((alias("IA__gdk_gc_values_mask_get_type"), visibility("default")));
+
+#undef gdk_window_attributes_type_get_type 
+extern __typeof (gdk_window_attributes_type_get_type) gdk_window_attributes_type_get_type __attribute((alias("IA__gdk_window_attributes_type_get_type"), visibility("default")));
+
+#undef gdk_window_class_get_type 
+extern __typeof (gdk_window_class_get_type) gdk_window_class_get_type __attribute((alias("IA__gdk_window_class_get_type"), visibility("default")));
+
+#undef gdk_window_edge_get_type 
+extern __typeof (gdk_window_edge_get_type) gdk_window_edge_get_type __attribute((alias("IA__gdk_window_edge_get_type"), visibility("default")));
+
+#undef gdk_window_hints_get_type 
+extern __typeof (gdk_window_hints_get_type) gdk_window_hints_get_type __attribute((alias("IA__gdk_window_hints_get_type"), visibility("default")));
+
+#undef gdk_window_state_get_type 
+extern __typeof (gdk_window_state_get_type) gdk_window_state_get_type __attribute((alias("IA__gdk_window_state_get_type"), visibility("default")));
+
+#undef gdk_window_type_get_type 
+extern __typeof (gdk_window_type_get_type) gdk_window_type_get_type __attribute((alias("IA__gdk_window_type_get_type"), visibility("default")));
+
+#undef gdk_window_type_hint_get_type 
+extern __typeof (gdk_window_type_hint_get_type) gdk_window_type_hint_get_type __attribute((alias("IA__gdk_window_type_hint_get_type"), visibility("default")));
+
+#undef gdk_image_type_get_type 
+extern __typeof (gdk_image_type_get_type) gdk_image_type_get_type __attribute((alias("IA__gdk_image_type_get_type"), visibility("default")));
+
+#undef gdk_visual_type_get_type 
+extern __typeof (gdk_visual_type_get_type) gdk_visual_type_get_type __attribute((alias("IA__gdk_visual_type_get_type"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_FONT_H__)
+#if IN_FILE(__GDK_FONT_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_font_from_description 
+extern __typeof (gdk_font_from_description) gdk_font_from_description __attribute((alias("IA__gdk_font_from_description"), visibility("default")));
+
+#endif
+#undef gdk_font_get_type 
+extern __typeof (gdk_font_get_type) gdk_font_get_type __attribute((alias("IA__gdk_font_get_type"), visibility("default")));
+
+#undef gdk_font_ref 
+extern __typeof (gdk_font_ref) gdk_font_ref __attribute((alias("IA__gdk_font_ref"), visibility("default")));
+
+#undef gdk_font_unref 
+extern __typeof (gdk_font_unref) gdk_font_unref __attribute((alias("IA__gdk_font_unref"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_font_load 
+extern __typeof (gdk_font_load) gdk_font_load __attribute((alias("IA__gdk_font_load"), visibility("default")));
+
+#undef gdk_string_width 
+extern __typeof (gdk_string_width) gdk_string_width __attribute((alias("IA__gdk_string_width"), visibility("default")));
+
+#undef gdk_char_width 
+extern __typeof (gdk_char_width) gdk_char_width __attribute((alias("IA__gdk_char_width"), visibility("default")));
+
+#undef gdk_char_width_wc 
+extern __typeof (gdk_char_width_wc) gdk_char_width_wc __attribute((alias("IA__gdk_char_width_wc"), visibility("default")));
+
+#undef gdk_string_measure 
+extern __typeof (gdk_string_measure) gdk_string_measure __attribute((alias("IA__gdk_string_measure"), visibility("default")));
+
+#undef gdk_text_measure 
+extern __typeof (gdk_text_measure) gdk_text_measure __attribute((alias("IA__gdk_text_measure"), visibility("default")));
+
+#undef gdk_char_measure 
+extern __typeof (gdk_char_measure) gdk_char_measure __attribute((alias("IA__gdk_char_measure"), visibility("default")));
+
+#undef gdk_string_height 
+extern __typeof (gdk_string_height) gdk_string_height __attribute((alias("IA__gdk_string_height"), visibility("default")));
+
+#undef gdk_text_height 
+extern __typeof (gdk_text_height) gdk_text_height __attribute((alias("IA__gdk_text_height"), visibility("default")));
+
+#undef gdk_char_height 
+extern __typeof (gdk_char_height) gdk_char_height __attribute((alias("IA__gdk_char_height"), visibility("default")));
+
+#undef gdk_string_extents 
+extern __typeof (gdk_string_extents) gdk_string_extents __attribute((alias("IA__gdk_string_extents"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_FONT_H__)
+#if IN_FILE(__GDK_FONT_X11_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_text_extents 
+extern __typeof (gdk_text_extents) gdk_text_extents __attribute((alias("IA__gdk_text_extents"), visibility("default")));
+
+#undef gdk_text_extents_wc 
+extern __typeof (gdk_text_extents_wc) gdk_text_extents_wc __attribute((alias("IA__gdk_text_extents_wc"), visibility("default")));
+
+#undef gdk_text_width 
+extern __typeof (gdk_text_width) gdk_text_width __attribute((alias("IA__gdk_text_width"), visibility("default")));
+
+#undef gdk_text_width_wc 
+extern __typeof (gdk_text_width_wc) gdk_text_width_wc __attribute((alias("IA__gdk_text_width_wc"), visibility("default")));
+
+#undef gdk_font_get_display 
+extern __typeof (gdk_font_get_display) gdk_font_get_display __attribute((alias("IA__gdk_font_get_display"), visibility("default")));
+
+#undef gdk_fontset_load 
+extern __typeof (gdk_fontset_load) gdk_fontset_load __attribute((alias("IA__gdk_fontset_load"), visibility("default")));
+
+#endif
+#undef gdk_font_id 
+extern __typeof (gdk_font_id) gdk_font_id __attribute((alias("IA__gdk_font_id"), visibility("default")));
+
+#undef gdk_font_equal 
+extern __typeof (gdk_font_equal) gdk_font_equal __attribute((alias("IA__gdk_font_equal"), visibility("default")));
+
+#undef gdk_font_load_for_display 
+extern __typeof (gdk_font_load_for_display) gdk_font_load_for_display __attribute((alias("IA__gdk_font_load_for_display"), visibility("default")));
+
+#undef gdk_font_from_description_for_display 
+extern __typeof (gdk_font_from_description_for_display) gdk_font_from_description_for_display __attribute((alias("IA__gdk_font_from_description_for_display"), visibility("default")));
+
+#undef gdk_fontset_load_for_display 
+extern __typeof (gdk_fontset_load_for_display) gdk_fontset_load_for_display __attribute((alias("IA__gdk_fontset_load_for_display"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_CAIRO_H__)
+#if IN_FILE(__GDK_CAIRO_C__)
+#undef gdk_cairo_create 
+extern __typeof (gdk_cairo_create) gdk_cairo_create __attribute((alias("IA__gdk_cairo_create"), visibility("default")));
+
+#undef gdk_cairo_reset_clip 
+extern __typeof (gdk_cairo_reset_clip) gdk_cairo_reset_clip __attribute((alias("IA__gdk_cairo_reset_clip"), visibility("default")));
+
+#undef gdk_cairo_set_source_color 
+extern __typeof (gdk_cairo_set_source_color) gdk_cairo_set_source_color __attribute((alias("IA__gdk_cairo_set_source_color"), visibility("default")));
+
+#undef gdk_cairo_set_source_pixbuf 
+extern __typeof (gdk_cairo_set_source_pixbuf) gdk_cairo_set_source_pixbuf __attribute((alias("IA__gdk_cairo_set_source_pixbuf"), visibility("default")));
+
+#undef gdk_cairo_set_source_pixmap 
+extern __typeof (gdk_cairo_set_source_pixmap) gdk_cairo_set_source_pixmap __attribute((alias("IA__gdk_cairo_set_source_pixmap"), visibility("default")));
+
+#undef gdk_cairo_rectangle 
+extern __typeof (gdk_cairo_rectangle) gdk_cairo_rectangle __attribute((alias("IA__gdk_cairo_rectangle"), visibility("default")));
+
+#undef gdk_cairo_region 
+extern __typeof (gdk_cairo_region) gdk_cairo_region __attribute((alias("IA__gdk_cairo_region"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_COLOR_H__)
+#if IN_FILE(__GDK_COLOR_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_colors_store 
+extern __typeof (gdk_colors_store) gdk_colors_store __attribute((alias("IA__gdk_colors_store"), visibility("default")));
+
+#undef gdk_color_white 
+extern __typeof (gdk_color_white) gdk_color_white __attribute((alias("IA__gdk_color_white"), visibility("default")));
+
+#undef gdk_color_black 
+extern __typeof (gdk_color_black) gdk_color_black __attribute((alias("IA__gdk_color_black"), visibility("default")));
+
+#undef gdk_color_alloc 
+extern __typeof (gdk_color_alloc) gdk_color_alloc __attribute((alias("IA__gdk_color_alloc"), visibility("default")));
+
+#endif
+#undef gdk_color_copy 
+extern __typeof (gdk_color_copy) gdk_color_copy __attribute((alias("IA__gdk_color_copy"), visibility("default")));
+
+#undef gdk_color_equal 
+extern __typeof (gdk_color_equal) gdk_color_equal __attribute((alias("IA__gdk_color_equal"), visibility("default")));
+
+#undef gdk_color_free 
+extern __typeof (gdk_color_free) gdk_color_free __attribute((alias("IA__gdk_color_free"), visibility("default")));
+
+#undef gdk_color_get_type 
+extern __typeof (gdk_color_get_type) gdk_color_get_type __attribute((alias("IA__gdk_color_get_type"), visibility("default")));
+
+#undef gdk_color_hash 
+extern __typeof (gdk_color_hash) gdk_color_hash __attribute((alias("IA__gdk_color_hash"), visibility("default")));
+
+#undef gdk_colormap_alloc_color 
+extern __typeof (gdk_colormap_alloc_color) gdk_colormap_alloc_color __attribute((alias("IA__gdk_colormap_alloc_color"), visibility("default")));
+
+#undef gdk_colormap_get_system 
+extern __typeof (gdk_colormap_get_system) gdk_colormap_get_system __attribute((alias("IA__gdk_colormap_get_system"), visibility("default")));
+
+#undef gdk_colormap_get_visual 
+extern __typeof (gdk_colormap_get_visual) gdk_colormap_get_visual __attribute((alias("IA__gdk_colormap_get_visual"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_colormap_ref 
+extern __typeof (gdk_colormap_ref) gdk_colormap_ref __attribute((alias("IA__gdk_colormap_ref"), visibility("default")));
+
+#undef gdk_colormap_unref 
+extern __typeof (gdk_colormap_unref) gdk_colormap_unref __attribute((alias("IA__gdk_colormap_unref"), visibility("default")));
+
+#endif
+#undef gdk_color_parse 
+extern __typeof (gdk_color_parse) gdk_color_parse __attribute((alias("IA__gdk_color_parse"), visibility("default")));
+
+#undef gdk_color_to_string 
+extern __typeof (gdk_color_to_string) gdk_color_to_string __attribute((alias("IA__gdk_color_to_string"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_COLOR_H__)
+#if IN_FILE(__GDK_COLOR_X11_C__)
+#undef gdk_colormap_new 
+extern __typeof (gdk_colormap_new) gdk_colormap_new __attribute((alias("IA__gdk_colormap_new"), visibility("default")));
+
+#undef gdk_colormap_get_type 
+extern __typeof (gdk_colormap_get_type) gdk_colormap_get_type __attribute((alias("IA__gdk_colormap_get_type"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_colormap_change 
+extern __typeof (gdk_colormap_change) gdk_colormap_change __attribute((alias("IA__gdk_colormap_change"), visibility("default")));
+
+#undef gdk_colors_alloc 
+extern __typeof (gdk_colors_alloc) gdk_colors_alloc __attribute((alias("IA__gdk_colors_alloc"), visibility("default")));
+
+#undef gdk_colors_free 
+extern __typeof (gdk_colors_free) gdk_colors_free __attribute((alias("IA__gdk_colors_free"), visibility("default")));
+
+#undef gdk_colormap_get_system_size 
+extern __typeof (gdk_colormap_get_system_size) gdk_colormap_get_system_size __attribute((alias("IA__gdk_colormap_get_system_size"), visibility("default")));
+
+#undef gdk_color_change 
+extern __typeof (gdk_color_change) gdk_color_change __attribute((alias("IA__gdk_color_change"), visibility("default")));
+
+#endif
+#undef gdk_colormap_alloc_colors 
+extern __typeof (gdk_colormap_alloc_colors) gdk_colormap_alloc_colors __attribute((alias("IA__gdk_colormap_alloc_colors"), visibility("default")));
+
+#undef gdk_colormap_free_colors 
+extern __typeof (gdk_colormap_free_colors) gdk_colormap_free_colors __attribute((alias("IA__gdk_colormap_free_colors"), visibility("default")));
+
+#undef gdk_colormap_query_color 
+extern __typeof (gdk_colormap_query_color) gdk_colormap_query_color __attribute((alias("IA__gdk_colormap_query_color"), visibility("default")));
+
+#undef gdk_colormap_get_screen 
+extern __typeof (gdk_colormap_get_screen) gdk_colormap_get_screen __attribute((alias("IA__gdk_colormap_get_screen"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_CURSOR_H__)
+#if IN_FILE(__GDK_CURSOR_C__)
+#undef gdk_cursor_get_type 
+extern __typeof (gdk_cursor_get_type) gdk_cursor_get_type __attribute((alias("IA__gdk_cursor_get_type"), visibility("default")));
+
+#undef gdk_cursor_get_cursor_type 
+extern __typeof (gdk_cursor_get_cursor_type) gdk_cursor_get_cursor_type __attribute((alias("IA__gdk_cursor_get_cursor_type"), visibility("default")));
+
+#undef gdk_cursor_new 
+extern __typeof (gdk_cursor_new) gdk_cursor_new __attribute((alias("IA__gdk_cursor_new"), visibility("default")));
+
+#undef gdk_cursor_ref 
+extern __typeof (gdk_cursor_ref) gdk_cursor_ref __attribute((alias("IA__gdk_cursor_ref"), visibility("default")));
+
+#undef gdk_cursor_unref 
+extern __typeof (gdk_cursor_unref) gdk_cursor_unref __attribute((alias("IA__gdk_cursor_unref"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_CURSOR_H__)
+#if IN_FILE(__GDK_CURSOR_X11_C__)
+#undef gdk_cursor_get_display 
+extern __typeof (gdk_cursor_get_display) gdk_cursor_get_display __attribute((alias("IA__gdk_cursor_get_display"), visibility("default")));
+
+#undef gdk_cursor_new_for_display 
+extern __typeof (gdk_cursor_new_for_display) gdk_cursor_new_for_display __attribute((alias("IA__gdk_cursor_new_for_display"), visibility("default")));
+
+#undef gdk_cursor_new_from_pixbuf 
+extern __typeof (gdk_cursor_new_from_pixbuf) gdk_cursor_new_from_pixbuf __attribute((alias("IA__gdk_cursor_new_from_pixbuf"), visibility("default")));
+
+#undef gdk_cursor_new_from_pixmap 
+extern __typeof (gdk_cursor_new_from_pixmap) gdk_cursor_new_from_pixmap __attribute((alias("IA__gdk_cursor_new_from_pixmap"), visibility("default")));
+
+#undef gdk_cursor_new_from_name 
+extern __typeof (gdk_cursor_new_from_name) gdk_cursor_new_from_name __attribute((alias("IA__gdk_cursor_new_from_name"), visibility("default")));
+
+#undef gdk_cursor_get_image 
+extern __typeof (gdk_cursor_get_image) gdk_cursor_get_image __attribute((alias("IA__gdk_cursor_get_image"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_C__)
+#undef gdk_device_free_history 
+extern __typeof (gdk_device_free_history) gdk_device_free_history __attribute((alias("IA__gdk_device_free_history"), visibility("default")));
+
+#undef gdk_device_get_axis 
+extern __typeof (gdk_device_get_axis) gdk_device_get_axis __attribute((alias("IA__gdk_device_get_axis"), visibility("default")));
+
+#undef gdk_device_get_axis_use 
+extern __typeof (gdk_device_get_axis_use) gdk_device_get_axis_use __attribute((alias("IA__gdk_device_get_axis_use"), visibility("default")));
+
+#undef gdk_device_get_has_cursor 
+extern __typeof (gdk_device_get_has_cursor) gdk_device_get_has_cursor __attribute((alias("IA__gdk_device_get_has_cursor"), visibility("default")));
+
+#undef gdk_device_get_history 
+extern __typeof (gdk_device_get_history) gdk_device_get_history __attribute((alias("IA__gdk_device_get_history"), visibility("default")));
+
+#undef gdk_device_get_key 
+extern __typeof (gdk_device_get_key) gdk_device_get_key __attribute((alias("IA__gdk_device_get_key"), visibility("default")));
+
+#undef gdk_device_get_mode 
+extern __typeof (gdk_device_get_mode) gdk_device_get_mode __attribute((alias("IA__gdk_device_get_mode"), visibility("default")));
+
+#undef gdk_device_get_name 
+extern __typeof (gdk_device_get_name) gdk_device_get_name __attribute((alias("IA__gdk_device_get_name"), visibility("default")));
+
+#undef gdk_device_get_n_axes 
+extern __typeof (gdk_device_get_n_axes) gdk_device_get_n_axes __attribute((alias("IA__gdk_device_get_n_axes"), visibility("default")));
+
+#undef gdk_device_get_source 
+extern __typeof (gdk_device_get_source) gdk_device_get_source __attribute((alias("IA__gdk_device_get_source"), visibility("default")));
+
+#undef gdk_device_get_type 
+extern __typeof (gdk_device_get_type) gdk_device_get_type __attribute((alias("IA__gdk_device_get_type"), visibility("default")));
+
+#undef gdk_device_set_axis_use 
+extern __typeof (gdk_device_set_axis_use) gdk_device_set_axis_use __attribute((alias("IA__gdk_device_set_axis_use"), visibility("default")));
+
+#undef gdk_device_set_key 
+extern __typeof (gdk_device_set_key) gdk_device_set_key __attribute((alias("IA__gdk_device_set_key"), visibility("default")));
+
+#undef gdk_device_set_source 
+extern __typeof (gdk_device_set_source) gdk_device_set_source __attribute((alias("IA__gdk_device_set_source"), visibility("default")));
+
+#undef gdk_devices_list 
+extern __typeof (gdk_devices_list) gdk_devices_list __attribute((alias("IA__gdk_devices_list"), visibility("default")));
+
+#undef gdk_input_set_extension_events 
+extern __typeof (gdk_input_set_extension_events) gdk_input_set_extension_events __attribute((alias("IA__gdk_input_set_extension_events"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+#undef gdk_device_get_core_pointer 
+extern __typeof (gdk_device_get_core_pointer) gdk_device_get_core_pointer __attribute((alias("IA__gdk_device_get_core_pointer"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_X11_C__)
+#undef gdk_device_get_state 
+extern __typeof (gdk_device_get_state) gdk_device_get_state __attribute((alias("IA__gdk_device_get_state"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_XFREE_C__)
+#undef gdk_device_set_mode 
+extern __typeof (gdk_device_set_mode) gdk_device_set_mode __attribute((alias("IA__gdk_device_set_mode"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INPUT_H__)
+#if IN_FILE(__GDK_INPUT_NONE_C__)
+#undef gdk_device_get_state 
+extern __typeof (gdk_device_get_state) gdk_device_get_state __attribute((alias("IA__gdk_device_get_state"), visibility("default")));
+
+#undef gdk_device_set_mode 
+extern __typeof (gdk_device_set_mode) gdk_device_set_mode __attribute((alias("IA__gdk_device_set_mode"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+#undef gdk_display_add_client_message_filter 
+extern __typeof (gdk_display_add_client_message_filter) gdk_display_add_client_message_filter __attribute((alias("IA__gdk_display_add_client_message_filter"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+#undef gdk_display_close 
+extern __typeof (gdk_display_close) gdk_display_close __attribute((alias("IA__gdk_display_close"), visibility("default")));
+
+#undef gdk_display_get_core_pointer 
+extern __typeof (gdk_display_get_core_pointer) gdk_display_get_core_pointer __attribute((alias("IA__gdk_display_get_core_pointer"), visibility("default")));
+
+#undef gdk_display_get_event 
+extern __typeof (gdk_display_get_event) gdk_display_get_event __attribute((alias("IA__gdk_display_get_event"), visibility("default")));
+
+#undef gdk_display_get_pointer 
+extern __typeof (gdk_display_get_pointer) gdk_display_get_pointer __attribute((alias("IA__gdk_display_get_pointer"), visibility("default")));
+
+#undef gdk_display_get_type 
+extern __typeof (gdk_display_get_type) gdk_display_get_type __attribute((alias("IA__gdk_display_get_type"), visibility("default")));
+
+#undef gdk_display_get_window_at_pointer 
+extern __typeof (gdk_display_get_window_at_pointer) gdk_display_get_window_at_pointer __attribute((alias("IA__gdk_display_get_window_at_pointer"), visibility("default")));
+
+#undef gdk_display_peek_event 
+extern __typeof (gdk_display_peek_event) gdk_display_peek_event __attribute((alias("IA__gdk_display_peek_event"), visibility("default")));
+
+#undef gdk_display_put_event 
+extern __typeof (gdk_display_put_event) gdk_display_put_event __attribute((alias("IA__gdk_display_put_event"), visibility("default")));
+
+#undef gdk_display_set_pointer_hooks 
+extern __typeof (gdk_display_set_pointer_hooks) gdk_display_set_pointer_hooks __attribute((alias("IA__gdk_display_set_pointer_hooks"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+#undef gdk_display_warp_pointer 
+extern __typeof (gdk_display_warp_pointer) gdk_display_warp_pointer __attribute((alias("IA__gdk_display_warp_pointer"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_DISPLAY_MANAGER_C__)
+#undef gdk_display_get_default 
+extern __typeof (gdk_display_get_default) gdk_display_get_default __attribute((alias("IA__gdk_display_get_default"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_CURSOR_X11_C__)
+#undef gdk_display_get_default_cursor_size 
+extern __typeof (gdk_display_get_default_cursor_size) gdk_display_get_default_cursor_size __attribute((alias("IA__gdk_display_get_default_cursor_size"), visibility("default")));
+
+#undef gdk_display_get_maximal_cursor_size 
+extern __typeof (gdk_display_get_maximal_cursor_size) gdk_display_get_maximal_cursor_size __attribute((alias("IA__gdk_display_get_maximal_cursor_size"), visibility("default")));
+
+#undef gdk_display_supports_cursor_alpha 
+extern __typeof (gdk_display_supports_cursor_alpha) gdk_display_supports_cursor_alpha __attribute((alias("IA__gdk_display_supports_cursor_alpha"), visibility("default")));
+
+#undef gdk_display_supports_cursor_color 
+extern __typeof (gdk_display_supports_cursor_color) gdk_display_supports_cursor_color __attribute((alias("IA__gdk_display_supports_cursor_color"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_DISPLAY_X11_C__)
+#undef gdk_display_beep 
+extern __typeof (gdk_display_beep) gdk_display_beep __attribute((alias("IA__gdk_display_beep"), visibility("default")));
+
+#undef gdk_display_sync 
+extern __typeof (gdk_display_sync) gdk_display_sync __attribute((alias("IA__gdk_display_sync"), visibility("default")));
+
+#undef gdk_display_flush 
+extern __typeof (gdk_display_flush) gdk_display_flush __attribute((alias("IA__gdk_display_flush"), visibility("default")));
+
+#undef gdk_display_get_default_group 
+extern __typeof (gdk_display_get_default_group) gdk_display_get_default_group __attribute((alias("IA__gdk_display_get_default_group"), visibility("default")));
+
+#undef gdk_display_get_default_screen 
+extern __typeof (gdk_display_get_default_screen) gdk_display_get_default_screen __attribute((alias("IA__gdk_display_get_default_screen"), visibility("default")));
+
+#undef gdk_display_get_name 
+extern __typeof (gdk_display_get_name) gdk_display_get_name __attribute((alias("IA__gdk_display_get_name"), visibility("default")));
+
+#undef gdk_display_get_n_screens 
+extern __typeof (gdk_display_get_n_screens) gdk_display_get_n_screens __attribute((alias("IA__gdk_display_get_n_screens"), visibility("default")));
+
+#undef gdk_display_get_screen 
+extern __typeof (gdk_display_get_screen) gdk_display_get_screen __attribute((alias("IA__gdk_display_get_screen"), visibility("default")));
+
+#undef gdk_display_pointer_ungrab 
+extern __typeof (gdk_display_pointer_ungrab) gdk_display_pointer_ungrab __attribute((alias("IA__gdk_display_pointer_ungrab"), visibility("default")));
+
+#undef gdk_display_keyboard_ungrab 
+extern __typeof (gdk_display_keyboard_ungrab) gdk_display_keyboard_ungrab __attribute((alias("IA__gdk_display_keyboard_ungrab"), visibility("default")));
+
+#undef gdk_display_open 
+extern __typeof (gdk_display_open) gdk_display_open __attribute((alias("IA__gdk_display_open"), visibility("default")));
+
+#undef gdk_display_request_selection_notification 
+extern __typeof (gdk_display_request_selection_notification) gdk_display_request_selection_notification __attribute((alias("IA__gdk_display_request_selection_notification"), visibility("default")));
+
+#undef gdk_display_store_clipboard 
+extern __typeof (gdk_display_store_clipboard) gdk_display_store_clipboard __attribute((alias("IA__gdk_display_store_clipboard"), visibility("default")));
+
+#undef gdk_display_supports_clipboard_persistence 
+extern __typeof (gdk_display_supports_clipboard_persistence) gdk_display_supports_clipboard_persistence __attribute((alias("IA__gdk_display_supports_clipboard_persistence"), visibility("default")));
+
+#undef gdk_display_supports_selection_notification 
+extern __typeof (gdk_display_supports_selection_notification) gdk_display_supports_selection_notification __attribute((alias("IA__gdk_display_supports_selection_notification"), visibility("default")));
+
+#undef gdk_display_supports_shapes 
+extern __typeof (gdk_display_supports_shapes) gdk_display_supports_shapes __attribute((alias("IA__gdk_display_supports_shapes"), visibility("default")));
+
+#undef gdk_display_supports_input_shapes 
+extern __typeof (gdk_display_supports_input_shapes) gdk_display_supports_input_shapes __attribute((alias("IA__gdk_display_supports_input_shapes"), visibility("default")));
+
+#undef gdk_display_supports_composite 
+extern __typeof (gdk_display_supports_composite) gdk_display_supports_composite __attribute((alias("IA__gdk_display_supports_composite"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_INPUT_C__)
+#undef gdk_display_list_devices 
+extern __typeof (gdk_display_list_devices) gdk_display_list_devices __attribute((alias("IA__gdk_display_list_devices"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_C__)
+#undef gdk_display_open_default_libgtk_only 
+extern __typeof (gdk_display_open_default_libgtk_only) gdk_display_open_default_libgtk_only __attribute((alias("IA__gdk_display_open_default_libgtk_only"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+#undef gdk_display_set_double_click_distance 
+extern __typeof (gdk_display_set_double_click_distance) gdk_display_set_double_click_distance __attribute((alias("IA__gdk_display_set_double_click_distance"), visibility("default")));
+
+#undef gdk_display_set_double_click_time 
+extern __typeof (gdk_display_set_double_click_time) gdk_display_set_double_click_time __attribute((alias("IA__gdk_display_set_double_click_time"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DISPLAY_MANAGER_H__)
+#if IN_FILE(__GDK_DISPLAY_MANAGER_C__)
+#undef gdk_display_manager_get 
+extern __typeof (gdk_display_manager_get) gdk_display_manager_get __attribute((alias("IA__gdk_display_manager_get"), visibility("default")));
+
+#undef gdk_display_manager_get_type 
+extern __typeof (gdk_display_manager_get_type) gdk_display_manager_get_type __attribute((alias("IA__gdk_display_manager_get_type"), visibility("default")));
+
+#undef gdk_display_manager_list_displays 
+extern __typeof (gdk_display_manager_list_displays) gdk_display_manager_list_displays __attribute((alias("IA__gdk_display_manager_list_displays"), visibility("default")));
+
+#undef gdk_display_manager_set_default_display 
+extern __typeof (gdk_display_manager_set_default_display) gdk_display_manager_set_default_display __attribute((alias("IA__gdk_display_manager_set_default_display"), visibility("default")));
+
+#undef gdk_display_manager_get_default_display 
+extern __typeof (gdk_display_manager_get_default_display) gdk_display_manager_get_default_display __attribute((alias("IA__gdk_display_manager_get_default_display"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DND_H__)
+#if IN_FILE(__GDK_DND_X11_C__)
+#undef gdk_drag_abort 
+extern __typeof (gdk_drag_abort) gdk_drag_abort __attribute((alias("IA__gdk_drag_abort"), visibility("default")));
+
+#undef gdk_drag_begin 
+extern __typeof (gdk_drag_begin) gdk_drag_begin __attribute((alias("IA__gdk_drag_begin"), visibility("default")));
+
+#undef gdk_drag_context_get_type 
+extern __typeof (gdk_drag_context_get_type) gdk_drag_context_get_type __attribute((alias("IA__gdk_drag_context_get_type"), visibility("default")));
+
+#undef gdk_drag_context_new 
+extern __typeof (gdk_drag_context_new) gdk_drag_context_new __attribute((alias("IA__gdk_drag_context_new"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_drag_context_ref 
+extern __typeof (gdk_drag_context_ref) gdk_drag_context_ref __attribute((alias("IA__gdk_drag_context_ref"), visibility("default")));
+
+#undef gdk_drag_context_unref 
+extern __typeof (gdk_drag_context_unref) gdk_drag_context_unref __attribute((alias("IA__gdk_drag_context_unref"), visibility("default")));
+
+#endif
+#undef gdk_drag_drop 
+extern __typeof (gdk_drag_drop) gdk_drag_drop __attribute((alias("IA__gdk_drag_drop"), visibility("default")));
+
+#undef gdk_drag_drop_succeeded 
+extern __typeof (gdk_drag_drop_succeeded) gdk_drag_drop_succeeded __attribute((alias("IA__gdk_drag_drop_succeeded"), visibility("default")));
+
+#undef gdk_drag_find_window_for_screen 
+extern __typeof (gdk_drag_find_window_for_screen) gdk_drag_find_window_for_screen __attribute((alias("IA__gdk_drag_find_window_for_screen"), visibility("default")));
+
+#undef gdk_drag_get_protocol_for_display 
+extern __typeof (gdk_drag_get_protocol_for_display) gdk_drag_get_protocol_for_display __attribute((alias("IA__gdk_drag_get_protocol_for_display"), visibility("default")));
+
+#undef gdk_drag_get_selection 
+extern __typeof (gdk_drag_get_selection) gdk_drag_get_selection __attribute((alias("IA__gdk_drag_get_selection"), visibility("default")));
+
+#undef gdk_drag_motion 
+extern __typeof (gdk_drag_motion) gdk_drag_motion __attribute((alias("IA__gdk_drag_motion"), visibility("default")));
+
+#undef gdk_drag_status 
+extern __typeof (gdk_drag_status) gdk_drag_status __attribute((alias("IA__gdk_drag_status"), visibility("default")));
+
+#undef gdk_drop_finish 
+extern __typeof (gdk_drop_finish) gdk_drop_finish __attribute((alias("IA__gdk_drop_finish"), visibility("default")));
+
+#undef gdk_drop_reply 
+extern __typeof (gdk_drop_reply) gdk_drop_reply __attribute((alias("IA__gdk_drop_reply"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DND_H__)
+#if IN_FILE(__GDK_DND_C__)
+#undef gdk_drag_context_get_actions 
+extern __typeof (gdk_drag_context_get_actions) gdk_drag_context_get_actions __attribute((alias("IA__gdk_drag_context_get_actions"), visibility("default")));
+
+#undef gdk_drag_context_get_selected_action 
+extern __typeof (gdk_drag_context_get_selected_action) gdk_drag_context_get_selected_action __attribute((alias("IA__gdk_drag_context_get_selected_action"), visibility("default")));
+
+#undef gdk_drag_context_get_suggested_action 
+extern __typeof (gdk_drag_context_get_suggested_action) gdk_drag_context_get_suggested_action __attribute((alias("IA__gdk_drag_context_get_suggested_action"), visibility("default")));
+
+#undef gdk_drag_context_list_targets 
+extern __typeof (gdk_drag_context_list_targets) gdk_drag_context_list_targets __attribute((alias("IA__gdk_drag_context_list_targets"), visibility("default")));
+
+#undef gdk_drag_context_get_source_window 
+extern __typeof (gdk_drag_context_get_source_window) gdk_drag_context_get_source_window __attribute((alias("IA__gdk_drag_context_get_source_window"), visibility("default")));
+
+#undef gdk_drag_find_window 
+extern __typeof (gdk_drag_find_window) gdk_drag_find_window __attribute((alias("IA__gdk_drag_find_window"), visibility("default")));
+
+#undef gdk_drag_get_protocol 
+extern __typeof (gdk_drag_get_protocol) gdk_drag_get_protocol __attribute((alias("IA__gdk_drag_get_protocol"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DRAWABLE_H__)
+#if IN_FILE(__GDK_DRAW_C__)
+#undef gdk_drawable_copy_to_image 
+extern __typeof (gdk_drawable_copy_to_image) gdk_drawable_copy_to_image __attribute((alias("IA__gdk_drawable_copy_to_image"), visibility("default")));
+
+#undef gdk_drawable_get_clip_region 
+extern __typeof (gdk_drawable_get_clip_region) gdk_drawable_get_clip_region __attribute((alias("IA__gdk_drawable_get_clip_region"), visibility("default")));
+
+#undef gdk_drawable_get_colormap 
+extern __typeof (gdk_drawable_get_colormap) gdk_drawable_get_colormap __attribute((alias("IA__gdk_drawable_get_colormap"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_drawable_get_data 
+extern __typeof (gdk_drawable_get_data) gdk_drawable_get_data __attribute((alias("IA__gdk_drawable_get_data"), visibility("default")));
+
+#undef gdk_drawable_set_data 
+extern __typeof (gdk_drawable_set_data) gdk_drawable_set_data __attribute((alias("IA__gdk_drawable_set_data"), visibility("default")));
+
+#undef gdk_drawable_ref 
+extern __typeof (gdk_drawable_ref) gdk_drawable_ref __attribute((alias("IA__gdk_drawable_ref"), visibility("default")));
+
+#undef gdk_drawable_unref 
+extern __typeof (gdk_drawable_unref) gdk_drawable_unref __attribute((alias("IA__gdk_drawable_unref"), visibility("default")));
+
+#undef gdk_draw_string 
+extern __typeof (gdk_draw_string) gdk_draw_string __attribute((alias("IA__gdk_draw_string"), visibility("default")));
+
+#undef gdk_draw_text 
+extern __typeof (gdk_draw_text) gdk_draw_text __attribute((alias("IA__gdk_draw_text"), visibility("default")));
+
+#undef gdk_draw_text_wc 
+extern __typeof (gdk_draw_text_wc) gdk_draw_text_wc __attribute((alias("IA__gdk_draw_text_wc"), visibility("default")));
+
+#endif
+#undef gdk_drawable_get_depth 
+extern __typeof (gdk_drawable_get_depth) gdk_drawable_get_depth __attribute((alias("IA__gdk_drawable_get_depth"), visibility("default")));
+
+#undef gdk_drawable_get_display 
+extern __typeof (gdk_drawable_get_display) gdk_drawable_get_display __attribute((alias("IA__gdk_drawable_get_display"), visibility("default")));
+
+#undef gdk_drawable_get_image 
+extern __typeof (gdk_drawable_get_image) gdk_drawable_get_image __attribute((alias("IA__gdk_drawable_get_image"), visibility("default")));
+
+#undef gdk_drawable_get_screen 
+extern __typeof (gdk_drawable_get_screen) gdk_drawable_get_screen __attribute((alias("IA__gdk_drawable_get_screen"), visibility("default")));
+
+#undef gdk_drawable_get_size 
+extern __typeof (gdk_drawable_get_size) gdk_drawable_get_size __attribute((alias("IA__gdk_drawable_get_size"), visibility("default")));
+
+#undef gdk_drawable_get_type 
+extern __typeof (gdk_drawable_get_type) gdk_drawable_get_type __attribute((alias("IA__gdk_drawable_get_type"), visibility("default")));
+
+#undef gdk_drawable_get_visible_region 
+extern __typeof (gdk_drawable_get_visible_region) gdk_drawable_get_visible_region __attribute((alias("IA__gdk_drawable_get_visible_region"), visibility("default")));
+
+#undef gdk_drawable_get_visual 
+extern __typeof (gdk_drawable_get_visual) gdk_drawable_get_visual __attribute((alias("IA__gdk_drawable_get_visual"), visibility("default")));
+
+#undef gdk_drawable_set_colormap 
+extern __typeof (gdk_drawable_set_colormap) gdk_drawable_set_colormap __attribute((alias("IA__gdk_drawable_set_colormap"), visibility("default")));
+
+#undef gdk_draw_arc 
+extern __typeof (gdk_draw_arc) gdk_draw_arc __attribute((alias("IA__gdk_draw_arc"), visibility("default")));
+
+#undef gdk_draw_drawable 
+extern __typeof (gdk_draw_drawable) gdk_draw_drawable __attribute((alias("IA__gdk_draw_drawable"), visibility("default")));
+
+#undef gdk_draw_glyphs 
+extern __typeof (gdk_draw_glyphs) gdk_draw_glyphs __attribute((alias("IA__gdk_draw_glyphs"), visibility("default")));
+
+#undef gdk_draw_glyphs_transformed 
+extern __typeof (gdk_draw_glyphs_transformed) gdk_draw_glyphs_transformed __attribute((alias("IA__gdk_draw_glyphs_transformed"), visibility("default")));
+
+#undef gdk_draw_image 
+extern __typeof (gdk_draw_image) gdk_draw_image __attribute((alias("IA__gdk_draw_image"), visibility("default")));
+
+#undef gdk_draw_line 
+extern __typeof (gdk_draw_line) gdk_draw_line __attribute((alias("IA__gdk_draw_line"), visibility("default")));
+
+#undef gdk_draw_lines 
+extern __typeof (gdk_draw_lines) gdk_draw_lines __attribute((alias("IA__gdk_draw_lines"), visibility("default")));
+
+#undef gdk_draw_pixbuf 
+extern __typeof (gdk_draw_pixbuf) gdk_draw_pixbuf __attribute((alias("IA__gdk_draw_pixbuf"), visibility("default")));
+
+#undef gdk_draw_point 
+extern __typeof (gdk_draw_point) gdk_draw_point __attribute((alias("IA__gdk_draw_point"), visibility("default")));
+
+#undef gdk_draw_points 
+extern __typeof (gdk_draw_points) gdk_draw_points __attribute((alias("IA__gdk_draw_points"), visibility("default")));
+
+#undef gdk_draw_polygon 
+extern __typeof (gdk_draw_polygon) gdk_draw_polygon __attribute((alias("IA__gdk_draw_polygon"), visibility("default")));
+
+#undef gdk_draw_rectangle 
+extern __typeof (gdk_draw_rectangle) gdk_draw_rectangle __attribute((alias("IA__gdk_draw_rectangle"), visibility("default")));
+
+#undef gdk_draw_segments 
+extern __typeof (gdk_draw_segments) gdk_draw_segments __attribute((alias("IA__gdk_draw_segments"), visibility("default")));
+
+#undef gdk_draw_trapezoids 
+extern __typeof (gdk_draw_trapezoids) gdk_draw_trapezoids __attribute((alias("IA__gdk_draw_trapezoids"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_DRAWABLE_H__)
+#if IN_FILE(__GDK_PANGO_C__)
+#undef gdk_draw_layout 
+extern __typeof (gdk_draw_layout) gdk_draw_layout __attribute((alias("IA__gdk_draw_layout"), visibility("default")));
+
+#undef gdk_draw_layout_line 
+extern __typeof (gdk_draw_layout_line) gdk_draw_layout_line __attribute((alias("IA__gdk_draw_layout_line"), visibility("default")));
+
+#undef gdk_draw_layout_line_with_colors 
+extern __typeof (gdk_draw_layout_line_with_colors) gdk_draw_layout_line_with_colors __attribute((alias("IA__gdk_draw_layout_line_with_colors"), visibility("default")));
+
+#undef gdk_draw_layout_with_colors 
+extern __typeof (gdk_draw_layout_with_colors) gdk_draw_layout_with_colors __attribute((alias("IA__gdk_draw_layout_with_colors"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_GC_H__)
+#if IN_FILE(__GDK_GC_C__)
+#undef gdk_gc_new 
+extern __typeof (gdk_gc_new) gdk_gc_new __attribute((alias("IA__gdk_gc_new"), visibility("default")));
+
+#undef gdk_gc_get_type 
+extern __typeof (gdk_gc_get_type) gdk_gc_get_type __attribute((alias("IA__gdk_gc_get_type"), visibility("default")));
+
+#undef gdk_gc_new_with_values 
+extern __typeof (gdk_gc_new_with_values) gdk_gc_new_with_values __attribute((alias("IA__gdk_gc_new_with_values"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_gc_ref 
+extern __typeof (gdk_gc_ref) gdk_gc_ref __attribute((alias("IA__gdk_gc_ref"), visibility("default")));
+
+#undef gdk_gc_unref 
+extern __typeof (gdk_gc_unref) gdk_gc_unref __attribute((alias("IA__gdk_gc_unref"), visibility("default")));
+
+#undef gdk_gc_set_font 
+extern __typeof (gdk_gc_set_font) gdk_gc_set_font __attribute((alias("IA__gdk_gc_set_font"), visibility("default")));
+
+#endif
+#undef gdk_gc_get_values 
+extern __typeof (gdk_gc_get_values) gdk_gc_get_values __attribute((alias("IA__gdk_gc_get_values"), visibility("default")));
+
+#undef gdk_gc_set_values 
+extern __typeof (gdk_gc_set_values) gdk_gc_set_values __attribute((alias("IA__gdk_gc_set_values"), visibility("default")));
+
+#undef gdk_gc_set_foreground 
+extern __typeof (gdk_gc_set_foreground) gdk_gc_set_foreground __attribute((alias("IA__gdk_gc_set_foreground"), visibility("default")));
+
+#undef gdk_gc_set_background 
+extern __typeof (gdk_gc_set_background) gdk_gc_set_background __attribute((alias("IA__gdk_gc_set_background"), visibility("default")));
+
+#undef gdk_gc_set_function 
+extern __typeof (gdk_gc_set_function) gdk_gc_set_function __attribute((alias("IA__gdk_gc_set_function"), visibility("default")));
+
+#undef gdk_gc_set_fill 
+extern __typeof (gdk_gc_set_fill) gdk_gc_set_fill __attribute((alias("IA__gdk_gc_set_fill"), visibility("default")));
+
+#undef gdk_gc_set_tile 
+extern __typeof (gdk_gc_set_tile) gdk_gc_set_tile __attribute((alias("IA__gdk_gc_set_tile"), visibility("default")));
+
+#undef gdk_gc_set_stipple 
+extern __typeof (gdk_gc_set_stipple) gdk_gc_set_stipple __attribute((alias("IA__gdk_gc_set_stipple"), visibility("default")));
+
+#undef gdk_gc_set_ts_origin 
+extern __typeof (gdk_gc_set_ts_origin) gdk_gc_set_ts_origin __attribute((alias("IA__gdk_gc_set_ts_origin"), visibility("default")));
+
+#undef gdk_gc_set_clip_origin 
+extern __typeof (gdk_gc_set_clip_origin) gdk_gc_set_clip_origin __attribute((alias("IA__gdk_gc_set_clip_origin"), visibility("default")));
+
+#undef gdk_gc_set_clip_mask 
+extern __typeof (gdk_gc_set_clip_mask) gdk_gc_set_clip_mask __attribute((alias("IA__gdk_gc_set_clip_mask"), visibility("default")));
+
+#undef gdk_gc_set_clip_rectangle 
+extern __typeof (gdk_gc_set_clip_rectangle) gdk_gc_set_clip_rectangle __attribute((alias("IA__gdk_gc_set_clip_rectangle"), visibility("default")));
+
+#undef gdk_gc_set_clip_region 
+extern __typeof (gdk_gc_set_clip_region) gdk_gc_set_clip_region __attribute((alias("IA__gdk_gc_set_clip_region"), visibility("default")));
+
+#undef gdk_gc_set_subwindow 
+extern __typeof (gdk_gc_set_subwindow) gdk_gc_set_subwindow __attribute((alias("IA__gdk_gc_set_subwindow"), visibility("default")));
+
+#undef gdk_gc_set_exposures 
+extern __typeof (gdk_gc_set_exposures) gdk_gc_set_exposures __attribute((alias("IA__gdk_gc_set_exposures"), visibility("default")));
+
+#undef gdk_gc_set_line_attributes 
+extern __typeof (gdk_gc_set_line_attributes) gdk_gc_set_line_attributes __attribute((alias("IA__gdk_gc_set_line_attributes"), visibility("default")));
+
+#undef gdk_gc_set_dashes 
+extern __typeof (gdk_gc_set_dashes) gdk_gc_set_dashes __attribute((alias("IA__gdk_gc_set_dashes"), visibility("default")));
+
+#undef gdk_gc_offset 
+extern __typeof (gdk_gc_offset) gdk_gc_offset __attribute((alias("IA__gdk_gc_offset"), visibility("default")));
+
+#undef gdk_gc_copy 
+extern __typeof (gdk_gc_copy) gdk_gc_copy __attribute((alias("IA__gdk_gc_copy"), visibility("default")));
+
+#undef gdk_gc_get_colormap 
+extern __typeof (gdk_gc_get_colormap) gdk_gc_get_colormap __attribute((alias("IA__gdk_gc_get_colormap"), visibility("default")));
+
+#undef gdk_gc_set_colormap 
+extern __typeof (gdk_gc_set_colormap) gdk_gc_set_colormap __attribute((alias("IA__gdk_gc_set_colormap"), visibility("default")));
+
+#undef gdk_gc_set_rgb_bg_color 
+extern __typeof (gdk_gc_set_rgb_bg_color) gdk_gc_set_rgb_bg_color __attribute((alias("IA__gdk_gc_set_rgb_bg_color"), visibility("default")));
+
+#undef gdk_gc_set_rgb_fg_color 
+extern __typeof (gdk_gc_set_rgb_fg_color) gdk_gc_set_rgb_fg_color __attribute((alias("IA__gdk_gc_set_rgb_fg_color"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_GC_H__)
+#if IN_FILE(__GDK_GC_X11_C__)
+#undef gdk_gc_get_screen 
+extern __typeof (gdk_gc_get_screen) gdk_gc_get_screen __attribute((alias("IA__gdk_gc_get_screen"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXMAP_X11_H__)
+#if IN_FILE(__GDK_PIXMAP_X11_C__)
+#ifdef GDK_WINDOWING_X11
+#undef gdk_pixmap_impl_x11_get_type 
+extern __typeof (gdk_pixmap_impl_x11_get_type) gdk_pixmap_impl_x11_get_type __attribute((alias("IA__gdk_pixmap_impl_x11_get_type"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_X11_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+#ifdef GDK_WINDOWING_X11
+#undef gdk_window_impl_x11_get_type 
+extern __typeof (gdk_window_impl_x11_get_type) gdk_window_impl_x11_get_type __attribute((alias("IA__gdk_window_impl_x11_get_type"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_WINDOW_C__)
+#undef gdk_get_default_root_window 
+extern __typeof (gdk_get_default_root_window) gdk_get_default_root_window __attribute((alias("IA__gdk_get_default_root_window"), visibility("default")));
+
+#undef gdk_window_new 
+extern __typeof (gdk_window_new) gdk_window_new __attribute((alias("IA__gdk_window_new"), visibility("default")));
+
+#undef gdk_window_show_unraised 
+extern __typeof (gdk_window_show_unraised) gdk_window_show_unraised __attribute((alias("IA__gdk_window_show_unraised"), visibility("default")));
+
+#undef gdk_window_show 
+extern __typeof (gdk_window_show) gdk_window_show __attribute((alias("IA__gdk_window_show"), visibility("default")));
+
+#undef gdk_window_hide 
+extern __typeof (gdk_window_hide) gdk_window_hide __attribute((alias("IA__gdk_window_hide"), visibility("default")));
+
+#undef gdk_window_withdraw 
+extern __typeof (gdk_window_withdraw) gdk_window_withdraw __attribute((alias("IA__gdk_window_withdraw"), visibility("default")));
+
+#undef gdk_window_get_events 
+extern __typeof (gdk_window_get_events) gdk_window_get_events __attribute((alias("IA__gdk_window_get_events"), visibility("default")));
+
+#undef gdk_window_set_events 
+extern __typeof (gdk_window_set_events) gdk_window_set_events __attribute((alias("IA__gdk_window_set_events"), visibility("default")));
+
+#undef gdk_window_raise 
+extern __typeof (gdk_window_raise) gdk_window_raise __attribute((alias("IA__gdk_window_raise"), visibility("default")));
+
+#undef gdk_window_lower 
+extern __typeof (gdk_window_lower) gdk_window_lower __attribute((alias("IA__gdk_window_lower"), visibility("default")));
+
+#undef gdk_window_restack 
+extern __typeof (gdk_window_restack) gdk_window_restack __attribute((alias("IA__gdk_window_restack"), visibility("default")));
+
+#undef gdk_window_move 
+extern __typeof (gdk_window_move) gdk_window_move __attribute((alias("IA__gdk_window_move"), visibility("default")));
+
+#undef gdk_window_resize 
+extern __typeof (gdk_window_resize) gdk_window_resize __attribute((alias("IA__gdk_window_resize"), visibility("default")));
+
+#undef gdk_window_move_resize 
+extern __typeof (gdk_window_move_resize) gdk_window_move_resize __attribute((alias("IA__gdk_window_move_resize"), visibility("default")));
+
+#undef gdk_window_scroll 
+extern __typeof (gdk_window_scroll) gdk_window_scroll __attribute((alias("IA__gdk_window_scroll"), visibility("default")));
+
+#undef gdk_window_move_region 
+extern __typeof (gdk_window_move_region) gdk_window_move_region __attribute((alias("IA__gdk_window_move_region"), visibility("default")));
+
+#undef gdk_window_get_accept_focus 
+extern __typeof (gdk_window_get_accept_focus) gdk_window_get_accept_focus __attribute((alias("IA__gdk_window_get_accept_focus"), visibility("default")));
+
+#undef gdk_window_get_back_pixmap 
+extern __typeof (gdk_window_get_back_pixmap) gdk_window_get_back_pixmap __attribute((alias("IA__gdk_window_get_back_pixmap"), visibility("default")));
+
+#undef gdk_window_get_background 
+extern __typeof (gdk_window_get_background) gdk_window_get_background __attribute((alias("IA__gdk_window_get_background"), visibility("default")));
+
+#undef gdk_window_get_composited 
+extern __typeof (gdk_window_get_composited) gdk_window_get_composited __attribute((alias("IA__gdk_window_get_composited"), visibility("default")));
+
+#undef gdk_window_get_cursor 
+extern __typeof (gdk_window_get_cursor) gdk_window_get_cursor __attribute((alias("IA__gdk_window_get_cursor"), visibility("default")));
+
+#undef gdk_window_get_deskrelative_origin 
+extern __typeof (gdk_window_get_deskrelative_origin) gdk_window_get_deskrelative_origin __attribute((alias("IA__gdk_window_get_deskrelative_origin"), visibility("default")));
+
+#undef gdk_window_get_focus_on_map 
+extern __typeof (gdk_window_get_focus_on_map) gdk_window_get_focus_on_map __attribute((alias("IA__gdk_window_get_focus_on_map"), visibility("default")));
+
+#undef gdk_window_get_geometry 
+extern __typeof (gdk_window_get_geometry) gdk_window_get_geometry __attribute((alias("IA__gdk_window_get_geometry"), visibility("default")));
+
+#undef gdk_window_get_modal_hint 
+extern __typeof (gdk_window_get_modal_hint) gdk_window_get_modal_hint __attribute((alias("IA__gdk_window_get_modal_hint"), visibility("default")));
+
+#undef gdk_window_get_origin 
+extern __typeof (gdk_window_get_origin) gdk_window_get_origin __attribute((alias("IA__gdk_window_get_origin"), visibility("default")));
+
+#undef gdk_window_get_root_coords 
+extern __typeof (gdk_window_get_root_coords) gdk_window_get_root_coords __attribute((alias("IA__gdk_window_get_root_coords"), visibility("default")));
+
+#undef gdk_window_set_background 
+extern __typeof (gdk_window_set_background) gdk_window_set_background __attribute((alias("IA__gdk_window_set_background"), visibility("default")));
+
+#undef gdk_window_set_back_pixmap 
+extern __typeof (gdk_window_set_back_pixmap) gdk_window_set_back_pixmap __attribute((alias("IA__gdk_window_set_back_pixmap"), visibility("default")));
+
+#undef gdk_window_set_cursor 
+extern __typeof (gdk_window_set_cursor) gdk_window_set_cursor __attribute((alias("IA__gdk_window_set_cursor"), visibility("default")));
+
+#undef gdk_window_shape_combine_mask 
+extern __typeof (gdk_window_shape_combine_mask) gdk_window_shape_combine_mask __attribute((alias("IA__gdk_window_shape_combine_mask"), visibility("default")));
+
+#undef gdk_window_shape_combine_region 
+extern __typeof (gdk_window_shape_combine_region) gdk_window_shape_combine_region __attribute((alias("IA__gdk_window_shape_combine_region"), visibility("default")));
+
+#undef gdk_window_set_child_shapes 
+extern __typeof (gdk_window_set_child_shapes) gdk_window_set_child_shapes __attribute((alias("IA__gdk_window_set_child_shapes"), visibility("default")));
+
+#undef gdk_window_merge_child_shapes 
+extern __typeof (gdk_window_merge_child_shapes) gdk_window_merge_child_shapes __attribute((alias("IA__gdk_window_merge_child_shapes"), visibility("default")));
+
+#undef gdk_window_input_shape_combine_mask 
+extern __typeof (gdk_window_input_shape_combine_mask) gdk_window_input_shape_combine_mask __attribute((alias("IA__gdk_window_input_shape_combine_mask"), visibility("default")));
+
+#undef gdk_window_input_shape_combine_region 
+extern __typeof (gdk_window_input_shape_combine_region) gdk_window_input_shape_combine_region __attribute((alias("IA__gdk_window_input_shape_combine_region"), visibility("default")));
+
+#undef gdk_window_set_child_input_shapes 
+extern __typeof (gdk_window_set_child_input_shapes) gdk_window_set_child_input_shapes __attribute((alias("IA__gdk_window_set_child_input_shapes"), visibility("default")));
+
+#undef gdk_window_merge_child_input_shapes 
+extern __typeof (gdk_window_merge_child_input_shapes) gdk_window_merge_child_input_shapes __attribute((alias("IA__gdk_window_merge_child_input_shapes"), visibility("default")));
+
+#undef gdk_window_set_static_gravities 
+extern __typeof (gdk_window_set_static_gravities) gdk_window_set_static_gravities __attribute((alias("IA__gdk_window_set_static_gravities"), visibility("default")));
+
+#undef gdk_window_reparent 
+extern __typeof (gdk_window_reparent) gdk_window_reparent __attribute((alias("IA__gdk_window_reparent"), visibility("default")));
+
+#undef gdk_window_add_filter 
+extern __typeof (gdk_window_add_filter) gdk_window_add_filter __attribute((alias("IA__gdk_window_add_filter"), visibility("default")));
+
+#undef gdk_window_at_pointer 
+extern __typeof (gdk_window_at_pointer) gdk_window_at_pointer __attribute((alias("IA__gdk_window_at_pointer"), visibility("default")));
+
+#undef gdk_window_begin_paint_rect 
+extern __typeof (gdk_window_begin_paint_rect) gdk_window_begin_paint_rect __attribute((alias("IA__gdk_window_begin_paint_rect"), visibility("default")));
+
+#undef gdk_window_begin_paint_region 
+extern __typeof (gdk_window_begin_paint_region) gdk_window_begin_paint_region __attribute((alias("IA__gdk_window_begin_paint_region"), visibility("default")));
+
+#undef gdk_window_clear 
+extern __typeof (gdk_window_clear) gdk_window_clear __attribute((alias("IA__gdk_window_clear"), visibility("default")));
+
+#undef gdk_window_clear_area 
+extern __typeof (gdk_window_clear_area) gdk_window_clear_area __attribute((alias("IA__gdk_window_clear_area"), visibility("default")));
+
+#undef gdk_window_clear_area_e 
+extern __typeof (gdk_window_clear_area_e) gdk_window_clear_area_e __attribute((alias("IA__gdk_window_clear_area_e"), visibility("default")));
+
+#undef gdk_window_constrain_size 
+extern __typeof (gdk_window_constrain_size) gdk_window_constrain_size __attribute((alias("IA__gdk_window_constrain_size"), visibility("default")));
+
+#undef gdk_window_coords_from_parent 
+extern __typeof (gdk_window_coords_from_parent) gdk_window_coords_from_parent __attribute((alias("IA__gdk_window_coords_from_parent"), visibility("default")));
+
+#undef gdk_window_coords_to_parent 
+extern __typeof (gdk_window_coords_to_parent) gdk_window_coords_to_parent __attribute((alias("IA__gdk_window_coords_to_parent"), visibility("default")));
+
+#undef gdk_window_destroy 
+extern __typeof (gdk_window_destroy) gdk_window_destroy __attribute((alias("IA__gdk_window_destroy"), visibility("default")));
+
+#undef gdk_window_end_paint 
+extern __typeof (gdk_window_end_paint) gdk_window_end_paint __attribute((alias("IA__gdk_window_end_paint"), visibility("default")));
+
+#undef gdk_window_flush 
+extern __typeof (gdk_window_flush) gdk_window_flush __attribute((alias("IA__gdk_window_flush"), visibility("default")));
+
+#undef gdk_window_foreign_new 
+extern __typeof (gdk_window_foreign_new) gdk_window_foreign_new __attribute((alias("IA__gdk_window_foreign_new"), visibility("default")));
+
+#undef gdk_window_freeze_toplevel_updates_libgtk_only 
+extern __typeof (gdk_window_freeze_toplevel_updates_libgtk_only) gdk_window_freeze_toplevel_updates_libgtk_only __attribute((alias("IA__gdk_window_freeze_toplevel_updates_libgtk_only"), visibility("default")));
+
+#undef gdk_window_freeze_updates 
+extern __typeof (gdk_window_freeze_updates) gdk_window_freeze_updates __attribute((alias("IA__gdk_window_freeze_updates"), visibility("default")));
+
+#undef gdk_window_get_children 
+extern __typeof (gdk_window_get_children) gdk_window_get_children __attribute((alias("IA__gdk_window_get_children"), visibility("default")));
+
+#undef gdk_window_get_internal_paint_info 
+extern __typeof (gdk_window_get_internal_paint_info) gdk_window_get_internal_paint_info __attribute((alias("IA__gdk_window_get_internal_paint_info"), visibility("default")));
+
+#undef gdk_window_get_parent 
+extern __typeof (gdk_window_get_parent) gdk_window_get_parent __attribute((alias("IA__gdk_window_get_parent"), visibility("default")));
+
+#undef gdk_window_get_effective_parent 
+extern __typeof (gdk_window_get_effective_parent) gdk_window_get_effective_parent __attribute((alias("IA__gdk_window_get_effective_parent"), visibility("default")));
+
+#undef gdk_window_get_pointer 
+extern __typeof (gdk_window_get_pointer) gdk_window_get_pointer __attribute((alias("IA__gdk_window_get_pointer"), visibility("default")));
+
+#undef gdk_window_get_position 
+extern __typeof (gdk_window_get_position) gdk_window_get_position __attribute((alias("IA__gdk_window_get_position"), visibility("default")));
+
+#undef gdk_window_get_state 
+extern __typeof (gdk_window_get_state) gdk_window_get_state __attribute((alias("IA__gdk_window_get_state"), visibility("default")));
+
+#undef gdk_window_get_toplevel 
+extern __typeof (gdk_window_get_toplevel) gdk_window_get_toplevel __attribute((alias("IA__gdk_window_get_toplevel"), visibility("default")));
+
+#undef gdk_window_get_effective_toplevel 
+extern __typeof (gdk_window_get_effective_toplevel) gdk_window_get_effective_toplevel __attribute((alias("IA__gdk_window_get_effective_toplevel"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_window_get_toplevels 
+extern __typeof (gdk_window_get_toplevels) gdk_window_get_toplevels __attribute((alias("IA__gdk_window_get_toplevels"), visibility("default")));
+
+#endif
+#undef gdk_window_get_update_area 
+extern __typeof (gdk_window_get_update_area) gdk_window_get_update_area __attribute((alias("IA__gdk_window_get_update_area"), visibility("default")));
+
+#undef gdk_window_get_user_data 
+extern __typeof (gdk_window_get_user_data) gdk_window_get_user_data __attribute((alias("IA__gdk_window_get_user_data"), visibility("default")));
+
+#undef gdk_window_get_window_type 
+extern __typeof (gdk_window_get_window_type) gdk_window_get_window_type __attribute((alias("IA__gdk_window_get_window_type"), visibility("default")));
+
+#undef gdk_window_has_native 
+extern __typeof (gdk_window_has_native) gdk_window_has_native __attribute((alias("IA__gdk_window_has_native"), visibility("default")));
+
+#undef gdk_window_invalidate_maybe_recurse 
+extern __typeof (gdk_window_invalidate_maybe_recurse) gdk_window_invalidate_maybe_recurse __attribute((alias("IA__gdk_window_invalidate_maybe_recurse"), visibility("default")));
+
+#undef gdk_window_invalidate_rect 
+extern __typeof (gdk_window_invalidate_rect) gdk_window_invalidate_rect __attribute((alias("IA__gdk_window_invalidate_rect"), visibility("default")));
+
+#undef gdk_window_invalidate_region 
+extern __typeof (gdk_window_invalidate_region) gdk_window_invalidate_region __attribute((alias("IA__gdk_window_invalidate_region"), visibility("default")));
+
+#undef gdk_window_is_destroyed 
+extern __typeof (gdk_window_is_destroyed) gdk_window_is_destroyed __attribute((alias("IA__gdk_window_is_destroyed"), visibility("default")));
+
+#undef gdk_window_is_input_only 
+extern __typeof (gdk_window_is_input_only) gdk_window_is_input_only __attribute((alias("IA__gdk_window_is_input_only"), visibility("default")));
+
+#undef gdk_window_is_shaped 
+extern __typeof (gdk_window_is_shaped) gdk_window_is_shaped __attribute((alias("IA__gdk_window_is_shaped"), visibility("default")));
+
+#undef gdk_window_is_viewable 
+extern __typeof (gdk_window_is_viewable) gdk_window_is_viewable __attribute((alias("IA__gdk_window_is_viewable"), visibility("default")));
+
+#undef gdk_window_is_visible 
+extern __typeof (gdk_window_is_visible) gdk_window_is_visible __attribute((alias("IA__gdk_window_is_visible"), visibility("default")));
+
+#undef gdk_window_object_get_type 
+extern __typeof (gdk_window_object_get_type) gdk_window_object_get_type __attribute((alias("IA__gdk_window_object_get_type"), visibility("default")));
+
+#undef gdk_window_peek_children 
+extern __typeof (gdk_window_peek_children) gdk_window_peek_children __attribute((alias("IA__gdk_window_peek_children"), visibility("default")));
+
+#undef gdk_window_process_all_updates 
+extern __typeof (gdk_window_process_all_updates) gdk_window_process_all_updates __attribute((alias("IA__gdk_window_process_all_updates"), visibility("default")));
+
+#undef gdk_window_process_updates 
+extern __typeof (gdk_window_process_updates) gdk_window_process_updates __attribute((alias("IA__gdk_window_process_updates"), visibility("default")));
+
+#undef gdk_window_redirect_to_drawable 
+extern __typeof (gdk_window_redirect_to_drawable) gdk_window_redirect_to_drawable __attribute((alias("IA__gdk_window_redirect_to_drawable"), visibility("default")));
+
+#undef gdk_window_remove_filter 
+extern __typeof (gdk_window_remove_filter) gdk_window_remove_filter __attribute((alias("IA__gdk_window_remove_filter"), visibility("default")));
+
+#undef gdk_window_remove_redirection 
+extern __typeof (gdk_window_remove_redirection) gdk_window_remove_redirection __attribute((alias("IA__gdk_window_remove_redirection"), visibility("default")));
+
+#undef gdk_window_set_debug_updates 
+extern __typeof (gdk_window_set_debug_updates) gdk_window_set_debug_updates __attribute((alias("IA__gdk_window_set_debug_updates"), visibility("default")));
+
+#undef gdk_window_set_user_data 
+extern __typeof (gdk_window_set_user_data) gdk_window_set_user_data __attribute((alias("IA__gdk_window_set_user_data"), visibility("default")));
+
+#undef gdk_window_thaw_toplevel_updates_libgtk_only 
+extern __typeof (gdk_window_thaw_toplevel_updates_libgtk_only) gdk_window_thaw_toplevel_updates_libgtk_only __attribute((alias("IA__gdk_window_thaw_toplevel_updates_libgtk_only"), visibility("default")));
+
+#undef gdk_window_thaw_updates 
+extern __typeof (gdk_window_thaw_updates) gdk_window_thaw_updates __attribute((alias("IA__gdk_window_thaw_updates"), visibility("default")));
+
+#undef gdk_window_set_composited 
+extern __typeof (gdk_window_set_composited) gdk_window_set_composited __attribute((alias("IA__gdk_window_set_composited"), visibility("default")));
+
+#undef gdk_pointer_grab 
+extern __typeof (gdk_pointer_grab) gdk_pointer_grab __attribute((alias("IA__gdk_pointer_grab"), visibility("default")));
+
+#undef gdk_window_beep 
+extern __typeof (gdk_window_beep) gdk_window_beep __attribute((alias("IA__gdk_window_beep"), visibility("default")));
+
+#undef gdk_window_geometry_changed 
+extern __typeof (gdk_window_geometry_changed) gdk_window_geometry_changed __attribute((alias("IA__gdk_window_geometry_changed"), visibility("default")));
+
+#undef gdk_window_ensure_native 
+extern __typeof (gdk_window_ensure_native) gdk_window_ensure_native __attribute((alias("IA__gdk_window_ensure_native"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_OFFSCREEN_WINDOW_C__)
+#undef gdk_offscreen_window_get_pixmap 
+extern __typeof (gdk_offscreen_window_get_pixmap) gdk_offscreen_window_get_pixmap __attribute((alias("IA__gdk_offscreen_window_get_pixmap"), visibility("default")));
+
+#undef gdk_offscreen_window_set_embedder 
+extern __typeof (gdk_offscreen_window_set_embedder) gdk_offscreen_window_set_embedder __attribute((alias("IA__gdk_offscreen_window_set_embedder"), visibility("default")));
+
+#undef gdk_offscreen_window_get_embedder 
+extern __typeof (gdk_offscreen_window_get_embedder) gdk_offscreen_window_get_embedder __attribute((alias("IA__gdk_offscreen_window_get_embedder"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_INTERNALS_H__)
+#if IN_FILE(__GDK_OFFSCREEN_WINDOW_C__)
+#undef gdk_offscreen_window_get_type 
+extern __typeof (gdk_offscreen_window_get_type) gdk_offscreen_window_get_type __attribute((alias("IA__gdk_offscreen_window_get_type"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_DND_X11_C__)
+#undef gdk_window_register_dnd 
+extern __typeof (gdk_window_register_dnd) gdk_window_register_dnd __attribute((alias("IA__gdk_window_register_dnd"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+#undef gdk_window_foreign_new_for_display 
+extern __typeof (gdk_window_foreign_new_for_display) gdk_window_foreign_new_for_display __attribute((alias("IA__gdk_window_foreign_new_for_display"), visibility("default")));
+
+#undef gdk_window_focus 
+extern __typeof (gdk_window_focus) gdk_window_focus __attribute((alias("IA__gdk_window_focus"), visibility("default")));
+
+#undef gdk_window_lookup 
+extern __typeof (gdk_window_lookup) gdk_window_lookup __attribute((alias("IA__gdk_window_lookup"), visibility("default")));
+
+#undef gdk_window_lookup_for_display 
+extern __typeof (gdk_window_lookup_for_display) gdk_window_lookup_for_display __attribute((alias("IA__gdk_window_lookup_for_display"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_window_set_hints 
+extern __typeof (gdk_window_set_hints) gdk_window_set_hints __attribute((alias("IA__gdk_window_set_hints"), visibility("default")));
+
+#endif
+#undef gdk_window_get_type_hint 
+extern __typeof (gdk_window_get_type_hint) gdk_window_get_type_hint __attribute((alias("IA__gdk_window_get_type_hint"), visibility("default")));
+
+#undef gdk_window_set_type_hint 
+extern __typeof (gdk_window_set_type_hint) gdk_window_set_type_hint __attribute((alias("IA__gdk_window_set_type_hint"), visibility("default")));
+
+#undef gdk_window_set_modal_hint 
+extern __typeof (gdk_window_set_modal_hint) gdk_window_set_modal_hint __attribute((alias("IA__gdk_window_set_modal_hint"), visibility("default")));
+
+#undef gdk_window_set_skip_taskbar_hint 
+extern __typeof (gdk_window_set_skip_taskbar_hint) gdk_window_set_skip_taskbar_hint __attribute((alias("IA__gdk_window_set_skip_taskbar_hint"), visibility("default")));
+
+#undef gdk_window_set_skip_pager_hint 
+extern __typeof (gdk_window_set_skip_pager_hint) gdk_window_set_skip_pager_hint __attribute((alias("IA__gdk_window_set_skip_pager_hint"), visibility("default")));
+
+#undef gdk_window_set_urgency_hint 
+extern __typeof (gdk_window_set_urgency_hint) gdk_window_set_urgency_hint __attribute((alias("IA__gdk_window_set_urgency_hint"), visibility("default")));
+
+#undef gdk_window_set_geometry_hints 
+extern __typeof (gdk_window_set_geometry_hints) gdk_window_set_geometry_hints __attribute((alias("IA__gdk_window_set_geometry_hints"), visibility("default")));
+
+#undef gdk_window_set_title 
+extern __typeof (gdk_window_set_title) gdk_window_set_title __attribute((alias("IA__gdk_window_set_title"), visibility("default")));
+
+#undef gdk_window_set_role 
+extern __typeof (gdk_window_set_role) gdk_window_set_role __attribute((alias("IA__gdk_window_set_role"), visibility("default")));
+
+#undef gdk_window_set_startup_id 
+extern __typeof (gdk_window_set_startup_id) gdk_window_set_startup_id __attribute((alias("IA__gdk_window_set_startup_id"), visibility("default")));
+
+#undef gdk_window_set_transient_for 
+extern __typeof (gdk_window_set_transient_for) gdk_window_set_transient_for __attribute((alias("IA__gdk_window_set_transient_for"), visibility("default")));
+
+#undef gdk_window_get_root_origin 
+extern __typeof (gdk_window_get_root_origin) gdk_window_get_root_origin __attribute((alias("IA__gdk_window_get_root_origin"), visibility("default")));
+
+#undef gdk_window_get_frame_extents 
+extern __typeof (gdk_window_get_frame_extents) gdk_window_get_frame_extents __attribute((alias("IA__gdk_window_get_frame_extents"), visibility("default")));
+
+#undef gdk_window_set_override_redirect 
+extern __typeof (gdk_window_set_override_redirect) gdk_window_set_override_redirect __attribute((alias("IA__gdk_window_set_override_redirect"), visibility("default")));
+
+#undef gdk_window_set_accept_focus 
+extern __typeof (gdk_window_set_accept_focus) gdk_window_set_accept_focus __attribute((alias("IA__gdk_window_set_accept_focus"), visibility("default")));
+
+#undef gdk_window_set_focus_on_map 
+extern __typeof (gdk_window_set_focus_on_map) gdk_window_set_focus_on_map __attribute((alias("IA__gdk_window_set_focus_on_map"), visibility("default")));
+
+#undef gdk_window_set_icon_list 
+extern __typeof (gdk_window_set_icon_list) gdk_window_set_icon_list __attribute((alias("IA__gdk_window_set_icon_list"), visibility("default")));
+
+#undef gdk_window_set_icon 
+extern __typeof (gdk_window_set_icon) gdk_window_set_icon __attribute((alias("IA__gdk_window_set_icon"), visibility("default")));
+
+#undef gdk_window_set_icon_name 
+extern __typeof (gdk_window_set_icon_name) gdk_window_set_icon_name __attribute((alias("IA__gdk_window_set_icon_name"), visibility("default")));
+
+#undef gdk_window_set_opacity 
+extern __typeof (gdk_window_set_opacity) gdk_window_set_opacity __attribute((alias("IA__gdk_window_set_opacity"), visibility("default")));
+
+#undef gdk_window_iconify 
+extern __typeof (gdk_window_iconify) gdk_window_iconify __attribute((alias("IA__gdk_window_iconify"), visibility("default")));
+
+#undef gdk_window_deiconify 
+extern __typeof (gdk_window_deiconify) gdk_window_deiconify __attribute((alias("IA__gdk_window_deiconify"), visibility("default")));
+
+#undef gdk_window_stick 
+extern __typeof (gdk_window_stick) gdk_window_stick __attribute((alias("IA__gdk_window_stick"), visibility("default")));
+
+#undef gdk_window_unstick 
+extern __typeof (gdk_window_unstick) gdk_window_unstick __attribute((alias("IA__gdk_window_unstick"), visibility("default")));
+
+#undef gdk_window_maximize 
+extern __typeof (gdk_window_maximize) gdk_window_maximize __attribute((alias("IA__gdk_window_maximize"), visibility("default")));
+
+#undef gdk_window_unmaximize 
+extern __typeof (gdk_window_unmaximize) gdk_window_unmaximize __attribute((alias("IA__gdk_window_unmaximize"), visibility("default")));
+
+#undef gdk_window_fullscreen 
+extern __typeof (gdk_window_fullscreen) gdk_window_fullscreen __attribute((alias("IA__gdk_window_fullscreen"), visibility("default")));
+
+#undef gdk_window_unfullscreen 
+extern __typeof (gdk_window_unfullscreen) gdk_window_unfullscreen __attribute((alias("IA__gdk_window_unfullscreen"), visibility("default")));
+
+#undef gdk_window_set_keep_above 
+extern __typeof (gdk_window_set_keep_above) gdk_window_set_keep_above __attribute((alias("IA__gdk_window_set_keep_above"), visibility("default")));
+
+#undef gdk_window_set_keep_below 
+extern __typeof (gdk_window_set_keep_below) gdk_window_set_keep_below __attribute((alias("IA__gdk_window_set_keep_below"), visibility("default")));
+
+#undef gdk_window_get_group 
+extern __typeof (gdk_window_get_group) gdk_window_get_group __attribute((alias("IA__gdk_window_get_group"), visibility("default")));
+
+#undef gdk_window_set_group 
+extern __typeof (gdk_window_set_group) gdk_window_set_group __attribute((alias("IA__gdk_window_set_group"), visibility("default")));
+
+#undef gdk_window_get_decorations 
+extern __typeof (gdk_window_get_decorations) gdk_window_get_decorations __attribute((alias("IA__gdk_window_get_decorations"), visibility("default")));
+
+#undef gdk_window_set_decorations 
+extern __typeof (gdk_window_set_decorations) gdk_window_set_decorations __attribute((alias("IA__gdk_window_set_decorations"), visibility("default")));
+
+#undef gdk_window_set_functions 
+extern __typeof (gdk_window_set_functions) gdk_window_set_functions __attribute((alias("IA__gdk_window_set_functions"), visibility("default")));
+
+#undef gdk_window_begin_move_drag 
+extern __typeof (gdk_window_begin_move_drag) gdk_window_begin_move_drag __attribute((alias("IA__gdk_window_begin_move_drag"), visibility("default")));
+
+#undef gdk_window_begin_resize_drag 
+extern __typeof (gdk_window_begin_resize_drag) gdk_window_begin_resize_drag __attribute((alias("IA__gdk_window_begin_resize_drag"), visibility("default")));
+
+#undef gdk_window_enable_synchronized_configure 
+extern __typeof (gdk_window_enable_synchronized_configure) gdk_window_enable_synchronized_configure __attribute((alias("IA__gdk_window_enable_synchronized_configure"), visibility("default")));
+
+#undef gdk_window_configure_finished 
+extern __typeof (gdk_window_configure_finished) gdk_window_configure_finished __attribute((alias("IA__gdk_window_configure_finished"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_IMAGE_H__)
+#if IN_FILE(__GDK_IMAGE_C__)
+#undef gdk_image_get_bits_per_pixel 
+extern __typeof (gdk_image_get_bits_per_pixel) gdk_image_get_bits_per_pixel __attribute((alias("IA__gdk_image_get_bits_per_pixel"), visibility("default")));
+
+#undef gdk_image_get_bytes_per_pixel 
+extern __typeof (gdk_image_get_bytes_per_pixel) gdk_image_get_bytes_per_pixel __attribute((alias("IA__gdk_image_get_bytes_per_pixel"), visibility("default")));
+
+#undef gdk_image_get_bytes_per_line 
+extern __typeof (gdk_image_get_bytes_per_line) gdk_image_get_bytes_per_line __attribute((alias("IA__gdk_image_get_bytes_per_line"), visibility("default")));
+
+#undef gdk_image_get_byte_order 
+extern __typeof (gdk_image_get_byte_order) gdk_image_get_byte_order __attribute((alias("IA__gdk_image_get_byte_order"), visibility("default")));
+
+#undef gdk_image_get_depth 
+extern __typeof (gdk_image_get_depth) gdk_image_get_depth __attribute((alias("IA__gdk_image_get_depth"), visibility("default")));
+
+#undef gdk_image_get_height 
+extern __typeof (gdk_image_get_height) gdk_image_get_height __attribute((alias("IA__gdk_image_get_height"), visibility("default")));
+
+#undef gdk_image_get_image_type 
+extern __typeof (gdk_image_get_image_type) gdk_image_get_image_type __attribute((alias("IA__gdk_image_get_image_type"), visibility("default")));
+
+#undef gdk_image_get_visual 
+extern __typeof (gdk_image_get_visual) gdk_image_get_visual __attribute((alias("IA__gdk_image_get_visual"), visibility("default")));
+
+#undef gdk_image_get_width 
+extern __typeof (gdk_image_get_width) gdk_image_get_width __attribute((alias("IA__gdk_image_get_width"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_image_ref 
+extern __typeof (gdk_image_ref) gdk_image_ref __attribute((alias("IA__gdk_image_ref"), visibility("default")));
+
+#undef gdk_image_unref 
+extern __typeof (gdk_image_unref) gdk_image_unref __attribute((alias("IA__gdk_image_unref"), visibility("default")));
+
+#undef gdk_image_get 
+extern __typeof (gdk_image_get) gdk_image_get __attribute((alias("IA__gdk_image_get"), visibility("default")));
+
+#endif
+#undef gdk_image_get_pixels 
+extern __typeof (gdk_image_get_pixels) gdk_image_get_pixels __attribute((alias("IA__gdk_image_get_pixels"), visibility("default")));
+
+#undef gdk_image_set_colormap 
+extern __typeof (gdk_image_set_colormap) gdk_image_set_colormap __attribute((alias("IA__gdk_image_set_colormap"), visibility("default")));
+
+#undef gdk_image_get_colormap 
+extern __typeof (gdk_image_get_colormap) gdk_image_get_colormap __attribute((alias("IA__gdk_image_get_colormap"), visibility("default")));
+
+#undef gdk_image_new 
+extern __typeof (gdk_image_new) gdk_image_new __attribute((alias("IA__gdk_image_new"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_IMAGE_H__)
+#if IN_FILE(__GDK_IMAGE_X11_C__)
+#ifdef GDK_ENABLE_BROKEN
+#undef gdk_image_new_bitmap 
+extern __typeof (gdk_image_new_bitmap) gdk_image_new_bitmap __attribute((alias("IA__gdk_image_new_bitmap"), visibility("default")));
+
+#endif
+#undef gdk_image_get_pixel 
+extern __typeof (gdk_image_get_pixel) gdk_image_get_pixel __attribute((alias("IA__gdk_image_get_pixel"), visibility("default")));
+
+#undef gdk_image_put_pixel 
+extern __typeof (gdk_image_put_pixel) gdk_image_put_pixel __attribute((alias("IA__gdk_image_put_pixel"), visibility("default")));
+
+#undef gdk_image_get_type 
+extern __typeof (gdk_image_get_type) gdk_image_get_type __attribute((alias("IA__gdk_image_get_type"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYS_C__)
+#undef gdk_keymap_get_default 
+extern __typeof (gdk_keymap_get_default) gdk_keymap_get_default __attribute((alias("IA__gdk_keymap_get_default"), visibility("default")));
+
+#undef gdk_keymap_get_type 
+extern __typeof (gdk_keymap_get_type) gdk_keymap_get_type __attribute((alias("IA__gdk_keymap_get_type"), visibility("default")));
+
+#undef gdk_keyval_is_lower 
+extern __typeof (gdk_keyval_is_lower) gdk_keyval_is_lower __attribute((alias("IA__gdk_keyval_is_lower"), visibility("default")));
+
+#undef gdk_keyval_is_upper 
+extern __typeof (gdk_keyval_is_upper) gdk_keyval_is_upper __attribute((alias("IA__gdk_keyval_is_upper"), visibility("default")));
+
+#undef gdk_keyval_to_lower 
+extern __typeof (gdk_keyval_to_lower) gdk_keyval_to_lower __attribute((alias("IA__gdk_keyval_to_lower"), visibility("default")));
+
+#undef gdk_keyval_to_upper 
+extern __typeof (gdk_keyval_to_upper) gdk_keyval_to_upper __attribute((alias("IA__gdk_keyval_to_upper"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYUNI_C__)
+#undef gdk_keyval_to_unicode 
+extern __typeof (gdk_keyval_to_unicode) gdk_keyval_to_unicode __attribute((alias("IA__gdk_keyval_to_unicode"), visibility("default")));
+
+#undef gdk_unicode_to_keyval 
+extern __typeof (gdk_unicode_to_keyval) gdk_unicode_to_keyval __attribute((alias("IA__gdk_unicode_to_keyval"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYS_X11_C__)
+#undef gdk_keymap_get_direction 
+extern __typeof (gdk_keymap_get_direction) gdk_keymap_get_direction __attribute((alias("IA__gdk_keymap_get_direction"), visibility("default")));
+
+#undef gdk_keymap_get_entries_for_keycode 
+extern __typeof (gdk_keymap_get_entries_for_keycode) gdk_keymap_get_entries_for_keycode __attribute((alias("IA__gdk_keymap_get_entries_for_keycode"), visibility("default")));
+
+#undef gdk_keymap_get_entries_for_keyval 
+extern __typeof (gdk_keymap_get_entries_for_keyval) gdk_keymap_get_entries_for_keyval __attribute((alias("IA__gdk_keymap_get_entries_for_keyval"), visibility("default")));
+
+#undef gdk_keymap_get_for_display 
+extern __typeof (gdk_keymap_get_for_display) gdk_keymap_get_for_display __attribute((alias("IA__gdk_keymap_get_for_display"), visibility("default")));
+
+#undef gdk_keymap_have_bidi_layouts 
+extern __typeof (gdk_keymap_have_bidi_layouts) gdk_keymap_have_bidi_layouts __attribute((alias("IA__gdk_keymap_have_bidi_layouts"), visibility("default")));
+
+#undef gdk_keymap_get_caps_lock_state 
+extern __typeof (gdk_keymap_get_caps_lock_state) gdk_keymap_get_caps_lock_state __attribute((alias("IA__gdk_keymap_get_caps_lock_state"), visibility("default")));
+
+#undef gdk_keymap_lookup_key 
+extern __typeof (gdk_keymap_lookup_key) gdk_keymap_lookup_key __attribute((alias("IA__gdk_keymap_lookup_key"), visibility("default")));
+
+#undef gdk_keymap_translate_keyboard_state 
+extern __typeof (gdk_keymap_translate_keyboard_state) gdk_keymap_translate_keyboard_state __attribute((alias("IA__gdk_keymap_translate_keyboard_state"), visibility("default")));
+
+#undef gdk_keymap_add_virtual_modifiers 
+extern __typeof (gdk_keymap_add_virtual_modifiers) gdk_keymap_add_virtual_modifiers __attribute((alias("IA__gdk_keymap_add_virtual_modifiers"), visibility("default")));
+
+#undef gdk_keymap_map_virtual_modifiers 
+extern __typeof (gdk_keymap_map_virtual_modifiers) gdk_keymap_map_virtual_modifiers __attribute((alias("IA__gdk_keymap_map_virtual_modifiers"), visibility("default")));
+
+#undef gdk_keyval_convert_case 
+extern __typeof (gdk_keyval_convert_case) gdk_keyval_convert_case __attribute((alias("IA__gdk_keyval_convert_case"), visibility("default")));
+
+#undef gdk_keyval_from_name 
+extern __typeof (gdk_keyval_from_name) gdk_keyval_from_name __attribute((alias("IA__gdk_keyval_from_name"), visibility("default")));
+
+#undef gdk_keyval_name 
+extern __typeof (gdk_keyval_name) gdk_keyval_name __attribute((alias("IA__gdk_keyval_name"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_KEYS_H__)
+#if IN_FILE(__GDK_KEYS_DIRECTFB_C__)
+#undef gdk_keymap_get_direction 
+extern __typeof (gdk_keymap_get_direction) gdk_keymap_get_direction __attribute((alias("IA__gdk_keymap_get_direction"), visibility("default")));
+
+#undef gdk_keymap_get_entries_for_keycode 
+extern __typeof (gdk_keymap_get_entries_for_keycode) gdk_keymap_get_entries_for_keycode __attribute((alias("IA__gdk_keymap_get_entries_for_keycode"), visibility("default")));
+
+#undef gdk_keymap_get_entries_for_keyval 
+extern __typeof (gdk_keymap_get_entries_for_keyval) gdk_keymap_get_entries_for_keyval __attribute((alias("IA__gdk_keymap_get_entries_for_keyval"), visibility("default")));
+
+#undef gdk_keymap_get_for_display 
+extern __typeof (gdk_keymap_get_for_display) gdk_keymap_get_for_display __attribute((alias("IA__gdk_keymap_get_for_display"), visibility("default")));
+
+#undef gdk_keymap_get_caps_lock_state 
+extern __typeof (gdk_keymap_get_caps_lock_state) gdk_keymap_get_caps_lock_state __attribute((alias("IA__gdk_keymap_get_caps_lock_state"), visibility("default")));
+
+#undef gdk_keymap_lookup_key 
+extern __typeof (gdk_keymap_lookup_key) gdk_keymap_lookup_key __attribute((alias("IA__gdk_keymap_lookup_key"), visibility("default")));
+
+#undef gdk_keymap_translate_keyboard_state 
+extern __typeof (gdk_keymap_translate_keyboard_state) gdk_keymap_translate_keyboard_state __attribute((alias("IA__gdk_keymap_translate_keyboard_state"), visibility("default")));
+
+#undef gdk_keymap_add_virtual_modifiers 
+extern __typeof (gdk_keymap_add_virtual_modifiers) gdk_keymap_add_virtual_modifiers __attribute((alias("IA__gdk_keymap_add_virtual_modifiers"), visibility("default")));
+
+#undef gdk_keymap_map_virtual_modifiers 
+extern __typeof (gdk_keymap_map_virtual_modifiers) gdk_keymap_map_virtual_modifiers __attribute((alias("IA__gdk_keymap_map_virtual_modifiers"), visibility("default")));
+
+#undef gdk_keyval_from_name 
+extern __typeof (gdk_keyval_from_name) gdk_keyval_from_name __attribute((alias("IA__gdk_keyval_from_name"), visibility("default")));
+
+#undef gdk_keyval_name 
+extern __typeof (gdk_keyval_name) gdk_keyval_name __attribute((alias("IA__gdk_keyval_name"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_VISUAL_H__)
+#if IN_FILE(__GDK_VISUAL_C__)
+#undef gdk_list_visuals 
+extern __typeof (gdk_list_visuals) gdk_list_visuals __attribute((alias("IA__gdk_list_visuals"), visibility("default")));
+
+#undef gdk_visual_get_bits_per_rgb 
+extern __typeof (gdk_visual_get_bits_per_rgb) gdk_visual_get_bits_per_rgb __attribute((alias("IA__gdk_visual_get_bits_per_rgb"), visibility("default")));
+
+#undef gdk_visual_get_blue_pixel_details 
+extern __typeof (gdk_visual_get_blue_pixel_details) gdk_visual_get_blue_pixel_details __attribute((alias("IA__gdk_visual_get_blue_pixel_details"), visibility("default")));
+
+#undef gdk_visual_get_byte_order 
+extern __typeof (gdk_visual_get_byte_order) gdk_visual_get_byte_order __attribute((alias("IA__gdk_visual_get_byte_order"), visibility("default")));
+
+#undef gdk_visual_get_colormap_size 
+extern __typeof (gdk_visual_get_colormap_size) gdk_visual_get_colormap_size __attribute((alias("IA__gdk_visual_get_colormap_size"), visibility("default")));
+
+#undef gdk_visual_get_depth 
+extern __typeof (gdk_visual_get_depth) gdk_visual_get_depth __attribute((alias("IA__gdk_visual_get_depth"), visibility("default")));
+
+#undef gdk_visual_get_green_pixel_details 
+extern __typeof (gdk_visual_get_green_pixel_details) gdk_visual_get_green_pixel_details __attribute((alias("IA__gdk_visual_get_green_pixel_details"), visibility("default")));
+
+#undef gdk_visual_get_red_pixel_details 
+extern __typeof (gdk_visual_get_red_pixel_details) gdk_visual_get_red_pixel_details __attribute((alias("IA__gdk_visual_get_red_pixel_details"), visibility("default")));
+
+#undef gdk_visual_get_system 
+extern __typeof (gdk_visual_get_system) gdk_visual_get_system __attribute((alias("IA__gdk_visual_get_system"), visibility("default")));
+
+#undef gdk_visual_get_visual_type 
+extern __typeof (gdk_visual_get_visual_type) gdk_visual_get_visual_type __attribute((alias("IA__gdk_visual_get_visual_type"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_VISUAL_H__)
+#if IN_FILE(__GDK_VISUAL_X11_C__)
+#undef gdk_query_depths 
+extern __typeof (gdk_query_depths) gdk_query_depths __attribute((alias("IA__gdk_query_depths"), visibility("default")));
+
+#undef gdk_query_visual_types 
+extern __typeof (gdk_query_visual_types) gdk_query_visual_types __attribute((alias("IA__gdk_query_visual_types"), visibility("default")));
+
+#undef gdk_visual_get_best 
+extern __typeof (gdk_visual_get_best) gdk_visual_get_best __attribute((alias("IA__gdk_visual_get_best"), visibility("default")));
+
+#undef gdk_visual_get_best_depth 
+extern __typeof (gdk_visual_get_best_depth) gdk_visual_get_best_depth __attribute((alias("IA__gdk_visual_get_best_depth"), visibility("default")));
+
+#undef gdk_visual_get_best_type 
+extern __typeof (gdk_visual_get_best_type) gdk_visual_get_best_type __attribute((alias("IA__gdk_visual_get_best_type"), visibility("default")));
+
+#undef gdk_visual_get_best_with_both 
+extern __typeof (gdk_visual_get_best_with_both) gdk_visual_get_best_with_both __attribute((alias("IA__gdk_visual_get_best_with_both"), visibility("default")));
+
+#undef gdk_visual_get_best_with_depth 
+extern __typeof (gdk_visual_get_best_with_depth) gdk_visual_get_best_with_depth __attribute((alias("IA__gdk_visual_get_best_with_depth"), visibility("default")));
+
+#undef gdk_visual_get_best_with_type 
+extern __typeof (gdk_visual_get_best_with_type) gdk_visual_get_best_with_type __attribute((alias("IA__gdk_visual_get_best_with_type"), visibility("default")));
+
+#undef gdk_visual_get_screen 
+extern __typeof (gdk_visual_get_screen) gdk_visual_get_screen __attribute((alias("IA__gdk_visual_get_screen"), visibility("default")));
+
+#undef gdk_visual_get_type 
+extern __typeof (gdk_visual_get_type) gdk_visual_get_type __attribute((alias("IA__gdk_visual_get_type"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_X_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+#undef gdk_net_wm_supports 
+extern __typeof (gdk_net_wm_supports) gdk_net_wm_supports __attribute((alias("IA__gdk_net_wm_supports"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PANGO_H__)
+#if IN_FILE(__GDK_PANGO_C__)
+#undef gdk_pango_attr_emboss_color_new 
+extern __typeof (gdk_pango_attr_emboss_color_new) gdk_pango_attr_emboss_color_new __attribute((alias("IA__gdk_pango_attr_emboss_color_new"), visibility("default")));
+
+#undef gdk_pango_attr_embossed_new 
+extern __typeof (gdk_pango_attr_embossed_new) gdk_pango_attr_embossed_new __attribute((alias("IA__gdk_pango_attr_embossed_new"), visibility("default")));
+
+#undef gdk_pango_attr_stipple_new 
+extern __typeof (gdk_pango_attr_stipple_new) gdk_pango_attr_stipple_new __attribute((alias("IA__gdk_pango_attr_stipple_new"), visibility("default")));
+
+#undef gdk_pango_context_get 
+extern __typeof (gdk_pango_context_get) gdk_pango_context_get __attribute((alias("IA__gdk_pango_context_get"), visibility("default")));
+
+#undef gdk_pango_context_get_for_screen 
+extern __typeof (gdk_pango_context_get_for_screen) gdk_pango_context_get_for_screen __attribute((alias("IA__gdk_pango_context_get_for_screen"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_pango_context_set_colormap 
+extern __typeof (gdk_pango_context_set_colormap) gdk_pango_context_set_colormap __attribute((alias("IA__gdk_pango_context_set_colormap"), visibility("default")));
+
+#endif
+#undef gdk_pango_layout_get_clip_region 
+extern __typeof (gdk_pango_layout_get_clip_region) gdk_pango_layout_get_clip_region __attribute((alias("IA__gdk_pango_layout_get_clip_region"), visibility("default")));
+
+#undef gdk_pango_layout_line_get_clip_region 
+extern __typeof (gdk_pango_layout_line_get_clip_region) gdk_pango_layout_line_get_clip_region __attribute((alias("IA__gdk_pango_layout_line_get_clip_region"), visibility("default")));
+
+#undef gdk_pango_renderer_get_default 
+extern __typeof (gdk_pango_renderer_get_default) gdk_pango_renderer_get_default __attribute((alias("IA__gdk_pango_renderer_get_default"), visibility("default")));
+
+#undef gdk_pango_renderer_get_type 
+extern __typeof (gdk_pango_renderer_get_type) gdk_pango_renderer_get_type __attribute((alias("IA__gdk_pango_renderer_get_type"), visibility("default")));
+
+#undef gdk_pango_renderer_new 
+extern __typeof (gdk_pango_renderer_new) gdk_pango_renderer_new __attribute((alias("IA__gdk_pango_renderer_new"), visibility("default")));
+
+#undef gdk_pango_renderer_set_drawable 
+extern __typeof (gdk_pango_renderer_set_drawable) gdk_pango_renderer_set_drawable __attribute((alias("IA__gdk_pango_renderer_set_drawable"), visibility("default")));
+
+#undef gdk_pango_renderer_set_gc 
+extern __typeof (gdk_pango_renderer_set_gc) gdk_pango_renderer_set_gc __attribute((alias("IA__gdk_pango_renderer_set_gc"), visibility("default")));
+
+#undef gdk_pango_renderer_set_override_color 
+extern __typeof (gdk_pango_renderer_set_override_color) gdk_pango_renderer_set_override_color __attribute((alias("IA__gdk_pango_renderer_set_override_color"), visibility("default")));
+
+#undef gdk_pango_renderer_set_stipple 
+extern __typeof (gdk_pango_renderer_set_stipple) gdk_pango_renderer_set_stipple __attribute((alias("IA__gdk_pango_renderer_set_stipple"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXBUF_H__)
+#if IN_FILE(__GDK_PIXBUF_DRAWABLE_C__)
+#undef gdk_pixbuf_get_from_drawable 
+extern __typeof (gdk_pixbuf_get_from_drawable) gdk_pixbuf_get_from_drawable __attribute((alias("IA__gdk_pixbuf_get_from_drawable"), visibility("default")));
+
+#undef gdk_pixbuf_get_from_image 
+extern __typeof (gdk_pixbuf_get_from_image) gdk_pixbuf_get_from_image __attribute((alias("IA__gdk_pixbuf_get_from_image"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXBUF_H__)
+#if IN_FILE(__GDK_PIXBUF_RENDER_C__)
+#undef gdk_pixbuf_render_pixmap_and_mask 
+extern __typeof (gdk_pixbuf_render_pixmap_and_mask) gdk_pixbuf_render_pixmap_and_mask __attribute((alias("IA__gdk_pixbuf_render_pixmap_and_mask"), visibility("default")));
+
+#undef gdk_pixbuf_render_pixmap_and_mask_for_colormap 
+extern __typeof (gdk_pixbuf_render_pixmap_and_mask_for_colormap) gdk_pixbuf_render_pixmap_and_mask_for_colormap __attribute((alias("IA__gdk_pixbuf_render_pixmap_and_mask_for_colormap"), visibility("default")));
+
+#undef gdk_pixbuf_render_threshold_alpha 
+extern __typeof (gdk_pixbuf_render_threshold_alpha) gdk_pixbuf_render_threshold_alpha __attribute((alias("IA__gdk_pixbuf_render_threshold_alpha"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_pixbuf_render_to_drawable 
+extern __typeof (gdk_pixbuf_render_to_drawable) gdk_pixbuf_render_to_drawable __attribute((alias("IA__gdk_pixbuf_render_to_drawable"), visibility("default")));
+
+#undef gdk_pixbuf_render_to_drawable_alpha 
+extern __typeof (gdk_pixbuf_render_to_drawable_alpha) gdk_pixbuf_render_to_drawable_alpha __attribute((alias("IA__gdk_pixbuf_render_to_drawable_alpha"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXMAP_H__)
+#if IN_FILE(__GDK_PIXMAP_C__)
+#undef gdk_bitmap_create_from_data 
+extern __typeof (gdk_bitmap_create_from_data) gdk_bitmap_create_from_data __attribute((alias("IA__gdk_bitmap_create_from_data"), visibility("default")));
+
+#undef gdk_pixmap_colormap_create_from_xpm 
+extern __typeof (gdk_pixmap_colormap_create_from_xpm) gdk_pixmap_colormap_create_from_xpm __attribute((alias("IA__gdk_pixmap_colormap_create_from_xpm"), visibility("default")));
+
+#undef gdk_pixmap_create_from_data 
+extern __typeof (gdk_pixmap_create_from_data) gdk_pixmap_create_from_data __attribute((alias("IA__gdk_pixmap_create_from_data"), visibility("default")));
+
+#undef gdk_pixmap_create_from_xpm 
+extern __typeof (gdk_pixmap_create_from_xpm) gdk_pixmap_create_from_xpm __attribute((alias("IA__gdk_pixmap_create_from_xpm"), visibility("default")));
+
+#undef gdk_pixmap_colormap_create_from_xpm_d 
+extern __typeof (gdk_pixmap_colormap_create_from_xpm_d) gdk_pixmap_colormap_create_from_xpm_d __attribute((alias("IA__gdk_pixmap_colormap_create_from_xpm_d"), visibility("default")));
+
+#undef gdk_pixmap_create_from_xpm_d 
+extern __typeof (gdk_pixmap_create_from_xpm_d) gdk_pixmap_create_from_xpm_d __attribute((alias("IA__gdk_pixmap_create_from_xpm_d"), visibility("default")));
+
+#undef gdk_pixmap_get_type 
+extern __typeof (gdk_pixmap_get_type) gdk_pixmap_get_type __attribute((alias("IA__gdk_pixmap_get_type"), visibility("default")));
+
+#undef gdk_pixmap_new 
+extern __typeof (gdk_pixmap_new) gdk_pixmap_new __attribute((alias("IA__gdk_pixmap_new"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PIXMAP_H__)
+#if IN_FILE(__GDK_PIXMAP_X11_C__)
+#undef gdk_pixmap_foreign_new 
+extern __typeof (gdk_pixmap_foreign_new) gdk_pixmap_foreign_new __attribute((alias("IA__gdk_pixmap_foreign_new"), visibility("default")));
+
+#undef gdk_pixmap_foreign_new_for_display 
+extern __typeof (gdk_pixmap_foreign_new_for_display) gdk_pixmap_foreign_new_for_display __attribute((alias("IA__gdk_pixmap_foreign_new_for_display"), visibility("default")));
+
+#undef gdk_pixmap_foreign_new_for_screen 
+extern __typeof (gdk_pixmap_foreign_new_for_screen) gdk_pixmap_foreign_new_for_screen __attribute((alias("IA__gdk_pixmap_foreign_new_for_screen"), visibility("default")));
+
+#undef gdk_pixmap_lookup 
+extern __typeof (gdk_pixmap_lookup) gdk_pixmap_lookup __attribute((alias("IA__gdk_pixmap_lookup"), visibility("default")));
+
+#undef gdk_pixmap_lookup_for_display 
+extern __typeof (gdk_pixmap_lookup_for_display) gdk_pixmap_lookup_for_display __attribute((alias("IA__gdk_pixmap_lookup_for_display"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_REGION_H__)
+#if IN_FILE(__GDK_REGION_GENERIC_C__)
+#undef gdk_region_copy 
+extern __typeof (gdk_region_copy) gdk_region_copy __attribute((alias("IA__gdk_region_copy"), visibility("default")));
+
+#undef gdk_region_destroy 
+extern __typeof (gdk_region_destroy) gdk_region_destroy __attribute((alias("IA__gdk_region_destroy"), visibility("default")));
+
+#undef gdk_region_empty 
+extern __typeof (gdk_region_empty) gdk_region_empty __attribute((alias("IA__gdk_region_empty"), visibility("default")));
+
+#undef gdk_region_equal 
+extern __typeof (gdk_region_equal) gdk_region_equal __attribute((alias("IA__gdk_region_equal"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_region_rect_equal 
+extern __typeof (gdk_region_rect_equal) gdk_region_rect_equal __attribute((alias("IA__gdk_region_rect_equal"), visibility("default")));
+
+#endif
+#undef gdk_region_get_clipbox 
+extern __typeof (gdk_region_get_clipbox) gdk_region_get_clipbox __attribute((alias("IA__gdk_region_get_clipbox"), visibility("default")));
+
+#undef gdk_region_get_rectangles 
+extern __typeof (gdk_region_get_rectangles) gdk_region_get_rectangles __attribute((alias("IA__gdk_region_get_rectangles"), visibility("default")));
+
+#undef gdk_region_intersect 
+extern __typeof (gdk_region_intersect) gdk_region_intersect __attribute((alias("IA__gdk_region_intersect"), visibility("default")));
+
+#undef gdk_region_new 
+extern __typeof (gdk_region_new) gdk_region_new __attribute((alias("IA__gdk_region_new"), visibility("default")));
+
+#undef gdk_region_offset 
+extern __typeof (gdk_region_offset) gdk_region_offset __attribute((alias("IA__gdk_region_offset"), visibility("default")));
+
+#undef gdk_region_point_in 
+extern __typeof (gdk_region_point_in) gdk_region_point_in __attribute((alias("IA__gdk_region_point_in"), visibility("default")));
+
+#undef gdk_region_rectangle 
+extern __typeof (gdk_region_rectangle) gdk_region_rectangle __attribute((alias("IA__gdk_region_rectangle"), visibility("default")));
+
+#undef gdk_region_rect_in 
+extern __typeof (gdk_region_rect_in) gdk_region_rect_in __attribute((alias("IA__gdk_region_rect_in"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_region_shrink 
+extern __typeof (gdk_region_shrink) gdk_region_shrink __attribute((alias("IA__gdk_region_shrink"), visibility("default")));
+
+#undef gdk_region_spans_intersect_foreach 
+extern __typeof (gdk_region_spans_intersect_foreach) gdk_region_spans_intersect_foreach __attribute((alias("IA__gdk_region_spans_intersect_foreach"), visibility("default")));
+
+#endif
+#undef gdk_region_subtract 
+extern __typeof (gdk_region_subtract) gdk_region_subtract __attribute((alias("IA__gdk_region_subtract"), visibility("default")));
+
+#undef gdk_region_union 
+extern __typeof (gdk_region_union) gdk_region_union __attribute((alias("IA__gdk_region_union"), visibility("default")));
+
+#undef gdk_region_union_with_rect 
+extern __typeof (gdk_region_union_with_rect) gdk_region_union_with_rect __attribute((alias("IA__gdk_region_union_with_rect"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_region_xor 
+extern __typeof (gdk_region_xor) gdk_region_xor __attribute((alias("IA__gdk_region_xor"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_REGION_H__)
+#if IN_FILE(__GDK_POLYREG_GENERIC_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_region_polygon 
+extern __typeof (gdk_region_polygon) gdk_region_polygon __attribute((alias("IA__gdk_region_polygon"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_RGB_H__)
+#if IN_FILE(__GDK_RGB_C__)
+#undef gdk_rgb_cmap_free 
+extern __typeof (gdk_rgb_cmap_free) gdk_rgb_cmap_free __attribute((alias("IA__gdk_rgb_cmap_free"), visibility("default")));
+
+#undef gdk_rgb_cmap_new 
+extern __typeof (gdk_rgb_cmap_new) gdk_rgb_cmap_new __attribute((alias("IA__gdk_rgb_cmap_new"), visibility("default")));
+
+#undef gdk_rgb_colormap_ditherable 
+extern __typeof (gdk_rgb_colormap_ditherable) gdk_rgb_colormap_ditherable __attribute((alias("IA__gdk_rgb_colormap_ditherable"), visibility("default")));
+
+#undef gdk_rgb_ditherable 
+extern __typeof (gdk_rgb_ditherable) gdk_rgb_ditherable __attribute((alias("IA__gdk_rgb_ditherable"), visibility("default")));
+
+#undef gdk_rgb_find_color 
+extern __typeof (gdk_rgb_find_color) gdk_rgb_find_color __attribute((alias("IA__gdk_rgb_find_color"), visibility("default")));
+
+#undef gdk_rgb_get_colormap 
+extern __typeof (gdk_rgb_get_colormap) gdk_rgb_get_colormap __attribute((alias("IA__gdk_rgb_get_colormap"), visibility("default")));
+
+#undef gdk_rgb_get_visual 
+extern __typeof (gdk_rgb_get_visual) gdk_rgb_get_visual __attribute((alias("IA__gdk_rgb_get_visual"), visibility("default")));
+
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_rgb_init 
+extern __typeof (gdk_rgb_init) gdk_rgb_init __attribute((alias("IA__gdk_rgb_init"), visibility("default")));
+
+#undef gdk_rgb_xpixel_from_rgb 
+extern __typeof (gdk_rgb_xpixel_from_rgb) gdk_rgb_xpixel_from_rgb __attribute((alias("IA__gdk_rgb_xpixel_from_rgb"), visibility("default")));
+
+#undef gdk_rgb_gc_set_background 
+extern __typeof (gdk_rgb_gc_set_background) gdk_rgb_gc_set_background __attribute((alias("IA__gdk_rgb_gc_set_background"), visibility("default")));
+
+#undef gdk_rgb_gc_set_foreground 
+extern __typeof (gdk_rgb_gc_set_foreground) gdk_rgb_gc_set_foreground __attribute((alias("IA__gdk_rgb_gc_set_foreground"), visibility("default")));
+
+#endif
+#undef gdk_rgb_set_install 
+extern __typeof (gdk_rgb_set_install) gdk_rgb_set_install __attribute((alias("IA__gdk_rgb_set_install"), visibility("default")));
+
+#undef gdk_rgb_set_min_colors 
+extern __typeof (gdk_rgb_set_min_colors) gdk_rgb_set_min_colors __attribute((alias("IA__gdk_rgb_set_min_colors"), visibility("default")));
+
+#undef gdk_rgb_set_verbose 
+extern __typeof (gdk_rgb_set_verbose) gdk_rgb_set_verbose __attribute((alias("IA__gdk_rgb_set_verbose"), visibility("default")));
+
+#undef gdk_draw_gray_image 
+extern __typeof (gdk_draw_gray_image) gdk_draw_gray_image __attribute((alias("IA__gdk_draw_gray_image"), visibility("default")));
+
+#undef gdk_draw_indexed_image 
+extern __typeof (gdk_draw_indexed_image) gdk_draw_indexed_image __attribute((alias("IA__gdk_draw_indexed_image"), visibility("default")));
+
+#undef gdk_draw_rgb_32_image 
+extern __typeof (gdk_draw_rgb_32_image) gdk_draw_rgb_32_image __attribute((alias("IA__gdk_draw_rgb_32_image"), visibility("default")));
+
+#undef gdk_draw_rgb_32_image_dithalign 
+extern __typeof (gdk_draw_rgb_32_image_dithalign) gdk_draw_rgb_32_image_dithalign __attribute((alias("IA__gdk_draw_rgb_32_image_dithalign"), visibility("default")));
+
+#undef gdk_draw_rgb_image 
+extern __typeof (gdk_draw_rgb_image) gdk_draw_rgb_image __attribute((alias("IA__gdk_draw_rgb_image"), visibility("default")));
+
+#undef gdk_draw_rgb_image_dithalign 
+extern __typeof (gdk_draw_rgb_image_dithalign) gdk_draw_rgb_image_dithalign __attribute((alias("IA__gdk_draw_rgb_image_dithalign"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_SCREEN_C__)
+#undef gdk_screen_get_type 
+extern __typeof (gdk_screen_get_type) gdk_screen_get_type __attribute((alias("IA__gdk_screen_get_type"), visibility("default")));
+
+#undef gdk_screen_get_monitor_at_point 
+extern __typeof (gdk_screen_get_monitor_at_point) gdk_screen_get_monitor_at_point __attribute((alias("IA__gdk_screen_get_monitor_at_point"), visibility("default")));
+
+#undef gdk_screen_get_monitor_at_window 
+extern __typeof (gdk_screen_get_monitor_at_window) gdk_screen_get_monitor_at_window __attribute((alias("IA__gdk_screen_get_monitor_at_window"), visibility("default")));
+
+#undef gdk_screen_set_font_options 
+extern __typeof (gdk_screen_set_font_options) gdk_screen_set_font_options __attribute((alias("IA__gdk_screen_set_font_options"), visibility("default")));
+
+#undef gdk_screen_get_font_options 
+extern __typeof (gdk_screen_get_font_options) gdk_screen_get_font_options __attribute((alias("IA__gdk_screen_get_font_options"), visibility("default")));
+
+#undef gdk_screen_set_resolution 
+extern __typeof (gdk_screen_set_resolution) gdk_screen_set_resolution __attribute((alias("IA__gdk_screen_set_resolution"), visibility("default")));
+
+#undef gdk_screen_get_resolution 
+extern __typeof (gdk_screen_get_resolution) gdk_screen_get_resolution __attribute((alias("IA__gdk_screen_get_resolution"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_DISPLAY_MANAGER_C__)
+#undef gdk_screen_get_default 
+extern __typeof (gdk_screen_get_default) gdk_screen_get_default __attribute((alias("IA__gdk_screen_get_default"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_RGB_C__)
+#undef gdk_screen_get_rgb_colormap 
+extern __typeof (gdk_screen_get_rgb_colormap) gdk_screen_get_rgb_colormap __attribute((alias("IA__gdk_screen_get_rgb_colormap"), visibility("default")));
+
+#undef gdk_screen_get_rgb_visual 
+extern __typeof (gdk_screen_get_rgb_visual) gdk_screen_get_rgb_visual __attribute((alias("IA__gdk_screen_get_rgb_visual"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+#undef gdk_screen_get_setting 
+extern __typeof (gdk_screen_get_setting) gdk_screen_get_setting __attribute((alias("IA__gdk_screen_get_setting"), visibility("default")));
+
+#undef gdk_screen_broadcast_client_message 
+extern __typeof (gdk_screen_broadcast_client_message) gdk_screen_broadcast_client_message __attribute((alias("IA__gdk_screen_broadcast_client_message"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_VISUAL_X11_C__)
+#undef gdk_screen_get_system_visual 
+extern __typeof (gdk_screen_get_system_visual) gdk_screen_get_system_visual __attribute((alias("IA__gdk_screen_get_system_visual"), visibility("default")));
+
+#undef gdk_screen_list_visuals 
+extern __typeof (gdk_screen_list_visuals) gdk_screen_list_visuals __attribute((alias("IA__gdk_screen_list_visuals"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_WINDOW_C__)
+#undef gdk_screen_get_toplevel_windows 
+extern __typeof (gdk_screen_get_toplevel_windows) gdk_screen_get_toplevel_windows __attribute((alias("IA__gdk_screen_get_toplevel_windows"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_SCREEN_X11_C__)
+#undef gdk_screen_get_display 
+extern __typeof (gdk_screen_get_display) gdk_screen_get_display __attribute((alias("IA__gdk_screen_get_display"), visibility("default")));
+
+#undef gdk_screen_get_width 
+extern __typeof (gdk_screen_get_width) gdk_screen_get_width __attribute((alias("IA__gdk_screen_get_width"), visibility("default")));
+
+#undef gdk_screen_get_width_mm 
+extern __typeof (gdk_screen_get_width_mm) gdk_screen_get_width_mm __attribute((alias("IA__gdk_screen_get_width_mm"), visibility("default")));
+
+#undef gdk_screen_get_height 
+extern __typeof (gdk_screen_get_height) gdk_screen_get_height __attribute((alias("IA__gdk_screen_get_height"), visibility("default")));
+
+#undef gdk_screen_get_height_mm 
+extern __typeof (gdk_screen_get_height_mm) gdk_screen_get_height_mm __attribute((alias("IA__gdk_screen_get_height_mm"), visibility("default")));
+
+#undef gdk_screen_get_number 
+extern __typeof (gdk_screen_get_number) gdk_screen_get_number __attribute((alias("IA__gdk_screen_get_number"), visibility("default")));
+
+#undef gdk_screen_get_primary_monitor 
+extern __typeof (gdk_screen_get_primary_monitor) gdk_screen_get_primary_monitor __attribute((alias("IA__gdk_screen_get_primary_monitor"), visibility("default")));
+
+#undef gdk_screen_get_root_window 
+extern __typeof (gdk_screen_get_root_window) gdk_screen_get_root_window __attribute((alias("IA__gdk_screen_get_root_window"), visibility("default")));
+
+#undef gdk_screen_get_default_colormap 
+extern __typeof (gdk_screen_get_default_colormap) gdk_screen_get_default_colormap __attribute((alias("IA__gdk_screen_get_default_colormap"), visibility("default")));
+
+#undef gdk_screen_set_default_colormap 
+extern __typeof (gdk_screen_set_default_colormap) gdk_screen_set_default_colormap __attribute((alias("IA__gdk_screen_set_default_colormap"), visibility("default")));
+
+#undef gdk_screen_get_n_monitors 
+extern __typeof (gdk_screen_get_n_monitors) gdk_screen_get_n_monitors __attribute((alias("IA__gdk_screen_get_n_monitors"), visibility("default")));
+
+#undef gdk_screen_get_monitor_geometry 
+extern __typeof (gdk_screen_get_monitor_geometry) gdk_screen_get_monitor_geometry __attribute((alias("IA__gdk_screen_get_monitor_geometry"), visibility("default")));
+
+#undef gdk_screen_get_monitor_width_mm 
+extern __typeof (gdk_screen_get_monitor_width_mm) gdk_screen_get_monitor_width_mm __attribute((alias("IA__gdk_screen_get_monitor_width_mm"), visibility("default")));
+
+#undef gdk_screen_get_monitor_height_mm 
+extern __typeof (gdk_screen_get_monitor_height_mm) gdk_screen_get_monitor_height_mm __attribute((alias("IA__gdk_screen_get_monitor_height_mm"), visibility("default")));
+
+#undef gdk_screen_get_monitor_plug_name 
+extern __typeof (gdk_screen_get_monitor_plug_name) gdk_screen_get_monitor_plug_name __attribute((alias("IA__gdk_screen_get_monitor_plug_name"), visibility("default")));
+
+#undef gdk_screen_get_rgba_colormap 
+extern __typeof (gdk_screen_get_rgba_colormap) gdk_screen_get_rgba_colormap __attribute((alias("IA__gdk_screen_get_rgba_colormap"), visibility("default")));
+
+#undef gdk_screen_get_rgba_visual 
+extern __typeof (gdk_screen_get_rgba_visual) gdk_screen_get_rgba_visual __attribute((alias("IA__gdk_screen_get_rgba_visual"), visibility("default")));
+
+#undef gdk_screen_get_active_window 
+extern __typeof (gdk_screen_get_active_window) gdk_screen_get_active_window __attribute((alias("IA__gdk_screen_get_active_window"), visibility("default")));
+
+#undef gdk_screen_get_window_stack 
+extern __typeof (gdk_screen_get_window_stack) gdk_screen_get_window_stack __attribute((alias("IA__gdk_screen_get_window_stack"), visibility("default")));
+
+#undef gdk_screen_is_composited 
+extern __typeof (gdk_screen_is_composited) gdk_screen_is_composited __attribute((alias("IA__gdk_screen_is_composited"), visibility("default")));
+
+#undef gdk_screen_make_display_name 
+extern __typeof (gdk_screen_make_display_name) gdk_screen_make_display_name __attribute((alias("IA__gdk_screen_make_display_name"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SCREEN_H__)
+#if IN_FILE(__GDK_COLOR_X11_C__)
+#undef gdk_screen_get_system_colormap 
+extern __typeof (gdk_screen_get_system_colormap) gdk_screen_get_system_colormap __attribute((alias("IA__gdk_screen_get_system_colormap"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SELECTION_H__)
+#if IN_FILE(__GDK_SELECTION_C__)
+#undef gdk_selection_owner_set 
+extern __typeof (gdk_selection_owner_set) gdk_selection_owner_set __attribute((alias("IA__gdk_selection_owner_set"), visibility("default")));
+
+#undef gdk_selection_owner_get 
+extern __typeof (gdk_selection_owner_get) gdk_selection_owner_get __attribute((alias("IA__gdk_selection_owner_get"), visibility("default")));
+
+#undef gdk_selection_send_notify 
+extern __typeof (gdk_selection_send_notify) gdk_selection_send_notify __attribute((alias("IA__gdk_selection_send_notify"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SELECTION_H__)
+#if IN_FILE(__GDK_SELECTION_X11_C__)
+#undef gdk_selection_convert 
+extern __typeof (gdk_selection_convert) gdk_selection_convert __attribute((alias("IA__gdk_selection_convert"), visibility("default")));
+
+#undef gdk_selection_owner_get_for_display 
+extern __typeof (gdk_selection_owner_get_for_display) gdk_selection_owner_get_for_display __attribute((alias("IA__gdk_selection_owner_get_for_display"), visibility("default")));
+
+#undef gdk_selection_owner_set_for_display 
+extern __typeof (gdk_selection_owner_set_for_display) gdk_selection_owner_set_for_display __attribute((alias("IA__gdk_selection_owner_set_for_display"), visibility("default")));
+
+#undef gdk_selection_property_get 
+extern __typeof (gdk_selection_property_get) gdk_selection_property_get __attribute((alias("IA__gdk_selection_property_get"), visibility("default")));
+
+#undef gdk_selection_send_notify_for_display 
+extern __typeof (gdk_selection_send_notify_for_display) gdk_selection_send_notify_for_display __attribute((alias("IA__gdk_selection_send_notify_for_display"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_H__)
+#if IN_FILE(__GDK_DISPLAY_C__)
+#undef gdk_set_sm_client_id 
+extern __typeof (gdk_set_sm_client_id) gdk_set_sm_client_id __attribute((alias("IA__gdk_set_sm_client_id"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_SPAWN_H__)
+#if IN_FILE(__GDK_SPAWN_X11_C__)
+#undef gdk_spawn_command_line_on_screen 
+extern __typeof (gdk_spawn_command_line_on_screen) gdk_spawn_command_line_on_screen __attribute((alias("IA__gdk_spawn_command_line_on_screen"), visibility("default")));
+
+#undef gdk_spawn_on_screen 
+extern __typeof (gdk_spawn_on_screen) gdk_spawn_on_screen __attribute((alias("IA__gdk_spawn_on_screen"), visibility("default")));
+
+#undef gdk_spawn_on_screen_with_pipes 
+extern __typeof (gdk_spawn_on_screen_with_pipes) gdk_spawn_on_screen_with_pipes __attribute((alias("IA__gdk_spawn_on_screen_with_pipes"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PRIVATE_H__)
+#if IN_FILE(__GDK_EVENTS_C__)
+#undef gdk_synthesize_window_state 
+extern __typeof (gdk_synthesize_window_state) gdk_synthesize_window_state __attribute((alias("IA__gdk_synthesize_window_state"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_PRIVATE_H__)
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+#undef gdk_window_destroy_notify 
+extern __typeof (gdk_window_destroy_notify) gdk_window_destroy_notify __attribute((alias("IA__gdk_window_destroy_notify"), visibility("default")));
+
+#endif
+#endif
+#ifdef GDK_WINDOWING_WIN32
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_WIN32ID_C__)
+#undef gdk_win32_handle_table_lookup 
+extern __typeof (gdk_win32_handle_table_lookup) gdk_win32_handle_table_lookup __attribute((alias("IA__gdk_win32_handle_table_lookup"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_CURSOR_WIN32_C__)
+#undef gdk_win32_icon_to_pixbuf_libgtk_only 
+extern __typeof (gdk_win32_icon_to_pixbuf_libgtk_only) gdk_win32_icon_to_pixbuf_libgtk_only __attribute((alias("IA__gdk_win32_icon_to_pixbuf_libgtk_only"), visibility("default")));
+
+#undef gdk_win32_pixbuf_to_hicon_libgtk_only 
+extern __typeof (gdk_win32_pixbuf_to_hicon_libgtk_only) gdk_win32_pixbuf_to_hicon_libgtk_only __attribute((alias("IA__gdk_win32_pixbuf_to_hicon_libgtk_only"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_DRAWABLE_WIN32_C__)
+#undef gdk_win32_drawable_get_handle 
+extern __typeof (gdk_win32_drawable_get_handle) gdk_win32_drawable_get_handle __attribute((alias("IA__gdk_win32_drawable_get_handle"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_EVENTS_WIN32_C__)
+#undef gdk_win32_set_modal_dialog_libgtk_only 
+extern __typeof (gdk_win32_set_modal_dialog_libgtk_only) gdk_win32_set_modal_dialog_libgtk_only __attribute((alias("IA__gdk_win32_set_modal_dialog_libgtk_only"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_GC_WIN32_C__)
+#undef gdk_win32_hdc_get 
+extern __typeof (gdk_win32_hdc_get) gdk_win32_hdc_get __attribute((alias("IA__gdk_win32_hdc_get"), visibility("default")));
+
+#undef gdk_win32_hdc_release 
+extern __typeof (gdk_win32_hdc_release) gdk_win32_hdc_release __attribute((alias("IA__gdk_win32_hdc_release"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WIN32_H__)
+#if IN_FILE(__GDK_SELECTION_WIN32_C__)
+#undef gdk_win32_selection_add_targets 
+extern __typeof (gdk_win32_selection_add_targets) gdk_win32_selection_add_targets __attribute((alias("IA__gdk_win32_selection_add_targets"), visibility("default")));
+
+#endif
+#endif
+#endif
+#ifdef GDK_WINDOWING_X11
+#if IN_HEADER(__GDK_X_H__)
+#if IN_FILE(__GDK_PROPERTY_X11_C__)
+#undef gdk_x11_atom_to_xatom 
+extern __typeof (gdk_x11_atom_to_xatom) gdk_x11_atom_to_xatom __attribute((alias("IA__gdk_x11_atom_to_xatom"), visibility("default")));
+
+#undef gdk_x11_atom_to_xatom_for_display 
+extern __typeof (gdk_x11_atom_to_xatom_for_display) gdk_x11_atom_to_xatom_for_display __attribute((alias("IA__gdk_x11_atom_to_xatom_for_display"), visibility("default")));
+
+#undef gdk_x11_get_xatom_by_name 
+extern __typeof (gdk_x11_get_xatom_by_name) gdk_x11_get_xatom_by_name __attribute((alias("IA__gdk_x11_get_xatom_by_name"), visibility("default")));
+
+#undef gdk_x11_get_xatom_by_name_for_display 
+extern __typeof (gdk_x11_get_xatom_by_name_for_display) gdk_x11_get_xatom_by_name_for_display __attribute((alias("IA__gdk_x11_get_xatom_by_name_for_display"), visibility("default")));
+
+#undef gdk_x11_get_xatom_name 
+extern __typeof (gdk_x11_get_xatom_name) gdk_x11_get_xatom_name __attribute((alias("IA__gdk_x11_get_xatom_name"), visibility("default")));
+
+#undef gdk_x11_get_xatom_name_for_display 
+extern __typeof (gdk_x11_get_xatom_name_for_display) gdk_x11_get_xatom_name_for_display __attribute((alias("IA__gdk_x11_get_xatom_name_for_display"), visibility("default")));
+
+#undef gdk_x11_xatom_to_atom 
+extern __typeof (gdk_x11_xatom_to_atom) gdk_x11_xatom_to_atom __attribute((alias("IA__gdk_x11_xatom_to_atom"), visibility("default")));
+
+#undef gdk_x11_xatom_to_atom_for_display 
+extern __typeof (gdk_x11_xatom_to_atom_for_display) gdk_x11_xatom_to_atom_for_display __attribute((alias("IA__gdk_x11_xatom_to_atom_for_display"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_COLOR_X11_C__)
+#undef gdk_x11_colormap_foreign_new 
+extern __typeof (gdk_x11_colormap_foreign_new) gdk_x11_colormap_foreign_new __attribute((alias("IA__gdk_x11_colormap_foreign_new"), visibility("default")));
+
+#undef gdk_x11_colormap_get_xcolormap 
+extern __typeof (gdk_x11_colormap_get_xcolormap) gdk_x11_colormap_get_xcolormap __attribute((alias("IA__gdk_x11_colormap_get_xcolormap"), visibility("default")));
+
+#undef gdk_x11_colormap_get_xdisplay 
+extern __typeof (gdk_x11_colormap_get_xdisplay) gdk_x11_colormap_get_xdisplay __attribute((alias("IA__gdk_x11_colormap_get_xdisplay"), visibility("default")));
+
+#ifdef GDK_ENABLE_BROKEN
+#undef gdkx_colormap_get 
+extern __typeof (gdkx_colormap_get) gdkx_colormap_get __attribute((alias("IA__gdkx_colormap_get"), visibility("default")));
+
+#endif
+#endif
+#if IN_FILE(__GDK_CURSOR_X11_C__)
+#undef gdk_x11_cursor_get_xcursor 
+extern __typeof (gdk_x11_cursor_get_xcursor) gdk_x11_cursor_get_xcursor __attribute((alias("IA__gdk_x11_cursor_get_xcursor"), visibility("default")));
+
+#undef gdk_x11_cursor_get_xdisplay 
+extern __typeof (gdk_x11_cursor_get_xdisplay) gdk_x11_cursor_get_xdisplay __attribute((alias("IA__gdk_x11_cursor_get_xdisplay"), visibility("default")));
+
+#undef gdk_x11_display_set_cursor_theme 
+extern __typeof (gdk_x11_display_set_cursor_theme) gdk_x11_display_set_cursor_theme __attribute((alias("IA__gdk_x11_display_set_cursor_theme"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_DISPLAY_X11_C__)
+#undef gdk_x11_display_get_user_time 
+extern __typeof (gdk_x11_display_get_user_time) gdk_x11_display_get_user_time __attribute((alias("IA__gdk_x11_display_get_user_time"), visibility("default")));
+
+#undef gdk_x11_display_get_xdisplay 
+extern __typeof (gdk_x11_display_get_xdisplay) gdk_x11_display_get_xdisplay __attribute((alias("IA__gdk_x11_display_get_xdisplay"), visibility("default")));
+
+#undef gdk_x11_display_grab 
+extern __typeof (gdk_x11_display_grab) gdk_x11_display_grab __attribute((alias("IA__gdk_x11_display_grab"), visibility("default")));
+
+#undef gdk_x11_display_ungrab 
+extern __typeof (gdk_x11_display_ungrab) gdk_x11_display_ungrab __attribute((alias("IA__gdk_x11_display_ungrab"), visibility("default")));
+
+#undef gdk_x11_lookup_xdisplay 
+extern __typeof (gdk_x11_lookup_xdisplay) gdk_x11_lookup_xdisplay __attribute((alias("IA__gdk_x11_lookup_xdisplay"), visibility("default")));
+
+#undef gdk_x11_display_broadcast_startup_message 
+extern __typeof (gdk_x11_display_broadcast_startup_message) gdk_x11_display_broadcast_startup_message __attribute((alias("IA__gdk_x11_display_broadcast_startup_message"), visibility("default")));
+
+#undef gdk_x11_display_get_startup_notification_id 
+extern __typeof (gdk_x11_display_get_startup_notification_id) gdk_x11_display_get_startup_notification_id __attribute((alias("IA__gdk_x11_display_get_startup_notification_id"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_DRAWABLE_X11_C__)
+#undef gdk_x11_drawable_get_xdisplay 
+extern __typeof (gdk_x11_drawable_get_xdisplay) gdk_x11_drawable_get_xdisplay __attribute((alias("IA__gdk_x11_drawable_get_xdisplay"), visibility("default")));
+
+#undef gdk_x11_drawable_get_xid 
+extern __typeof (gdk_x11_drawable_get_xid) gdk_x11_drawable_get_xid __attribute((alias("IA__gdk_x11_drawable_get_xid"), visibility("default")));
+
+#undef gdk_x11_window_get_drawable_impl 
+extern __typeof (gdk_x11_window_get_drawable_impl) gdk_x11_window_get_drawable_impl __attribute((alias("IA__gdk_x11_window_get_drawable_impl"), visibility("default")));
+
+#undef gdk_x11_pixmap_get_drawable_impl 
+extern __typeof (gdk_x11_pixmap_get_drawable_impl) gdk_x11_pixmap_get_drawable_impl __attribute((alias("IA__gdk_x11_pixmap_get_drawable_impl"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_FONT_X11_C__)
+#ifndef GDK_DISABLE_DEPRECATED
+#undef gdk_x11_font_get_name 
+extern __typeof (gdk_x11_font_get_name) gdk_x11_font_get_name __attribute((alias("IA__gdk_x11_font_get_name"), visibility("default")));
+
+#undef gdk_x11_font_get_xdisplay 
+extern __typeof (gdk_x11_font_get_xdisplay) gdk_x11_font_get_xdisplay __attribute((alias("IA__gdk_x11_font_get_xdisplay"), visibility("default")));
+
+#endif
+#undef gdk_x11_font_get_xfont 
+extern __typeof (gdk_x11_font_get_xfont) gdk_x11_font_get_xfont __attribute((alias("IA__gdk_x11_font_get_xfont"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_GC_X11_C__)
+#undef gdk_x11_gc_get_xdisplay 
+extern __typeof (gdk_x11_gc_get_xdisplay) gdk_x11_gc_get_xdisplay __attribute((alias("IA__gdk_x11_gc_get_xdisplay"), visibility("default")));
+
+#undef gdk_x11_gc_get_xgc 
+extern __typeof (gdk_x11_gc_get_xgc) gdk_x11_gc_get_xgc __attribute((alias("IA__gdk_x11_gc_get_xgc"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_MAIN_X11_C__)
+#undef gdk_x11_get_default_root_xwindow 
+extern __typeof (gdk_x11_get_default_root_xwindow) gdk_x11_get_default_root_xwindow __attribute((alias("IA__gdk_x11_get_default_root_xwindow"), visibility("default")));
+
+#undef gdk_x11_get_default_screen 
+extern __typeof (gdk_x11_get_default_screen) gdk_x11_get_default_screen __attribute((alias("IA__gdk_x11_get_default_screen"), visibility("default")));
+
+#undef gdk_x11_get_default_xdisplay 
+extern __typeof (gdk_x11_get_default_xdisplay) gdk_x11_get_default_xdisplay __attribute((alias("IA__gdk_x11_get_default_xdisplay"), visibility("default")));
+
+#undef gdk_x11_grab_server 
+extern __typeof (gdk_x11_grab_server) gdk_x11_grab_server __attribute((alias("IA__gdk_x11_grab_server"), visibility("default")));
+
+#undef gdk_x11_ungrab_server 
+extern __typeof (gdk_x11_ungrab_server) gdk_x11_ungrab_server __attribute((alias("IA__gdk_x11_ungrab_server"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_EVENTS_X11_C__)
+#undef gdk_x11_get_server_time 
+extern __typeof (gdk_x11_get_server_time) gdk_x11_get_server_time __attribute((alias("IA__gdk_x11_get_server_time"), visibility("default")));
+
+#undef gdk_x11_register_standard_event_type 
+extern __typeof (gdk_x11_register_standard_event_type) gdk_x11_register_standard_event_type __attribute((alias("IA__gdk_x11_register_standard_event_type"), visibility("default")));
+
+#undef gdk_x11_screen_get_window_manager_name 
+extern __typeof (gdk_x11_screen_get_window_manager_name) gdk_x11_screen_get_window_manager_name __attribute((alias("IA__gdk_x11_screen_get_window_manager_name"), visibility("default")));
+
+#undef gdk_x11_screen_supports_net_wm_hint 
+extern __typeof (gdk_x11_screen_supports_net_wm_hint) gdk_x11_screen_supports_net_wm_hint __attribute((alias("IA__gdk_x11_screen_supports_net_wm_hint"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_IMAGE_X11_C__)
+#undef gdk_x11_image_get_xdisplay 
+extern __typeof (gdk_x11_image_get_xdisplay) gdk_x11_image_get_xdisplay __attribute((alias("IA__gdk_x11_image_get_xdisplay"), visibility("default")));
+
+#undef gdk_x11_image_get_ximage 
+extern __typeof (gdk_x11_image_get_ximage) gdk_x11_image_get_ximage __attribute((alias("IA__gdk_x11_image_get_ximage"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_SCREEN_X11_C__)
+#undef gdk_x11_screen_get_screen_number 
+extern __typeof (gdk_x11_screen_get_screen_number) gdk_x11_screen_get_screen_number __attribute((alias("IA__gdk_x11_screen_get_screen_number"), visibility("default")));
+
+#undef gdk_x11_screen_get_xscreen 
+extern __typeof (gdk_x11_screen_get_xscreen) gdk_x11_screen_get_xscreen __attribute((alias("IA__gdk_x11_screen_get_xscreen"), visibility("default")));
+
+#undef gdk_x11_screen_get_monitor_output 
+extern __typeof (gdk_x11_screen_get_monitor_output) gdk_x11_screen_get_monitor_output __attribute((alias("IA__gdk_x11_screen_get_monitor_output"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_VISUAL_X11_C__)
+#undef gdk_x11_screen_lookup_visual 
+extern __typeof (gdk_x11_screen_lookup_visual) gdk_x11_screen_lookup_visual __attribute((alias("IA__gdk_x11_screen_lookup_visual"), visibility("default")));
+
+#undef gdk_x11_visual_get_xvisual 
+extern __typeof (gdk_x11_visual_get_xvisual) gdk_x11_visual_get_xvisual __attribute((alias("IA__gdk_x11_visual_get_xvisual"), visibility("default")));
+
+#undef gdkx_visual_get 
+extern __typeof (gdkx_visual_get) gdkx_visual_get __attribute((alias("IA__gdkx_visual_get"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_WINDOW_X11_C__)
+#undef gdk_x11_window_set_user_time 
+extern __typeof (gdk_x11_window_set_user_time) gdk_x11_window_set_user_time __attribute((alias("IA__gdk_x11_window_set_user_time"), visibility("default")));
+
+#undef gdk_x11_window_move_to_current_desktop 
+extern __typeof (gdk_x11_window_move_to_current_desktop) gdk_x11_window_move_to_current_desktop __attribute((alias("IA__gdk_x11_window_move_to_current_desktop"), visibility("default")));
+
+#endif
+#if IN_FILE(__GDK_XID_C__)
+#undef gdk_xid_table_lookup 
+extern __typeof (gdk_xid_table_lookup) gdk_xid_table_lookup __attribute((alias("IA__gdk_xid_table_lookup"), visibility("default")));
+
+#undef gdk_xid_table_lookup_for_display 
+extern __typeof (gdk_xid_table_lookup_for_display) gdk_xid_table_lookup_for_display __attribute((alias("IA__gdk_xid_table_lookup_for_display"), visibility("default")));
+
+#endif
+#endif
+#endif
+#if IN_HEADER(__GDK_APP_LAUNCH_CONTEXT_H__)
+#if IN_FILE(__GDK_APP_LAUNCH_CONTEXT_C__)
+#undef gdk_app_launch_context_get_type 
+extern __typeof (gdk_app_launch_context_get_type) gdk_app_launch_context_get_type __attribute((alias("IA__gdk_app_launch_context_get_type"), visibility("default")));
+
+#undef gdk_app_launch_context_new 
+extern __typeof (gdk_app_launch_context_new) gdk_app_launch_context_new __attribute((alias("IA__gdk_app_launch_context_new"), visibility("default")));
+
+#undef gdk_app_launch_context_set_display 
+extern __typeof (gdk_app_launch_context_set_display) gdk_app_launch_context_set_display __attribute((alias("IA__gdk_app_launch_context_set_display"), visibility("default")));
+
+#undef gdk_app_launch_context_set_screen 
+extern __typeof (gdk_app_launch_context_set_screen) gdk_app_launch_context_set_screen __attribute((alias("IA__gdk_app_launch_context_set_screen"), visibility("default")));
+
+#undef gdk_app_launch_context_set_desktop 
+extern __typeof (gdk_app_launch_context_set_desktop) gdk_app_launch_context_set_desktop __attribute((alias("IA__gdk_app_launch_context_set_desktop"), visibility("default")));
+
+#undef gdk_app_launch_context_set_timestamp 
+extern __typeof (gdk_app_launch_context_set_timestamp) gdk_app_launch_context_set_timestamp __attribute((alias("IA__gdk_app_launch_context_set_timestamp"), visibility("default")));
+
+#undef gdk_app_launch_context_set_icon 
+extern __typeof (gdk_app_launch_context_set_icon) gdk_app_launch_context_set_icon __attribute((alias("IA__gdk_app_launch_context_set_icon"), visibility("default")));
+
+#undef gdk_app_launch_context_set_icon_name 
+extern __typeof (gdk_app_launch_context_set_icon_name) gdk_app_launch_context_set_icon_name __attribute((alias("IA__gdk_app_launch_context_set_icon_name"), visibility("default")));
+
+#endif
+#endif
+#if IN_HEADER(__GDK_WINDOW_IMPL_H__)
+#if IN_FILE(__GDK_WINDOW_IMPL_C__)
+#undef gdk_window_impl_get_type 
+extern __typeof (gdk_window_impl_get_type) gdk_window_impl_get_type __attribute((alias("IA__gdk_window_impl_get_type"), visibility("default")));
+
+#endif
+#endif
+#ifdef GDK_WINDOWING_X11
+#endif
+
+#endif /* G_HAVE_GNUC_VISIBILITY */
+#endif /* DISABLE_VISIBILITY */
diff --git a/gdk/gdkdraw.c b/gdk/gdkdraw.c
index 933cc94..0a8532c 100644
--- a/gdk/gdkdraw.c
+++ b/gdk/gdkdraw.c
@@ -530,113 +530,6 @@ gdk_draw_lines (GdkDrawable    *drawable,
                                                  (GdkPoint *) points, n_points);
 }
 
-static void
-real_draw_glyphs (GdkDrawable       *drawable,
-		  GdkGC	            *gc,
-		  const PangoMatrix *matrix,
-		  PangoFont         *font,
-		  gdouble            x,
-		  gdouble            y,
-		  PangoGlyphString  *glyphs)
-{
-  cairo_t *cr;
-
-  cr = gdk_cairo_create (drawable);
-  _gdk_gc_update_context (gc, cr, NULL, NULL, TRUE, drawable);
-
-  if (matrix)
-    {
-      cairo_matrix_t cairo_matrix;
-
-      cairo_matrix.xx = matrix->xx;
-      cairo_matrix.yx = matrix->yx;
-      cairo_matrix.xy = matrix->xy;
-      cairo_matrix.yy = matrix->yy;
-      cairo_matrix.x0 = matrix->x0;
-      cairo_matrix.y0 = matrix->y0;
-      
-      cairo_set_matrix (cr, &cairo_matrix);
-    }
-
-  cairo_move_to (cr, x, y);
-  pango_cairo_show_glyph_string (cr, font, glyphs);
-
-  cairo_destroy (cr);
-}
-
-/**
- * gdk_draw_glyphs:
- * @drawable: a #GdkDrawable
- * @gc: a #GdkGC
- * @font: font to be used
- * @x: X coordinate of baseline origin
- * @y: Y coordinate of baseline origin
- * @glyphs: the glyph string to draw
- *
- * This is a low-level function; 99% of text rendering should be done
- * using gdk_draw_layout() instead.
- *
- * A glyph is a single image in a font. This function draws a sequence of
- * glyphs.  To obtain a sequence of glyphs you have to understand a
- * lot about internationalized text handling, which you don't want to
- * understand; thus, use gdk_draw_layout() instead of this function,
- * gdk_draw_layout() handles the details.
- * 
- **/
-void
-gdk_draw_glyphs (GdkDrawable      *drawable,
-		 GdkGC            *gc,
-		 PangoFont        *font,
-		 gint              x,
-		 gint              y,
-		 PangoGlyphString *glyphs)
-{
-  g_return_if_fail (GDK_IS_DRAWABLE (drawable));
-  g_return_if_fail (GDK_IS_GC (gc));
-  
-  real_draw_glyphs (drawable, gc, NULL, font,
-		    x, y, glyphs);
-}
-
-/**
- * gdk_draw_glyphs_transformed:
- * @drawable: a #GdkDrawable
- * @gc: a #GdkGC
- * @matrix: (allow-none): a #PangoMatrix, or %NULL to use an identity transformation
- * @font: the font in which to draw the string
- * @x:       the x position of the start of the string (in Pango
- *           units in user space coordinates)
- * @y:       the y position of the baseline (in Pango units
- *           in user space coordinates)
- * @glyphs:  the glyph string to draw
- * 
- * Renders a #PangoGlyphString onto a drawable, possibly
- * transforming the layed-out coordinates through a transformation
- * matrix. Note that the transformation matrix for @font is not
- * changed, so to produce correct rendering results, the @font
- * must have been loaded using a #PangoContext with an identical
- * transformation matrix to that passed in to this function.
- *
- * See also gdk_draw_glyphs(), gdk_draw_layout().
- *
- * Since: 2.6
- **/
-void
-gdk_draw_glyphs_transformed (GdkDrawable       *drawable,
-			     GdkGC	       *gc,
-			     const PangoMatrix *matrix,
-			     PangoFont         *font,
-			     gint               x,
-			     gint               y,
-			     PangoGlyphString  *glyphs)
-{
-  g_return_if_fail (GDK_IS_DRAWABLE (drawable));
-  g_return_if_fail (GDK_IS_GC (gc));
-
-  real_draw_glyphs (drawable, gc, matrix, font,
-		    x / PANGO_SCALE, y / PANGO_SCALE, glyphs);
-}
-
 static GdkDrawable *
 gdk_drawable_real_get_composite_drawable (GdkDrawable *drawable,
                                           gint         x,
diff --git a/gdk/gdkdrawable.h b/gdk/gdkdrawable.h
index 5a94f84..93d61c3 100644
--- a/gdk/gdkdrawable.h
+++ b/gdk/gdkdrawable.h
@@ -94,13 +94,6 @@ struct _GdkDrawableClass
 			  GdkPoint     *points,
 			  gint          npoints);
 
-  void (*draw_glyphs)    (GdkDrawable      *drawable,
-			  GdkGC	           *gc,
-			  PangoFont        *font,
-			  gint              x,
-			  gint              y,
-			  PangoGlyphString *glyphs);
-
   gint (*get_depth)      (GdkDrawable  *drawable);
   void (*get_size)       (GdkDrawable  *drawable,
                           gint         *width,
@@ -124,14 +117,6 @@ struct _GdkDrawableClass
                                           gint        *composite_x_offset,
                                           gint        *composite_y_offset);
 
-  void (*draw_glyphs_transformed) (GdkDrawable      *drawable,
-				   GdkGC	    *gc,
-				   PangoMatrix      *matrix,
-				   PangoFont        *font,
-				   gint              x,
-				   gint              y,
-				   PangoGlyphString *glyphs);
-
   cairo_surface_t *(*ref_cairo_surface) (GdkDrawable *drawable);
 
   GdkDrawable *(*get_source_drawable) (GdkDrawable *drawable);
@@ -226,12 +211,6 @@ void gdk_draw_lines     (GdkDrawable      *drawable,
 			 const GdkPoint   *points,
 			 gint              n_points);
 
-void gdk_draw_glyphs      (GdkDrawable      *drawable,
-			   GdkGC            *gc,
-			   PangoFont        *font,
-			   gint              x,
-			   gint              y,
-			   PangoGlyphString *glyphs);
 void gdk_draw_layout_line (GdkDrawable      *drawable,
 			   GdkGC            *gc,
 			   gint              x,
@@ -258,14 +237,6 @@ void gdk_draw_layout_with_colors      (GdkDrawable     *drawable,
                                        const GdkColor  *foreground,
                                        const GdkColor  *background);
 
-void gdk_draw_glyphs_transformed (GdkDrawable        *drawable,
-				  GdkGC	             *gc,
-				  const PangoMatrix  *matrix,
-				  PangoFont          *font,
-				  gint                x,
-				  gint                y,
-				  PangoGlyphString   *glyphs);
-
 cairo_region_t *gdk_drawable_get_clip_region    (GdkDrawable *drawable);
 cairo_region_t *gdk_drawable_get_visible_region (GdkDrawable *drawable);
 
diff --git a/gdk/gdkpixmap.c b/gdk/gdkpixmap.c
index dd4eb12..6915cd7 100644
--- a/gdk/gdkpixmap.c
+++ b/gdk/gdkpixmap.c
@@ -69,20 +69,6 @@ static void   gdk_pixmap_draw_lines     (GdkDrawable     *drawable,
 					 GdkPoint        *points,
 					 gint             npoints);
 
-static void gdk_pixmap_draw_glyphs             (GdkDrawable      *drawable,
-						GdkGC            *gc,
-						PangoFont        *font,
-						gint              x,
-						gint              y,
-						PangoGlyphString *glyphs);
-static void gdk_pixmap_draw_glyphs_transformed (GdkDrawable      *drawable,
-						GdkGC            *gc,
-						PangoMatrix      *matrix,
-						PangoFont        *font,
-						gint              x,
-						gint              y,
-						PangoGlyphString *glyphs);
-
 static void   gdk_pixmap_real_get_size  (GdkDrawable     *drawable,
                                          gint            *width,
                                          gint            *height);
@@ -146,8 +132,6 @@ gdk_pixmap_class_init (GdkPixmapObjectClass *klass)
   drawable_class->draw_points = gdk_pixmap_draw_points;
   drawable_class->draw_segments = gdk_pixmap_draw_segments;
   drawable_class->draw_lines = gdk_pixmap_draw_lines;
-  drawable_class->draw_glyphs = gdk_pixmap_draw_glyphs;
-  drawable_class->draw_glyphs_transformed = gdk_pixmap_draw_glyphs_transformed;
   drawable_class->get_depth = gdk_pixmap_real_get_depth;
   drawable_class->get_screen = gdk_pixmap_real_get_screen;
   drawable_class->get_size = gdk_pixmap_real_get_size;
@@ -316,35 +300,6 @@ gdk_pixmap_draw_lines (GdkDrawable *drawable,
 }
 
 static void
-gdk_pixmap_draw_glyphs (GdkDrawable      *drawable,
-                        GdkGC            *gc,
-                        PangoFont        *font,
-                        gint              x,
-                        gint              y,
-                        PangoGlyphString *glyphs)
-{
-  GdkPixmapObject *private = (GdkPixmapObject *)drawable;
-
-  _gdk_gc_remove_drawable_clip (gc);  
-  gdk_draw_glyphs (private->impl, gc, font, x, y, glyphs);
-}
-
-static void
-gdk_pixmap_draw_glyphs_transformed (GdkDrawable      *drawable,
-				    GdkGC            *gc,
-				    PangoMatrix      *matrix,
-				    PangoFont        *font,
-				    gint              x,
-				    gint              y,
-				    PangoGlyphString *glyphs)
-{
-  GdkPixmapObject *private = (GdkPixmapObject *)drawable;
-
-  _gdk_gc_remove_drawable_clip (gc);  
-  gdk_draw_glyphs_transformed (private->impl, gc, matrix, font, x, y, glyphs);
-}
-
-static void
 gdk_pixmap_real_get_size (GdkDrawable *drawable,
                           gint *width,
                           gint *height)
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index e636193..5be5f91 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -264,20 +264,6 @@ static void   gdk_window_draw_lines     (GdkDrawable     *drawable,
 					 GdkPoint        *points,
 					 gint             npoints);
 
-static void gdk_window_draw_glyphs             (GdkDrawable      *drawable,
-						GdkGC            *gc,
-						PangoFont        *font,
-						gint              x,
-						gint              y,
-						PangoGlyphString *glyphs);
-static void gdk_window_draw_glyphs_transformed (GdkDrawable      *drawable,
-						GdkGC            *gc,
-						PangoMatrix      *matrix,
-						PangoFont        *font,
-						gint              x,
-						gint              y,
-						PangoGlyphString *glyphs);
-
 static cairo_surface_t *gdk_window_ref_cairo_surface (GdkDrawable *drawable);
 static cairo_surface_t *gdk_window_create_cairo_surface (GdkDrawable *drawable,
 							 int width,
@@ -461,8 +447,6 @@ gdk_window_class_init (GdkWindowObjectClass *klass)
   drawable_class->draw_points = gdk_window_draw_points;
   drawable_class->draw_segments = gdk_window_draw_segments;
   drawable_class->draw_lines = gdk_window_draw_lines;
-  drawable_class->draw_glyphs = gdk_window_draw_glyphs;
-  drawable_class->draw_glyphs_transformed = gdk_window_draw_glyphs_transformed;
   drawable_class->get_depth = gdk_window_real_get_depth;
   drawable_class->get_screen = gdk_window_real_get_screen;
   drawable_class->get_size = gdk_window_real_get_size;
@@ -4369,69 +4353,6 @@ gdk_window_draw_lines (GdkDrawable *drawable,
   END_DRAW;
 }
 
-static void
-gdk_window_draw_glyphs (GdkDrawable      *drawable,
-			GdkGC            *gc,
-			PangoFont        *font,
-			gint              x,
-			gint              y,
-			PangoGlyphString *glyphs)
-{
-  if (GDK_WINDOW_DESTROYED (drawable))
-    return;
-
-  BEGIN_DRAW;
-  gdk_draw_glyphs (impl, gc, font,
-		   x - x_offset, y - y_offset, glyphs);
-  END_DRAW;
-}
-
-static void
-gdk_window_draw_glyphs_transformed (GdkDrawable      *drawable,
-				    GdkGC            *gc,
-				    PangoMatrix      *matrix,
-				    PangoFont        *font,
-				    gint              x,
-				    gint              y,
-				    PangoGlyphString *glyphs)
-{
-  PangoMatrix tmp_matrix;
-
-  if (GDK_WINDOW_DESTROYED (drawable))
-    return;
-
-  BEGIN_DRAW;
-
-  if (x_offset != 0 || y_offset != 0)
-    {
-      if (matrix)
-	{
-	  tmp_matrix = *matrix;
-	  tmp_matrix.x0 -= x_offset;
-	  tmp_matrix.y0 -= y_offset;
-	  matrix = &tmp_matrix;
-	}
-      else if (GDK_PANGO_UNITS_OVERFLOWS (x_offset, y_offset))
-	{
-	  PangoMatrix identity = PANGO_MATRIX_INIT;
-
-	  tmp_matrix = identity;
-	  tmp_matrix.x0 -= x_offset;
-	  tmp_matrix.y0 -= y_offset;
-	  matrix = &tmp_matrix;
-	}
-      else
-	{
-	  x -= x_offset * PANGO_SCALE;
-	  y -= y_offset * PANGO_SCALE;
-	}
-    }
-
-  gdk_draw_glyphs_transformed (impl, gc, matrix, font, x, y, glyphs);
-
-  END_DRAW;
-}
-
 static cairo_t *
 setup_backing_rect (GdkWindow *window, GdkWindowPaint *paint, int x_offset_cairo, int y_offset_cairo)
 {
diff --git a/gdk/libgdk-x11-2.0.la b/gdk/libgdk-x11-2.0.la
new file mode 100644
index 0000000..1317682
--- /dev/null
+++ b/gdk/libgdk-x11-2.0.la
@@ -0,0 +1,41 @@
+# libgdk-x11-2.0.la - a libtool library file
+# Generated by ltmain.sh (GNU libtool) 2.2.6b
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='libgdk-x11-2.0.so.0'
+
+# Names of this library.
+library_names='libgdk-x11-2.0.so.0.2106.0 libgdk-x11-2.0.so.0 libgdk-x11-2.0.so'
+
+# The name of the static archive.
+old_library=''
+
+# Linker flags that can not go in dependency_libs.
+inherited_linker_flags=' -pthread'
+
+# Libraries that this one depends upon.
+dependency_libs=' /usr/lib64/libpangocairo-1.0.la /usr/lib64/libpangoft2-1.0.la /usr/lib64/libpango-1.0.la -lXext -lXinerama -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes /usr/lib64/libgdk_pixbuf-2.0.la /usr/lib64/libgio-2.0.la -lresolv -lselinux /usr/lib64/libgobject-2.0.la /usr/lib64/libgmodule-2.0.la -ldl /usr/lib64/libgthread-2.0.la -lpthread -lrt /usr/lib64/libglib-2.0.la /usr/lib64/libcairo.la /usr/lib64/libpixman-1.la -lm -lfontconfig -lfreetype -lEGL -lpng12 -lxcb-shm -lxcb-render -lxcb -lXrender -lz -lGL -lX11'
+
+# Names of additional weak libraries provided by this library
+weak_library_names=''
+
+# Version information for libgdk-x11-2.0.
+current=2106
+age=2106
+revision=0
+
+# Is this an already installed library?
+installed=no
+
+# Should we warn about portability when linking against -modules?
+shouldnotlink=no
+
+# Files to dlopen/dlpreopen
+dlopen=''
+dlpreopen=''
+
+# Directory that this library needs to be installed in:
+libdir='/usr/lib64'
diff --git a/gdk/tmp-introspect1tou9S/.libs/GdkX11-3.0 b/gdk/tmp-introspect1tou9S/.libs/GdkX11-3.0
new file mode 100644
index 0000000..da191b8
Binary files /dev/null and b/gdk/tmp-introspect1tou9S/.libs/GdkX11-3.0 differ
diff --git a/gdk/tmp-introspect1tou9S/GdkX11-3.0.c b/gdk/tmp-introspect1tou9S/GdkX11-3.0.c
new file mode 100644
index 0000000..2d05080
--- /dev/null
+++ b/gdk/tmp-introspect1tou9S/GdkX11-3.0.c
@@ -0,0 +1,33 @@
+/* This file is generated, do not edit */
+#include <glib.h>
+#include <girepository.h>
+#include <string.h>
+
+static GOptionEntry entries[] =
+{
+  { NULL }
+};
+
+int
+main(int argc, char **argv)
+{
+  GOptionContext *context;
+  GError *error = NULL;
+
+  if (!g_thread_supported ()) g_thread_init (NULL);
+  g_type_init ();
+
+  
+
+  context = g_option_context_new ("");
+  g_option_context_add_main_entries (context, entries, "girepository-1.0");
+  g_option_context_add_group (context, g_irepository_get_option_group ());
+  if (!g_option_context_parse (context, &argc, &argv, &error))
+    {
+      g_printerr ("introspect failed (%d,%d): %s\n",
+                  error->domain, error->code,
+                  error->message);
+      return 1;
+    }
+  return 0;
+}
diff --git a/gdk/tmp-introspect1tou9S/GdkX11-3.0.o b/gdk/tmp-introspect1tou9S/GdkX11-3.0.o
new file mode 100644
index 0000000..a2b6ec3
Binary files /dev/null and b/gdk/tmp-introspect1tou9S/GdkX11-3.0.o differ
diff --git a/gdk/tmp-introspectJGFWZZ/Gdk-3.0.c b/gdk/tmp-introspectJGFWZZ/Gdk-3.0.c
new file mode 100644
index 0000000..2dce0a0
--- /dev/null
+++ b/gdk/tmp-introspectJGFWZZ/Gdk-3.0.c
@@ -0,0 +1,157 @@
+/* This file is generated, do not edit */
+#include <glib.h>
+#include <girepository.h>
+#include <string.h>
+
+static GOptionEntry entries[] =
+{
+  { NULL }
+};
+
+int
+main(int argc, char **argv)
+{
+  GOptionContext *context;
+  GError *error = NULL;
+
+  if (!g_thread_supported ()) g_thread_init (NULL);
+  g_type_init ();
+
+  
+
+  context = g_option_context_new ("");
+  g_option_context_add_main_entries (context, entries, "girepository-1.0");
+  g_option_context_add_group (context, g_irepository_get_option_group ());
+  if (!g_option_context_parse (context, &argc, &argv, &error))
+    {
+      g_printerr ("introspect failed (%d,%d): %s\n",
+                  error->domain, error->code,
+                  error->message);
+      return 1;
+    }
+  return 0;
+}
+extern GType gdk_colormap_get_type(void);
+extern GType gdk_color_get_type(void);
+extern GType gdk_device_get_type(void);
+extern GType gdk_drag_context_get_type(void);
+extern GType gdk_event_get_type(void);
+extern GType gdk_device_manager_get_type(void);
+extern GType gdk_display_get_type(void);
+extern GType gdk_screen_get_type(void);
+extern GType gdk_app_launch_context_get_type(void);
+extern GType gdk_cursor_get_type(void);
+extern GType gdk_display_manager_get_type(void);
+extern GType gdk_gc_get_type(void);
+extern GType gdk_drawable_get_type(void);
+extern GType gdk_cursor_type_get_type(void);
+extern GType gdk_extension_mode_get_type(void);
+extern GType gdk_input_source_get_type(void);
+extern GType gdk_input_mode_get_type(void);
+extern GType gdk_axis_use_get_type(void);
+extern GType gdk_device_type_get_type(void);
+extern GType gdk_drag_action_get_type(void);
+extern GType gdk_drag_protocol_get_type(void);
+extern GType gdk_filter_return_get_type(void);
+extern GType gdk_event_type_get_type(void);
+extern GType gdk_visibility_state_get_type(void);
+extern GType gdk_scroll_direction_get_type(void);
+extern GType gdk_notify_type_get_type(void);
+extern GType gdk_crossing_mode_get_type(void);
+extern GType gdk_property_state_get_type(void);
+extern GType gdk_window_state_get_type(void);
+extern GType gdk_setting_action_get_type(void);
+extern GType gdk_owner_change_get_type(void);
+extern GType gdk_cap_style_get_type(void);
+extern GType gdk_fill_get_type(void);
+extern GType gdk_function_get_type(void);
+extern GType gdk_join_style_get_type(void);
+extern GType gdk_line_style_get_type(void);
+extern GType gdk_subwindow_mode_get_type(void);
+extern GType gdk_gc_values_mask_get_type(void);
+extern GType gdk_prop_mode_get_type(void);
+extern GType gdk_byte_order_get_type(void);
+extern GType gdk_modifier_type_get_type(void);
+extern GType gdk_status_get_type(void);
+extern GType gdk_grab_status_get_type(void);
+extern GType gdk_grab_ownership_get_type(void);
+extern GType gdk_event_mask_get_type(void);
+extern GType gdk_visual_type_get_type(void);
+extern GType gdk_window_class_get_type(void);
+extern GType gdk_window_type_get_type(void);
+extern GType gdk_window_attributes_type_get_type(void);
+extern GType gdk_window_hints_get_type(void);
+extern GType gdk_window_type_hint_get_type(void);
+extern GType gdk_wm_decoration_get_type(void);
+extern GType gdk_wm_function_get_type(void);
+extern GType gdk_gravity_get_type(void);
+extern GType gdk_window_edge_get_type(void);
+extern GType gdk_keymap_get_type(void);
+extern GType gdk_pango_renderer_get_type(void);
+extern GType gdk_pixmap_get_type(void);
+extern GType gdk_window_object_get_type(void);
+extern GType gdk_visual_get_type(void);
+extern GType gdk_rectangle_get_type(void);
+GType (*GI_GET_TYPE_FUNCS_[])(void) = {
+  gdk_colormap_get_type,
+  gdk_color_get_type,
+  gdk_device_get_type,
+  gdk_drag_context_get_type,
+  gdk_event_get_type,
+  gdk_device_manager_get_type,
+  gdk_display_get_type,
+  gdk_screen_get_type,
+  gdk_app_launch_context_get_type,
+  gdk_cursor_get_type,
+  gdk_display_manager_get_type,
+  gdk_gc_get_type,
+  gdk_drawable_get_type,
+  gdk_cursor_type_get_type,
+  gdk_extension_mode_get_type,
+  gdk_input_source_get_type,
+  gdk_input_mode_get_type,
+  gdk_axis_use_get_type,
+  gdk_device_type_get_type,
+  gdk_drag_action_get_type,
+  gdk_drag_protocol_get_type,
+  gdk_filter_return_get_type,
+  gdk_event_type_get_type,
+  gdk_visibility_state_get_type,
+  gdk_scroll_direction_get_type,
+  gdk_notify_type_get_type,
+  gdk_crossing_mode_get_type,
+  gdk_property_state_get_type,
+  gdk_window_state_get_type,
+  gdk_setting_action_get_type,
+  gdk_owner_change_get_type,
+  gdk_cap_style_get_type,
+  gdk_fill_get_type,
+  gdk_function_get_type,
+  gdk_join_style_get_type,
+  gdk_line_style_get_type,
+  gdk_subwindow_mode_get_type,
+  gdk_gc_values_mask_get_type,
+  gdk_prop_mode_get_type,
+  gdk_byte_order_get_type,
+  gdk_modifier_type_get_type,
+  gdk_status_get_type,
+  gdk_grab_status_get_type,
+  gdk_grab_ownership_get_type,
+  gdk_event_mask_get_type,
+  gdk_visual_type_get_type,
+  gdk_window_class_get_type,
+  gdk_window_type_get_type,
+  gdk_window_attributes_type_get_type,
+  gdk_window_hints_get_type,
+  gdk_window_type_hint_get_type,
+  gdk_wm_decoration_get_type,
+  gdk_wm_function_get_type,
+  gdk_gravity_get_type,
+  gdk_window_edge_get_type,
+  gdk_keymap_get_type,
+  gdk_pango_renderer_get_type,
+  gdk_pixmap_get_type,
+  gdk_window_object_get_type,
+  gdk_visual_get_type,
+  gdk_rectangle_get_type
+};
diff --git a/gdk/tmp-introspectJGFWZZ/Gdk-3.0.o b/gdk/tmp-introspectJGFWZZ/Gdk-3.0.o
new file mode 100644
index 0000000..7278e38
Binary files /dev/null and b/gdk/tmp-introspectJGFWZZ/Gdk-3.0.o differ
diff --git a/gdk/tmp-introspectTWD5cR/Gdk-3.0.c b/gdk/tmp-introspectTWD5cR/Gdk-3.0.c
new file mode 100644
index 0000000..1c05cb0
--- /dev/null
+++ b/gdk/tmp-introspectTWD5cR/Gdk-3.0.c
@@ -0,0 +1,163 @@
+/* This file is generated, do not edit */
+#include <glib.h>
+#include <girepository.h>
+#include <string.h>
+
+static GOptionEntry entries[] =
+{
+  { NULL }
+};
+
+int
+main(int argc, char **argv)
+{
+  GOptionContext *context;
+  GError *error = NULL;
+
+  if (!g_thread_supported ()) g_thread_init (NULL);
+  g_type_init ();
+
+  
+
+  context = g_option_context_new ("");
+  g_option_context_add_main_entries (context, entries, "girepository-1.0");
+  g_option_context_add_group (context, g_irepository_get_option_group ());
+  if (!g_option_context_parse (context, &argc, &argv, &error))
+    {
+      g_printerr ("introspect failed (%d,%d): %s\n",
+                  error->domain, error->code,
+                  error->message);
+      return 1;
+    }
+  return 0;
+}
+extern GType gdk_colormap_get_type(void);
+extern GType gdk_color_get_type(void);
+extern GType gdk_device_get_type(void);
+extern GType gdk_drag_context_get_type(void);
+extern GType gdk_event_get_type(void);
+extern GType gdk_device_manager_get_type(void);
+extern GType gdk_display_get_type(void);
+extern GType gdk_screen_get_type(void);
+extern GType gdk_app_launch_context_get_type(void);
+extern GType gdk_cursor_get_type(void);
+extern GType gdk_display_manager_get_type(void);
+extern GType gdk_gc_get_type(void);
+extern GType gdk_drawable_get_type(void);
+extern GType gdk_cursor_type_get_type(void);
+extern GType gdk_extension_mode_get_type(void);
+extern GType gdk_input_source_get_type(void);
+extern GType gdk_input_mode_get_type(void);
+extern GType gdk_axis_use_get_type(void);
+extern GType gdk_device_type_get_type(void);
+extern GType gdk_drag_action_get_type(void);
+extern GType gdk_drag_protocol_get_type(void);
+extern GType gdk_filter_return_get_type(void);
+extern GType gdk_event_type_get_type(void);
+extern GType gdk_visibility_state_get_type(void);
+extern GType gdk_scroll_direction_get_type(void);
+extern GType gdk_notify_type_get_type(void);
+extern GType gdk_crossing_mode_get_type(void);
+extern GType gdk_property_state_get_type(void);
+extern GType gdk_window_state_get_type(void);
+extern GType gdk_setting_action_get_type(void);
+extern GType gdk_owner_change_get_type(void);
+extern GType gdk_cap_style_get_type(void);
+extern GType gdk_fill_get_type(void);
+extern GType gdk_function_get_type(void);
+extern GType gdk_join_style_get_type(void);
+extern GType gdk_line_style_get_type(void);
+extern GType gdk_subwindow_mode_get_type(void);
+extern GType gdk_gc_values_mask_get_type(void);
+extern GType gdk_image_type_get_type(void);
+extern GType gdk_prop_mode_get_type(void);
+extern GType gdk_rgb_dither_get_type(void);
+extern GType gdk_byte_order_get_type(void);
+extern GType gdk_modifier_type_get_type(void);
+extern GType gdk_status_get_type(void);
+extern GType gdk_grab_status_get_type(void);
+extern GType gdk_grab_ownership_get_type(void);
+extern GType gdk_event_mask_get_type(void);
+extern GType gdk_visual_type_get_type(void);
+extern GType gdk_window_class_get_type(void);
+extern GType gdk_window_type_get_type(void);
+extern GType gdk_window_attributes_type_get_type(void);
+extern GType gdk_window_hints_get_type(void);
+extern GType gdk_window_type_hint_get_type(void);
+extern GType gdk_wm_decoration_get_type(void);
+extern GType gdk_wm_function_get_type(void);
+extern GType gdk_gravity_get_type(void);
+extern GType gdk_window_edge_get_type(void);
+extern GType gdk_image_get_type(void);
+extern GType gdk_keymap_get_type(void);
+extern GType gdk_pango_renderer_get_type(void);
+extern GType gdk_pixmap_get_type(void);
+extern GType gdk_window_object_get_type(void);
+extern GType gdk_visual_get_type(void);
+extern GType gdk_rectangle_get_type(void);
+GType (*GI_GET_TYPE_FUNCS_[])(void) = {
+  gdk_colormap_get_type,
+  gdk_color_get_type,
+  gdk_device_get_type,
+  gdk_drag_context_get_type,
+  gdk_event_get_type,
+  gdk_device_manager_get_type,
+  gdk_display_get_type,
+  gdk_screen_get_type,
+  gdk_app_launch_context_get_type,
+  gdk_cursor_get_type,
+  gdk_display_manager_get_type,
+  gdk_gc_get_type,
+  gdk_drawable_get_type,
+  gdk_cursor_type_get_type,
+  gdk_extension_mode_get_type,
+  gdk_input_source_get_type,
+  gdk_input_mode_get_type,
+  gdk_axis_use_get_type,
+  gdk_device_type_get_type,
+  gdk_drag_action_get_type,
+  gdk_drag_protocol_get_type,
+  gdk_filter_return_get_type,
+  gdk_event_type_get_type,
+  gdk_visibility_state_get_type,
+  gdk_scroll_direction_get_type,
+  gdk_notify_type_get_type,
+  gdk_crossing_mode_get_type,
+  gdk_property_state_get_type,
+  gdk_window_state_get_type,
+  gdk_setting_action_get_type,
+  gdk_owner_change_get_type,
+  gdk_cap_style_get_type,
+  gdk_fill_get_type,
+  gdk_function_get_type,
+  gdk_join_style_get_type,
+  gdk_line_style_get_type,
+  gdk_subwindow_mode_get_type,
+  gdk_gc_values_mask_get_type,
+  gdk_image_type_get_type,
+  gdk_prop_mode_get_type,
+  gdk_rgb_dither_get_type,
+  gdk_byte_order_get_type,
+  gdk_modifier_type_get_type,
+  gdk_status_get_type,
+  gdk_grab_status_get_type,
+  gdk_grab_ownership_get_type,
+  gdk_event_mask_get_type,
+  gdk_visual_type_get_type,
+  gdk_window_class_get_type,
+  gdk_window_type_get_type,
+  gdk_window_attributes_type_get_type,
+  gdk_window_hints_get_type,
+  gdk_window_type_hint_get_type,
+  gdk_wm_decoration_get_type,
+  gdk_wm_function_get_type,
+  gdk_gravity_get_type,
+  gdk_window_edge_get_type,
+  gdk_image_get_type,
+  gdk_keymap_get_type,
+  gdk_pango_renderer_get_type,
+  gdk_pixmap_get_type,
+  gdk_window_object_get_type,
+  gdk_visual_get_type,
+  gdk_rectangle_get_type
+};
diff --git a/gdk/tmp-introspectTWD5cR/Gdk-3.0.o b/gdk/tmp-introspectTWD5cR/Gdk-3.0.o
new file mode 100644
index 0000000..f7983e9
Binary files /dev/null and b/gdk/tmp-introspectTWD5cR/Gdk-3.0.o differ



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]