lightdm-rs/gir-files/Gdk-4.0.gir

22635 lines
1.1 MiB

<?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 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" version="1.2">
<include name="GdkPixbuf" version="2.0"/>
<include name="Gio" version="2.0"/>
<include name="Pango" version="1.0"/>
<include name="cairo" version="1.0"/>
<package name="gtk4"/>
<c:include name="gdk/gdk.h"/>
<namespace name="Gdk" version="4.0" shared-library="libgtk-4.so.0.9600.0" c:identifier-prefixes="Gdk" c:symbol-prefixes="gdk">
<alias name="Atom" c:type="GdkAtom">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="111">An opaque type representing a string as an index into a table
of strings on the X server.</doc>
<type name="utf8" c:type="const char*"/>
</alias>
<constant name="ACTION_ALL" value="7" c:type="GDK_ACTION_ALL">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="585">Defines all possible DND actions. This can be used in gdk_drop_status()
messages when any drop can be accepted or a more specific drop method
is not yet known.</doc>
<type name="gint" c:type="gint"/>
</constant>
<bitfield name="AnchorHints" glib:type-name="GdkAnchorHints" glib:get-type="gdk_anchor_hints_get_type" c:type="GdkAnchorHints">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="186">Positioning hints for aligning a surface relative to a rectangle.
These hints determine how the surface should be positioned in the case that
the surface would fall off-screen if placed in its ideal position.
For example, %GDK_ANCHOR_FLIP_X will replace %GDK_GRAVITY_NORTH_WEST with
%GDK_GRAVITY_NORTH_EAST and vice versa if the surface extends beyond the left
or right edges of the monitor.
If %GDK_ANCHOR_SLIDE_X is set, the surface can be shifted horizontally to fit
on-screen. If %GDK_ANCHOR_RESIZE_X is set, the surface can be shrunken
horizontally to fit.
In general, when multiple flags are set, flipping should take precedence over
sliding, which should take precedence over resizing.</doc>
<member name="flip_x" value="1" c:identifier="GDK_ANCHOR_FLIP_X" glib:nick="flip-x">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="188">allow flipping anchors horizontally</doc>
</member>
<member name="flip_y" value="2" c:identifier="GDK_ANCHOR_FLIP_Y" glib:nick="flip-y">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="189">allow flipping anchors vertically</doc>
</member>
<member name="slide_x" value="4" c:identifier="GDK_ANCHOR_SLIDE_X" glib:nick="slide-x">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="190">allow sliding surface horizontally</doc>
</member>
<member name="slide_y" value="8" c:identifier="GDK_ANCHOR_SLIDE_Y" glib:nick="slide-y">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="191">allow sliding surface vertically</doc>
</member>
<member name="resize_x" value="16" c:identifier="GDK_ANCHOR_RESIZE_X" glib:nick="resize-x">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="192">allow resizing surface horizontally</doc>
</member>
<member name="resize_y" value="32" c:identifier="GDK_ANCHOR_RESIZE_Y" glib:nick="resize-y">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="193">allow resizing surface vertically</doc>
</member>
<member name="flip" value="3" c:identifier="GDK_ANCHOR_FLIP" glib:nick="flip">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="194">allow flipping anchors on both axes</doc>
</member>
<member name="slide" value="12" c:identifier="GDK_ANCHOR_SLIDE" glib:nick="slide">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="195">allow sliding surface on both axes</doc>
</member>
<member name="resize" value="48" c:identifier="GDK_ANCHOR_RESIZE" glib:nick="resize">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="196">allow resizing surface on both axes</doc>
</member>
</bitfield>
<class name="AppLaunchContext" c:symbol-prefix="app_launch_context" c:type="GdkAppLaunchContext" parent="Gio.AppLaunchContext" glib:type-name="GdkAppLaunchContext" glib:get-type="gdk_app_launch_context_get_type">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="28">GdkAppLaunchContext is an implementation of #GAppLaunchContext that
handles launching an application in a graphical context. It provides
startup notification and allows to launch applications on a specific
screen or workspace.
## Launching an application
|[&lt;!-- language="C" --&gt;
GdkAppLaunchContext *context;
context = gdk_display_get_app_launch_context (display);
gdk_app_launch_context_set_display (display);
gdk_app_launch_context_set_timestamp (event-&gt;time);
if (!g_app_info_launch_default_for_uri ("http://www.gtk.org", context, &amp;error))
g_warning ("Launching failed: %s\n", error-&gt;message);
g_object_unref (context);
]|</doc>
<method name="set_desktop" c:identifier="gdk_app_launch_context_set_desktop">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="176">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
[Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec).
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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="178">a #GdkAppLaunchContext</doc>
<type name="AppLaunchContext" c:type="GdkAppLaunchContext*"/>
</instance-parameter>
<parameter name="desktop" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="179">the number of a workspace, or -1</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="set_icon" c:identifier="gdk_app_launch_context_set_icon">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="221">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().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="223">a #GdkAppLaunchContext</doc>
<type name="AppLaunchContext" c:type="GdkAppLaunchContext*"/>
</instance-parameter>
<parameter name="icon" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="224">a #GIcon, or %NULL</doc>
<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 xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="251">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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="253">a #GdkAppLaunchContext</doc>
<type name="AppLaunchContext" c:type="GdkAppLaunchContext*"/>
</instance-parameter>
<parameter name="icon_name" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="254">an icon name, or %NULL</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</method>
<method name="set_timestamp" c:identifier="gdk_app_launch_context_set_timestamp">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="199">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 'focus stealing
prevention'.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="201">a #GdkAppLaunchContext</doc>
<type name="AppLaunchContext" c:type="GdkAppLaunchContext*"/>
</instance-parameter>
<parameter name="timestamp" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkapplaunchcontext.c" line="202">a timestamp</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<type name="Display"/>
</property>
</class>
<bitfield name="AxisFlags" glib:type-name="GdkAxisFlags" glib:get-type="gdk_axis_flags_get_type" c:type="GdkAxisFlags">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="538">Flags describing the current capabilities of a device/tool.</doc>
<member name="x" value="2" c:identifier="GDK_AXIS_FLAG_X" glib:nick="x">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="540">X axis is present</doc>
</member>
<member name="y" value="4" c:identifier="GDK_AXIS_FLAG_Y" glib:nick="y">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="541">Y axis is present</doc>
</member>
<member name="pressure" value="8" c:identifier="GDK_AXIS_FLAG_PRESSURE" glib:nick="pressure">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="542">Pressure axis is present</doc>
</member>
<member name="xtilt" value="16" c:identifier="GDK_AXIS_FLAG_XTILT" glib:nick="xtilt">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="543">X tilt axis is present</doc>
</member>
<member name="ytilt" value="32" c:identifier="GDK_AXIS_FLAG_YTILT" glib:nick="ytilt">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="544">Y tilt axis is present</doc>
</member>
<member name="wheel" value="64" c:identifier="GDK_AXIS_FLAG_WHEEL" glib:nick="wheel">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="545">Wheel axis is present</doc>
</member>
<member name="distance" value="128" c:identifier="GDK_AXIS_FLAG_DISTANCE" glib:nick="distance">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="546">Distance axis is present</doc>
</member>
<member name="rotation" value="256" c:identifier="GDK_AXIS_FLAG_ROTATION" glib:nick="rotation">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="547">Z-axis rotation is present</doc>
</member>
<member name="slider" value="512" c:identifier="GDK_AXIS_FLAG_SLIDER" glib:nick="slider">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="548">Slider axis is present</doc>
</member>
</bitfield>
<enumeration name="AxisUse" glib:type-name="GdkAxisUse" glib:get-type="gdk_axis_use_get_type" c:type="GdkAxisUse">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="501">An enumeration describing the way in which a device
axis (valuator) maps onto the predefined valuator
types that GTK understands.
Note that the X and Y axes are not really needed; pointer devices
report their location via the x/y members of events regardless. Whether
X and Y are present as axes depends on the GDK backend.</doc>
<member name="ignore" value="0" c:identifier="GDK_AXIS_IGNORE" glib:nick="ignore">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="503">the axis is ignored.</doc>
</member>
<member name="x" value="1" c:identifier="GDK_AXIS_X" glib:nick="x">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="504">the axis is used as the x axis.</doc>
</member>
<member name="y" value="2" c:identifier="GDK_AXIS_Y" glib:nick="y">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="505">the axis is used as the y axis.</doc>
</member>
<member name="pressure" value="3" c:identifier="GDK_AXIS_PRESSURE" glib:nick="pressure">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="506">the axis is used for pressure information.</doc>
</member>
<member name="xtilt" value="4" c:identifier="GDK_AXIS_XTILT" glib:nick="xtilt">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="507">the axis is used for x tilt information.</doc>
</member>
<member name="ytilt" value="5" c:identifier="GDK_AXIS_YTILT" glib:nick="ytilt">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="508">the axis is used for y tilt information.</doc>
</member>
<member name="wheel" value="6" c:identifier="GDK_AXIS_WHEEL" glib:nick="wheel">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="509">the axis is used for wheel information.</doc>
</member>
<member name="distance" value="7" c:identifier="GDK_AXIS_DISTANCE" glib:nick="distance">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="510">the axis is used for pen/tablet distance information</doc>
</member>
<member name="rotation" value="8" c:identifier="GDK_AXIS_ROTATION" glib:nick="rotation">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="511">the axis is used for pen rotation information</doc>
</member>
<member name="slider" value="9" c:identifier="GDK_AXIS_SLIDER" glib:nick="slider">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="512">the axis is used for pen slider information</doc>
</member>
<member name="last" value="10" c:identifier="GDK_AXIS_LAST" glib:nick="last">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="513">a constant equal to the numerically highest axis value.</doc>
</member>
</enumeration>
<constant name="BUTTON_MIDDLE" value="2" c:type="GDK_BUTTON_MIDDLE">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="89">The middle button.</doc>
<type name="gint" c:type="gint"/>
</constant>
<constant name="BUTTON_PRIMARY" value="1" c:type="GDK_BUTTON_PRIMARY">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="81">The primary button. This is typically the left mouse button, or the
right button in a left-handed setup.</doc>
<type name="gint" c:type="gint"/>
</constant>
<constant name="BUTTON_SECONDARY" value="3" c:type="GDK_BUTTON_SECONDARY">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="96">The secondary button. This is typically the right mouse button, or the
left button in a left-handed setup.</doc>
<type name="gint" c:type="gint"/>
</constant>
<enumeration name="ByteOrder" glib:type-name="GdkByteOrder" glib:get-type="gdk_byte_order_get_type" c:type="GdkByteOrder">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="144">A set of values describing the possible byte-orders
for storing pixel values in memory.</doc>
<member name="lsb_first" value="0" c:identifier="GDK_LSB_FIRST" glib:nick="lsb-first">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="146">The values are stored with the least-significant byte
first. For instance, the 32-bit value 0xffeecc would be stored
in memory as 0xcc, 0xee, 0xff, 0x00.</doc>
</member>
<member name="msb_first" value="1" c:identifier="GDK_MSB_FIRST" glib:nick="msb-first">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="149">The values are stored with the most-significant byte
first. For instance, the 32-bit value 0xffeecc would be stored
in memory as 0x00, 0xff, 0xee, 0xcc.</doc>
</member>
</enumeration>
<constant name="CURRENT_TIME" value="0" c:type="GDK_CURRENT_TIME">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="49">Represents the current time, and can be used anywhere a time is expected.</doc>
<type name="gint" c:type="gint"/>
</constant>
<class name="CairoContext" c:symbol-prefix="cairo_context" c:type="GdkCairoContext" parent="DrawContext" abstract="1" glib:type-name="GdkCairoContext" glib:get-type="gdk_cairo_context_get_type">
<doc xml:space="preserve" filename="../gdk/gdkcairocontext.c" line="30">#GdkCairoContext is an object representing the platform-specific
draw context.
#GdkCairoContexts are created for a #GdkDisplay using
gdk_surface_create_cairo_context(), and the context can then be used
to draw on that #GdkSurface.</doc>
<method name="cairo_create" c:identifier="gdk_cairo_context_cairo_create">
<doc xml:space="preserve" filename="../gdk/gdkcairocontext.c" line="69">Retrieves a Cairo context to be used to draw on the #GdkSurface
of @context. A call to gdk_draw_context_begin_frame() with this
@context must have been done or this function will return %NULL.
The returned context is guaranteed to be valid until
gdk_draw_context_end_frame() is called.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcairocontext.c" line="80">a Cairo context to be used
to draw the contents of the #GdkSurface. %NULL is returned
when @contet is not drawing.</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairocontext.c" line="71">a #GdkCairoContext that is currently drawing</doc>
<type name="CairoContext" c:type="GdkCairoContext*"/>
</instance-parameter>
</parameters>
</method>
</class>
<class name="Clipboard" c:symbol-prefix="clipboard" c:type="GdkClipboard" parent="GObject.Object" glib:type-name="GdkClipboard" glib:get-type="gdk_clipboard_get_type">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="35">The #GdkClipboard object represents a clipboard of data shared
between different applications or between different parts of
the same application.
To get a GdkClipboard object, use gdk_display_get_clipboard() or
gdk_display_get_primary_clipboard(). You can find out about the data that
is currently available in a clipboard using gdk_clipboard_get_formats().
To make text or image data available in a clipboard, use gdk_clipboard_set_text() or
gdk_clipboard_set_texture(). For other data, you can use gdk_clipboard_set_content(),
which takes a #GdkContentProvider object.
To read textual or image data from a clipboard, use gdk_clipboard_read_text_async() or
gdk_clipboard_read_texture_async(). For other data, use gdk_clipboard_read_async(),
which provides a #GInputStream object.</doc>
<method name="get_content" c:identifier="gdk_clipboard_get_content">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="504">Returns the #GdkContentProvider currently set on @clipboard. If the
@clipboard is empty or its contents are not owned by the current process,
%NULL will be returned.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="512">The content of a clipboard or %NULL
if the clipboard does not maintain any content.</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="506">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_clipboard_get_display">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="446">Gets the #GdkDisplay that the clipboard was created for.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="452">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="448">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_formats" c:identifier="gdk_clipboard_get_formats">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="464">Gets the formats that the clipboard can provide its current contents in.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="470">The formats of the clipboard</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="466">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_local" c:identifier="gdk_clipboard_is_local">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="482">Returns if the clipboard is local. A clipboard is considered local if it was
last claimed by the running application.
Note that gdk_clipboard_get_content() may return %NULL even on a local
clipboard. In this case the clipboard is empty.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="492">%TRUE if the clipboard is local</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="484">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
</parameters>
</method>
<method name="read_async" c:identifier="gdk_clipboard_read_async">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="633">Asynchronously requests an input stream to read the @clipboard's
contents from. When the operation is finished @callback will be called.
You can then call gdk_clipboard_read_finish() to get the result of the
operation.
The clipboard will choose the most suitable mime type from the given list
to fulfill the request, preferring the ones listed first.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="635">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="mime_types" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="636">a %NULL-terminated array of mime types to choose from</doc>
<type name="utf8" c:type="const char**"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="637">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="639">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="4">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="640">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="641">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_finish" c:identifier="gdk_clipboard_read_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="673">Finishes an asynchronous clipboard read started with gdk_clipboard_read_async().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="684">a #GInputStream or %NULL on error.</doc>
<type name="Gio.InputStream" c:type="GInputStream*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="675">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="676">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
<parameter name="out_mime_type" direction="out" caller-allocates="0" transfer-ownership="none" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="677">pointer to store
the chosen mime type in or %NULL</doc>
<type name="utf8" c:type="const char**"/>
</parameter>
</parameters>
</method>
<method name="read_text_async" c:identifier="gdk_clipboard_read_text_async">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="956">Asynchronously request the @clipboard contents converted to a string.
When the operation is finished @callback will be called. You can then
call gdk_clipboard_read_text_finish() to get the result.
This is a simple wrapper around gdk_clipboard_read_value_async(). Use
that function or gdk_clipboard_read_async() directly if you need more
control over the operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="958">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="959">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="2">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="960">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="961">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_text_finish" c:identifier="gdk_clipboard_read_text_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="990">Finishes an asynchronous clipboard read started with
gdk_clipboard_read_text_async().</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1000">a new string or %NULL on error.</doc>
<type name="utf8" c:type="char*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="992">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="993">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<method name="read_texture_async" c:identifier="gdk_clipboard_read_texture_async">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="892">Asynchronously request the @clipboard contents converted to a #GdkPixbuf.
When the operation is finished @callback will be called. You can then
call gdk_clipboard_read_texture_finish() to get the result.
This is a simple wrapper around gdk_clipboard_read_value_async(). Use
that function or gdk_clipboard_read_async() directly if you need more
control over the operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="894">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="895">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="2">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="896">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="897">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_texture_finish" c:identifier="gdk_clipboard_read_texture_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="926">Finishes an asynchronous clipboard read started with
gdk_clipboard_read_texture_async().</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="936">a new #GdkTexture or %NULL on error.</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="928">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="929">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<method name="read_value_async" c:identifier="gdk_clipboard_read_value_async">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="828">Asynchronously request the @clipboard contents converted to the given
@type. When the operation is finished @callback will be called.
You can then call gdk_clipboard_read_value_finish() to get the resulting
#GValue.
For local clipboard contents that are available in the given #GType, the
value will be copied directly. Otherwise, GDK will try to use
gdk_content_deserialize_async() to convert the clipboard's data.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="830">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="831">a #GType to read</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="832">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="834">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="4">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="835">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="836">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_value_finish" c:identifier="gdk_clipboard_read_value_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="868">Finishes an asynchronous clipboard read started with
gdk_clipboard_read_value_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="878">a #GValue containing the result.</doc>
<type name="GObject.Value" c:type="const GValue*"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="870">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="871">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<method name="set" c:identifier="gdk_clipboard_set" shadowed-by="set_value" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1242">Sets the clipboard to contain the value collected from the given
varargs.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1244">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1245">type of value to set</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="..." transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1246">value contents conforming to @type</doc>
<varargs/>
</parameter>
</parameters>
</method>
<method name="set_content" c:identifier="gdk_clipboard_set_content">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1188">Sets a new content provider on @clipboard. The clipboard will claim the
#GdkDisplay's resources and advertise these new contents to other
applications.
In the rare case of a failure, this function will return %FALSE. The
clipboard will then continue reporting its old contents and ignore
@provider.
If the contents are read by either an external application or the
@clipboard's read functions, @clipboard will select the best format to
transfer the contents and then request that format from @provider.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1206">%TRUE if setting the clipboard succeeded</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1190">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="provider" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1191">the new contents of @clipboard or
%NULL to clear the clipboard</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
</parameters>
</method>
<method name="set_text" c:identifier="gdk_clipboard_set_text" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1323">Puts the given @text into the clipboard.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1325">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="text" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1326">Text to put into the clipboard</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</method>
<method name="set_texture" c:identifier="gdk_clipboard_set_texture" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1339">Puts the given @texture into the clipboard.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1341">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="texture" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1342">a #GdkTexture to put into the clipboard</doc>
<type name="Texture" c:type="GdkTexture*"/>
</parameter>
</parameters>
</method>
<method name="set_valist" c:identifier="gdk_clipboard_set_valist" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1265">Sets the clipboard to contain the value collected from the given
@args.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1267">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1268">type of value to set</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="args" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1269">varargs containing the value of @type</doc>
<type name="va_list" c:type="va_list"/>
</parameter>
</parameters>
</method>
<method name="set_value" c:identifier="gdk_clipboard_set_value" shadows="set">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1301">Sets the @clipboard to contain the given @value.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1303">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="1304">a #GValue to set</doc>
<type name="GObject.Value" c:type="const GValue*"/>
</parameter>
</parameters>
</method>
<method name="store_async" c:identifier="gdk_clipboard_store_async">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="525">Asynchronously instructs the @clipboard to store its contents remotely to
preserve them for later usage. If the clipboard is not local, this function
does nothing but report success.
This function is called automatically when gtk_main() or #GtkApplication
exit, so you likely don't need to call it.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="527">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="528">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="530">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="3">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="531">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="532">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="store_finish" c:identifier="gdk_clipboard_store_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="572">Finishes an asynchronous clipboard store started with gdk_clipboard_store_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="581">%TRUE if storing was successful.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="clipboard" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="574">a #GdkClipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="575">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<property name="content" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="405">The #GdkContentProvider or %NULL if the clipboard is empty or contents are
provided otherwise.</doc>
<type name="ContentProvider"/>
</property>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="362">The #GdkDisplay that the clipboard belongs to.</doc>
<type name="Display"/>
</property>
<property name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="377">The possible formats that the clipboard can provide its data in.</doc>
<type name="ContentFormats"/>
</property>
<property name="local" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="391">%TRUE if the contents of the clipboard are owned by this process.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<glib:signal name="changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkclipboard.c" line="420">The ::changed signal is emitted when the clipboard changes ownership.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<callback name="ContentDeserializeFunc" c:type="GdkContentDeserializeFunc">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.h" line="42">The type of a function that can be registered with gdk_content_register_deserializer().
When the function gets called to operate on content, it can call functions on the
@deserializer object to obtain the mime type, input stream, user data, etc. for its
operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.h" line="44">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</parameter>
</parameters>
</callback>
<class name="ContentDeserializer" c:symbol-prefix="content_deserializer" c:type="GdkContentDeserializer" parent="GObject.Object" glib:type-name="GdkContentDeserializer" glib:get-type="gdk_content_deserializer_get_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="30">A GdkContentDeserializer is used to deserialize content received via
inter-application data transfers.</doc>
<implements name="Gio.AsyncResult"/>
<method name="get_cancellable" c:identifier="gdk_content_deserializer_get_cancellable">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="245">Gets the cancellable that was passed to gdk_content_deserialize_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="251">the cancellable for the current operation</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="247">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_gtype" c:identifier="gdk_content_deserializer_get_gtype">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="181">Gets the GType to create an instance of.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="187">the GType for the current operation</doc>
<type name="GType" c:type="GType"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="183">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_input_stream" c:identifier="gdk_content_deserializer_get_input_stream">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="213">Gets the input stream that was passed to gdk_content_deserialize_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="219">the input stream for the current operation</doc>
<type name="Gio.InputStream" c:type="GInputStream*"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="215">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_mime_type" c:identifier="gdk_content_deserializer_get_mime_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="165">Gets the mime type to deserialize from.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="171">the mime type for the current operation</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="167">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_priority" c:identifier="gdk_content_deserializer_get_priority">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="229">Gets the io priority that was passed to gdk_content_deserialize_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="235">the io priority for the current operation</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="231">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_task_data" c:identifier="gdk_content_deserializer_get_task_data">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="299">Gets the data that was associated with @deserializer via gdk_content_deserializer_set_task_data().</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="305">the task data for @deserializer</doc>
<type name="gpointer" c:type="gpointer"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="301">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_user_data" c:identifier="gdk_content_deserializer_get_user_data">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="261">Gets the user data that was passed when the deserializer was registered.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="267">the user data for this deserializer</doc>
<type name="gpointer" c:type="gpointer"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="263">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_value" c:identifier="gdk_content_deserializer_get_value">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="197">Gets the #GValue to store the deserialized object in.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="203">the #GValue for the current operation</doc>
<type name="GObject.Value" c:type="GValue*"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="199">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="return_error" c:identifier="gdk_content_deserializer_return_error">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="348">Indicate that the deserialization has ended with an error.
This function consumes @error.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="350">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
<parameter name="error" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="351">a #GError</doc>
<type name="GLib.Error" c:type="GError*"/>
</parameter>
</parameters>
</method>
<method name="return_success" c:identifier="gdk_content_deserializer_return_success">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="328">Indicate that the deserialization has been successfully completed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="330">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_task_data" c:identifier="gdk_content_deserializer_set_task_data">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="277">Associate data with the current deserialization operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="deserializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="279">a #GdkContentDeserializer</doc>
<type name="ContentDeserializer" c:type="GdkContentDeserializer*"/>
</instance-parameter>
<parameter name="data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="280">data to associate with this operation</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
<parameter name="notify" transfer-ownership="none" scope="async">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="281">destroy notify for @data</doc>
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
</parameter>
</parameters>
</method>
</class>
<record name="ContentFormats" c:type="GdkContentFormats" glib:type-name="GdkContentFormats" glib:get-type="gdk_content_formats_get_type" c:symbol-prefix="content_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="18">This section describes the #GdkContentFormats structure that is used to
advertise and negotiate the format of content passed between different
widgets, windows or applications using for example the clipboard or
drag'n'drop.
GDK supports content in 2 forms: #GType and mime type.
Using #GTypes is meant only for in-process content transfers. Mime types
are meant to be used for data passing both in-process and out-of-process.
The details of how data is passed is described in the documentation of
the actual implementations.
A #GdkContentFormats describes a set of possible formats content can be
exchanged in. It is assumed that this set is ordered. #GTypes are more
important than mime types. Order between different #Gtypes or mime types
is the order they were added in, most important first. Functions that
care about order, such as gdk_content_formats_union() will describe in
their documentation how they interpret that order, though in general the
order of the first argument is considered the primary order of the result,
followed by the order of further arguments.
For debugging purposes, the function gdk_content_formats_to_string() exists.
It will print a comma-seperated formats of formats from most important to least
important.
#GdkContentFormats is an immutable struct. After creation, you cannot change
the types it represents. Instead, new #GdkContentFormats have to be created.
The #GdkContentFormatsBuilder structure is meant to help in this endeavor.</doc>
<constructor name="new" c:identifier="gdk_content_formats_new">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="132">Creates a new #GdkContentFormats from an array of mime types.
The mime types must be valid and different from each other or the
behavior of the return value is undefined. If you cannot guarantee
this, use #GdkContentFormatsBuilder instead.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="144">the new #GdkContentFormats.</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<parameter name="mime_types" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="134">Pointer to an
array of mime types</doc>
<array length="1" zero-terminated="0" c:type="const char**">
<type name="utf8" c:type="char*"/>
</array>
</parameter>
<parameter name="n_mime_types" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="136">number of entries in @mime_types.</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_for_gtype" c:identifier="gdk_content_formats_new_for_gtype">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="166">Creates a new #GdkContentFormats for a given #GType.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="172">a new #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="168">a $GType</doc>
<type name="GType" c:type="GType"/>
</parameter>
</parameters>
</constructor>
<method name="contain_gtype" c:identifier="gdk_content_formats_contain_gtype">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="408">Checks if a given #GType is part of the given @formats.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="415">%TRUE if the #GType was found</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="410">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="411">the #GType to search for</doc>
<type name="GType" c:type="GType"/>
</parameter>
</parameters>
</method>
<method name="contain_mime_type" c:identifier="gdk_content_formats_contain_mime_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="434">Checks if a given mime type is part of the given @formats.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="441">%TRUE if the mime_type was found</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="436">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</instance-parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="437">the mime type to search for</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</method>
<method name="get_gtypes" c:identifier="gdk_content_formats_get_gtypes">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="454">Gets the #GTypes included in @formats. Note that @formats may not
contain any #GTypes, in particular when they are empty. In that
case %NULL will be returned.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="464">%G_TYPE_INVALID-terminated array of
types included in @formats or %NULL if none.</doc>
<type name="GType" c:type="const GType*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="456">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
<parameter name="n_gtypes" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="457">optional pointer to take the
number of #GTypes contained in the return value</doc>
<type name="gsize" c:type="gsize*"/>
</parameter>
</parameters>
</method>
<method name="get_mime_types" c:identifier="gdk_content_formats_get_mime_types">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="479">Gets the mime types included in @formats. Note that @formats may not
contain any mime types, in particular when they are empty. In that
case %NULL will be returned.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="489">%NULL-terminated array of
interned strings of mime types included in @formats or %NULL
if none.</doc>
<array c:type="const char* const*">
<type name="utf8"/>
</array>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="481">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
<parameter name="n_mime_types" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="482">optional pointer to take the
number of mime types contained in the return value</doc>
<type name="gsize" c:type="gsize*"/>
</parameter>
</parameters>
</method>
<method name="match" c:identifier="gdk_content_formats_match">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="330">Checks if @first and @second have any matching formats.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="337">%TRUE if a matching format was found.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="first" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="332">the primary #GdkContentFormats to intersect</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</instance-parameter>
<parameter name="second" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="333">the #GdkContentFormats to intersect with</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</parameter>
</parameters>
</method>
<method name="match_gtype" c:identifier="gdk_content_formats_match_gtype">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="350">Finds the first #GType from @first that is also contained
in @second. If no matching #GType is found, %G_TYPE_INVALID
is returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="359">The first common #GType or %G_TYPE_INVALID if none.</doc>
<type name="GType" c:type="GType"/>
</return-value>
<parameters>
<instance-parameter name="first" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="352">the primary #GdkContentFormats to intersect</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</instance-parameter>
<parameter name="second" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="353">the #GdkContentFormats to intersect with</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</parameter>
</parameters>
</method>
<method name="match_mime_type" c:identifier="gdk_content_formats_match_mime_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="379">Finds the first mime type from @first that is also contained
in @second. If no matching mime type is found, %NULL is
returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="388">The first common mime type or %NULL if none.</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<instance-parameter name="first" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="381">the primary #GdkContentFormats to intersect</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</instance-parameter>
<parameter name="second" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="382">the #GdkContentFormats to intersect with</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</parameter>
</parameters>
</method>
<method name="print" c:identifier="gdk_content_formats_print">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="228">Prints the given @formats into a string for human consumption.
This is meant for debugging and logging.
The form of the representation may change at any time and is
not guranteed to stay identical.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="230">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
<parameter name="string" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="231">a #GString to print into</doc>
<type name="GLib.String" c:type="GString*"/>
</parameter>
</parameters>
</method>
<method name="ref" c:identifier="gdk_content_formats_ref">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="188">Increases the reference count of a #GdkContentFormats by one.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="194">the passed in #GdkContentFormats.</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="190">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
<method name="to_string" c:identifier="gdk_content_formats_to_string">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="264">Prints the given @formats into a human-readable string.
This is a small wrapper around gdk_content_formats_print() to help
when debugging.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="272">a new string</doc>
<type name="utf8" c:type="char*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="266">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
<method name="union" c:identifier="gdk_content_formats_union">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="287">Append all missing types from @second to @first, in the order
they had in @second.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="295">a new #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="first" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="289">the #GdkContentFormats to merge into</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
<parameter name="second" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="290">the #GdkContentFormats to merge from</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</parameter>
</parameters>
</method>
<method name="union_deserialize_gtypes" c:identifier="gdk_content_formats_union_deserialize_gtypes">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="429">Add GTypes for mime types in @formats for which deserializers are
registered.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="436">a new #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="431">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
<method name="union_deserialize_mime_types" c:identifier="gdk_content_formats_union_deserialize_mime_types">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="464">Add mime types for GTypes in @formats for which deserializers are
registered.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="471">a new #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="466">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
<method name="union_serialize_gtypes" c:identifier="gdk_content_formats_union_serialize_gtypes">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="432">Add GTypes for the mime types in @formats for which serializers are
registered.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="439">a new #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="434">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
<method name="union_serialize_mime_types" c:identifier="gdk_content_formats_union_serialize_mime_types">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="467">Add mime types for GTypes in @formats for which serializers are
registered.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="474">a new #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="469">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
<method name="unref" c:identifier="gdk_content_formats_unref">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="206">Decreases the reference count of a #GdkContentFormats by one.
If the resulting reference count is zero, frees the formats.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="208">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</instance-parameter>
</parameters>
</method>
</record>
<record name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder" glib:type-name="GdkContentFormatsBuilder" glib:get-type="gdk_content_formats_builder_get_type" c:symbol-prefix="content_formats_builder">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="505">A #GdkContentFormatsBuilder struct is an opaque struct. It is meant to
not be kept around and only be used to create new #GdkContentFormats
objects.</doc>
<constructor name="new" c:identifier="gdk_content_formats_builder_new">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="531">Create a new #GdkContentFormatsBuilder object. The resulting builder
would create an empty #GdkContentFormats. Use addition functions to add
types to it.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="538">a new #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</return-value>
</constructor>
<method name="add_formats" c:identifier="gdk_content_formats_builder_add_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="674">Appends all formats from @formats to @builder, skipping those that
already exist.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="676">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
<parameter name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="677">the formats to add</doc>
<type name="ContentFormats" c:type="const GdkContentFormats*"/>
</parameter>
</parameters>
</method>
<method name="add_gtype" c:identifier="gdk_content_formats_builder_add_gtype">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="698">Appends @gtype to @builder if it has not already been added.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="700">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="701">a #GType</doc>
<type name="GType" c:type="GType"/>
</parameter>
</parameters>
</method>
<method name="add_mime_type" c:identifier="gdk_content_formats_builder_add_mime_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="719">Appends @mime_type to @builder if it has not already been added.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="721">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="722">a mime type</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</method>
<method name="free_to_formats" c:identifier="gdk_content_formats_builder_free_to_formats" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="602">Creates a new #GdkContentFormats from the current state of the
given @builder, and frees the @builder instance.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="609">the newly created #GdkContentFormats
with all the formats added to @builder</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="604">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
</parameters>
</method>
<method name="ref" c:identifier="gdk_content_formats_builder_ref">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="551">Acquires a reference on the given @builder.
This function is intended primarily for bindings. #GdkContentFormatsBuilder objects
should not be kept around.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="560">the given #GdkContentFormatsBuilder with
its reference count increased</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="553">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
</parameters>
</method>
<method name="to_formats" c:identifier="gdk_content_formats_builder_to_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="626">Creates a new #GdkContentFormats from the given @builder.
The given #GdkContentFormatsBuilder is reset once this function returns;
you cannot call this function multiple times on the same @builder instance.
This function is intended primarily for bindings. C code should use
gdk_content_formats_builder_free_to_formats().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="638">the newly created #GdkContentFormats
with all the formats added to @builder</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="628">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
</parameters>
</method>
<method name="unref" c:identifier="gdk_content_formats_builder_unref">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="581">Releases a reference on the given @builder.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="builder" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="583">a #GdkContentFormatsBuilder</doc>
<type name="ContentFormatsBuilder" c:type="GdkContentFormatsBuilder*"/>
</instance-parameter>
</parameters>
</method>
</record>
<class name="ContentProvider" c:symbol-prefix="content_provider" c:type="GdkContentProvider" parent="GObject.Object" glib:type-name="GdkContentProvider" glib:get-type="gdk_content_provider_get_type" glib:type-struct="ContentProviderClass">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="27">A GdkContentProvider is used to provide content for the clipboard in
a number of formats.
To create a GdkContentProvider, use gdk_content_provider_new_for_value() or
gdk_content_provider_new_for_bytes().
GDK knows how to handle common text and image formats out-of-the-box. See
#GdkContentSerializer and #GdkContentDeserializer if you want to add support
for application-specific data formats.</doc>
<constructor name="new_for_bytes" c:identifier="gdk_content_provider_new_for_bytes">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="258">Create a content provider that provides the given @bytes as data for
the given @mime_type.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="266">a new #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</return-value>
<parameters>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="260">the mime type</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="bytes" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="261">a #GBytes with the data for @mime_type</doc>
<type name="GLib.Bytes" c:type="GBytes*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_for_value" c:identifier="gdk_content_provider_new_for_value">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="104">Create a content provider that provides the given @value.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="110">a new #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</return-value>
<parameters>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentproviderimpl.c" line="106">a #GValue</doc>
<type name="GObject.Value" c:type="const GValue*"/>
</parameter>
</parameters>
</constructor>
<virtual-method name="attach_clipboard">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="clipboard" transfer-ownership="none">
<type name="Clipboard" c:type="GdkClipboard*"/>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="content_changed" invoker="content_changed">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="258">Emits the #GdkContentProvider::contents-changed signal.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="260">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="detach_clipboard">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="clipboard" transfer-ownership="none">
<type name="Clipboard" c:type="GdkClipboard*"/>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="get_value" invoker="get_value" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="343">Gets the convtents of @provider stored in @value.
The @value will have been initialized to the #GType the value should be
provided in. This given #GType does not need to be listed in the formats
returned by gdk_content_provider_ref_formats(). However, if the given
#GType is not supported, this operation can fail and
#G_IO_ERROR_NOT_SUPPORTED will be reported.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="358">%TRUE if the value was set successfully. Otherwise
@error will be set to describe the failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="345">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="346">the #GValue to fill</doc>
<type name="GObject.Value" c:type="GValue*"/>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="ref_formats" invoker="ref_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="222">Gets the formats that the provider can provide its current contents in.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="228">The formats of the provider</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="224">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="ref_storable_formats" invoker="ref_storable_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="238">Gets the formats that the provider suggests other applications to store
the data in.
An example of such an application would be a clipboard manager.
This can be assumed to be a subset of gdk_content_provider_ref_formats().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="248">The storable formats of the provider</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="240">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="write_mime_type_async" invoker="write_mime_type_async">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="274">Asynchronously writes the contents of @provider to @stream in the given
@mime_type. When the operation is finished @callback will be called. You
can then call gdk_content_provider_write_mime_type_finish() to get the
result of the operation.
The given mime type does not need to be listed in the formats returned by
gdk_content_provider_ref_formats(). However, if the given #GType is not
supported, #G_IO_ERROR_NOT_SUPPORTED will be reported.
The given @stream will not be closed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="276">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="277">the mime type to provide the data in</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="stream" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="278">the #GOutputStream to write to</doc>
<type name="Gio.OutputStream" c:type="GOutputStream*"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="279">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="281">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="5">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="282">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1" closure="5">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="283">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="write_mime_type_finish" invoker="write_mime_type_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="319">Finishes an asynchronous write operation started with
gdk_content_provider_write_mime_type_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="329">%TRUE if the operation was completed successfully. Otherwise
@error will be set to describe the failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="321">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="322">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</virtual-method>
<method name="content_changed" c:identifier="gdk_content_provider_content_changed">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="258">Emits the #GdkContentProvider::contents-changed signal.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="260">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_value" c:identifier="gdk_content_provider_get_value" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="343">Gets the convtents of @provider stored in @value.
The @value will have been initialized to the #GType the value should be
provided in. This given #GType does not need to be listed in the formats
returned by gdk_content_provider_ref_formats(). However, if the given
#GType is not supported, this operation can fail and
#G_IO_ERROR_NOT_SUPPORTED will be reported.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="358">%TRUE if the value was set successfully. Otherwise
@error will be set to describe the failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="345">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="346">the #GValue to fill</doc>
<type name="GObject.Value" c:type="GValue*"/>
</parameter>
</parameters>
</method>
<method name="ref_formats" c:identifier="gdk_content_provider_ref_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="222">Gets the formats that the provider can provide its current contents in.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="228">The formats of the provider</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="224">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
</parameters>
</method>
<method name="ref_storable_formats" c:identifier="gdk_content_provider_ref_storable_formats">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="238">Gets the formats that the provider suggests other applications to store
the data in.
An example of such an application would be a clipboard manager.
This can be assumed to be a subset of gdk_content_provider_ref_formats().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="248">The storable formats of the provider</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="240">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
</parameters>
</method>
<method name="write_mime_type_async" c:identifier="gdk_content_provider_write_mime_type_async">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="274">Asynchronously writes the contents of @provider to @stream in the given
@mime_type. When the operation is finished @callback will be called. You
can then call gdk_content_provider_write_mime_type_finish() to get the
result of the operation.
The given mime type does not need to be listed in the formats returned by
gdk_content_provider_ref_formats(). However, if the given #GType is not
supported, #G_IO_ERROR_NOT_SUPPORTED will be reported.
The given @stream will not be closed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="276">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="277">the mime type to provide the data in</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="stream" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="278">the #GOutputStream to write to</doc>
<type name="Gio.OutputStream" c:type="GOutputStream*"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="279">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="281">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="5">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="282">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="283">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="write_mime_type_finish" c:identifier="gdk_content_provider_write_mime_type_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="319">Finishes an asynchronous write operation started with
gdk_content_provider_write_mime_type_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="329">%TRUE if the operation was completed successfully. Otherwise
@error will be set to describe the failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="321">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="322">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<property name="formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="173">The possible formats that the provider can provide its data in.</doc>
<type name="ContentFormats"/>
</property>
<property name="storable-formats" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="187">The subset of formats that clipboard managers should store this provider's data in.</doc>
<type name="ContentFormats"/>
</property>
<field name="parent">
<type name="GObject.Object" c:type="GObject"/>
</field>
<glib:signal name="content-changed" when="last">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<record name="ContentProviderClass" c:type="GdkContentProviderClass" glib:is-gtype-struct-for="ContentProvider">
<field name="parent_class">
<type name="GObject.ObjectClass" c:type="GObjectClass"/>
</field>
<field name="content_changed">
<callback name="content_changed">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="260">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="attach_clipboard">
<callback name="attach_clipboard">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
<parameter name="clipboard" transfer-ownership="none">
<type name="Clipboard" c:type="GdkClipboard*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="detach_clipboard">
<callback name="detach_clipboard">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
<parameter name="clipboard" transfer-ownership="none">
<type name="Clipboard" c:type="GdkClipboard*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="ref_formats">
<callback name="ref_formats">
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="228">The formats of the provider</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="224">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="ref_storable_formats">
<callback name="ref_storable_formats">
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="248">The storable formats of the provider</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="240">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="write_mime_type_async">
<callback name="write_mime_type_async">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="276">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="277">the mime type to provide the data in</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="stream" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="278">the #GOutputStream to write to</doc>
<type name="Gio.OutputStream" c:type="GOutputStream*"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="279">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="281">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="6">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="282">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1" closure="6">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="283">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</callback>
</field>
<field name="write_mime_type_finish">
<callback name="write_mime_type_finish" throws="1">
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="329">%TRUE if the operation was completed successfully. Otherwise
@error will be set to describe the failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="321">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="322">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="get_value">
<callback name="get_value" throws="1">
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="358">%TRUE if the value was set successfully. Otherwise
@error will be set to describe the failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="provider" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="345">a #GdkContentProvider</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentprovider.c" line="346">the #GValue to fill</doc>
<type name="GObject.Value" c:type="GValue*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="_gdk_reserved1" introspectable="0">
<callback name="_gdk_reserved1">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved2" introspectable="0">
<callback name="_gdk_reserved2">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved3" introspectable="0">
<callback name="_gdk_reserved3">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved4" introspectable="0">
<callback name="_gdk_reserved4">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved5" introspectable="0">
<callback name="_gdk_reserved5">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved6" introspectable="0">
<callback name="_gdk_reserved6">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved7" introspectable="0">
<callback name="_gdk_reserved7">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved8" introspectable="0">
<callback name="_gdk_reserved8">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
</record>
<callback name="ContentSerializeFunc" c:type="GdkContentSerializeFunc">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.h" line="42">The type of a function that can be registered with gdk_content_register_serializer().
When the function gets called to operate on content, it can call functions on the
@serializer object to obtain the mime type, output stream, user data, etc. for its
operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.h" line="44">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</parameter>
</parameters>
</callback>
<class name="ContentSerializer" c:symbol-prefix="content_serializer" c:type="GdkContentSerializer" parent="GObject.Object" glib:type-name="GdkContentSerializer" glib:get-type="gdk_content_serializer_get_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="32">A GdkContentSerializer is used to serialize content for inter-application
data transfers.</doc>
<implements name="Gio.AsyncResult"/>
<method name="get_cancellable" c:identifier="gdk_content_serializer_get_cancellable">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="248">Gets the cancellable that was passed to gdk_content_serialize_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="254">the cancellable for the current operation</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="250">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_gtype" c:identifier="gdk_content_serializer_get_gtype">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="184">Gets the GType to of the object to serialize.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="190">the GType for the current operation</doc>
<type name="GType" c:type="GType"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="186">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_mime_type" c:identifier="gdk_content_serializer_get_mime_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="168">Gets the mime type to serialize to.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="174">the mime type for the current operation</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="170">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_output_stream" c:identifier="gdk_content_serializer_get_output_stream">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="216">Gets the output stream that was passed to gdk_content_serialize_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="222">the output stream for the current operation</doc>
<type name="Gio.OutputStream" c:type="GOutputStream*"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="218">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_priority" c:identifier="gdk_content_serializer_get_priority">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="232">Gets the io priority that was passed to gdk_content_serialize_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="238">the io priority for the current operation</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="234">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_task_data" c:identifier="gdk_content_serializer_get_task_data">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="302">Gets the data that was associated with @serializer via gdk_content_serializer_set_task_data().</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="308">the task data for @serializer</doc>
<type name="gpointer" c:type="gpointer"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="304">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_user_data" c:identifier="gdk_content_serializer_get_user_data">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="264">Gets the user data that was passed when the serializer was registered.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="270">the user data for this serializer</doc>
<type name="gpointer" c:type="gpointer"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="266">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_value" c:identifier="gdk_content_serializer_get_value">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="200">Gets the #GValue to read the object to serialize from.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="206">the #GValue for the current operation</doc>
<type name="GObject.Value" c:type="const GValue*"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="202">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="return_error" c:identifier="gdk_content_serializer_return_error">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="351">Indicate that the serialization has ended with an error.
This function consumes @error.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="353">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
<parameter name="error" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="354">a #GError</doc>
<type name="GLib.Error" c:type="GError*"/>
</parameter>
</parameters>
</method>
<method name="return_success" c:identifier="gdk_content_serializer_return_success">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="331">Indicate that the serialization has been successfully completed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="333">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_task_data" c:identifier="gdk_content_serializer_set_task_data">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="280">Associate data with the current serialization operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="serializer" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="282">a #GdkContentSerializer</doc>
<type name="ContentSerializer" c:type="GdkContentSerializer*"/>
</instance-parameter>
<parameter name="data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="283">data to associate with this operation</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
<parameter name="notify" transfer-ownership="none" scope="async">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="284">destroy notify for @data</doc>
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
</parameter>
</parameters>
</method>
</class>
<enumeration name="CrossingMode" glib:type-name="GdkCrossingMode" glib:get-type="gdk_crossing_mode_get_type" c:type="GdkCrossingMode">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="308">Specifies the crossing mode for enter and leave events.</doc>
<member name="normal" value="0" c:identifier="GDK_CROSSING_NORMAL" glib:nick="normal">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="310">crossing because of pointer motion.</doc>
</member>
<member name="grab" value="1" c:identifier="GDK_CROSSING_GRAB" glib:nick="grab">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="311">crossing because a grab is activated.</doc>
</member>
<member name="ungrab" value="2" c:identifier="GDK_CROSSING_UNGRAB" glib:nick="ungrab">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="312">crossing because a grab is deactivated.</doc>
</member>
<member name="gtk_grab" value="3" c:identifier="GDK_CROSSING_GTK_GRAB" glib:nick="gtk-grab">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="313">crossing because a GTK+ grab is activated.</doc>
</member>
<member name="gtk_ungrab" value="4" c:identifier="GDK_CROSSING_GTK_UNGRAB" glib:nick="gtk-ungrab">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="314">crossing because a GTK+ grab is deactivated.</doc>
</member>
<member name="state_changed" value="5" c:identifier="GDK_CROSSING_STATE_CHANGED" glib:nick="state-changed">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="315">crossing because a GTK+ widget changed
state (e.g. sensitivity).</doc>
</member>
<member name="touch_begin" value="6" c:identifier="GDK_CROSSING_TOUCH_BEGIN" glib:nick="touch-begin">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="317">crossing because a touch sequence has begun,
this event is synthetic as the pointer might have not left the surface.</doc>
</member>
<member name="touch_end" value="7" c:identifier="GDK_CROSSING_TOUCH_END" glib:nick="touch-end">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="319">crossing because a touch sequence has ended,
this event is synthetic as the pointer might have not left the surface.</doc>
</member>
<member name="device_switch" value="8" c:identifier="GDK_CROSSING_DEVICE_SWITCH" glib:nick="device-switch">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="321">crossing because of a device switch (i.e.
a mouse taking control of the pointer after a touch device), this event
is synthetic as the pointer didn&#x2019;t leave the surface.</doc>
</member>
</enumeration>
<class name="Cursor" c:symbol-prefix="cursor" c:type="GdkCursor" parent="GObject.Object" glib:type-name="GdkCursor" glib:get-type="gdk_cursor_get_type">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="74">A #GdkCursor represents a cursor. Its contents are private.
Cursors are immutable objects, so they can not change after
they have been constructed.</doc>
<constructor name="new_from_name" c:identifier="gdk_cursor_new_from_name">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="270">Creates a new cursor by looking up @name in the current cursor
theme.
A recommended set of cursor names that will work across different
platforms can be found in the CSS specification:
- "none"
- ![](default_cursor.png) "default"
- ![](help_cursor.png) "help"
- ![](pointer_cursor.png) "pointer"
- ![](context_menu_cursor.png) "context-menu"
- ![](progress_cursor.png) "progress"
- ![](wait_cursor.png) "wait"
- ![](cell_cursor.png) "cell"
- ![](crosshair_cursor.png) "crosshair"
- ![](text_cursor.png) "text"
- ![](vertical_text_cursor.png) "vertical-text"
- ![](alias_cursor.png) "alias"
- ![](copy_cursor.png) "copy"
- ![](no_drop_cursor.png) "no-drop"
- ![](move_cursor.png) "move"
- ![](not_allowed_cursor.png) "not-allowed"
- ![](grab_cursor.png) "grab"
- ![](grabbing_cursor.png) "grabbing"
- ![](all_scroll_cursor.png) "all-scroll"
- ![](col_resize_cursor.png) "col-resize"
- ![](row_resize_cursor.png) "row-resize"
- ![](n_resize_cursor.png) "n-resize"
- ![](e_resize_cursor.png) "e-resize"
- ![](s_resize_cursor.png) "s-resize"
- ![](w_resize_cursor.png) "w-resize"
- ![](ne_resize_cursor.png) "ne-resize"
- ![](nw_resize_cursor.png) "nw-resize"
- ![](sw_resize_cursor.png) "sw-resize"
- ![](se_resize_cursor.png) "se-resize"
- ![](ew_resize_cursor.png) "ew-resize"
- ![](ns_resize_cursor.png) "ns-resize"
- ![](nesw_resize_cursor.png) "nesw-resize"
- ![](nwse_resize_cursor.png) "nwse-resize"
- ![](zoom_in_cursor.png) "zoom-in"
- ![](zoom_out_cursor.png) "zoom-out"</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="318">a new #GdkCursor, or %NULL if there is no
cursor with the given name</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</return-value>
<parameters>
<parameter name="name" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="274">the name of the cursor</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="fallback" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="272">%NULL or the #GdkCursor to fall back to when
this one cannot be supported</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_from_texture" c:identifier="gdk_cursor_new_from_texture">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="334">Creates a new cursor from a #GdkTexture.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="344">a new #GdkCursor.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</return-value>
<parameters>
<parameter name="texture" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="336">the texture providing the pixel data</doc>
<type name="Texture" c:type="GdkTexture*"/>
</parameter>
<parameter name="hotspot_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="337">the horizontal offset of the &#x201C;hotspot&#x201D; of the cursor</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="hotspot_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="338">the vertical offset of the &#x201C;hotspot&#x201D; of the cursor</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="fallback" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="339">%NULL or the #GdkCursor to fall back to when
this one cannot be supported</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</parameter>
</parameters>
</constructor>
<method name="get_fallback" c:identifier="gdk_cursor_get_fallback">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="365">Returns the fallback for this @cursor. The fallback will be used if this
cursor is not available on a given #GdkDisplay.
For named cursors, this can happen when using nonstandard names or when
using an incomplete cursor theme.
For textured cursors, this can happen when the texture is too large or
when the #GdkDisplay it is used on does not support textured cursors.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="377">the fallback of the cursor or %NULL to use
the default cursor as fallback.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</return-value>
<parameters>
<instance-parameter name="cursor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="367">a #GdkCursor.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_hotspot_x" c:identifier="gdk_cursor_get_hotspot_x">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="424">Returns the horizontal offset of the hotspot. The hotspot indicates the
pixel that will be directly above the cursor.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="431">the horizontal offset of the hotspot or 0 for named cursors</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="cursor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="426">a #GdkCursor.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_hotspot_y" c:identifier="gdk_cursor_get_hotspot_y">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="441">Returns the vertical offset of the hotspot. The hotspot indicates the
pixel that will be directly above the cursor.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="448">the vertical offset of the hotspot or 0 for named cursors</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="cursor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="443">a #GdkCursor.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_name" c:identifier="gdk_cursor_get_name">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="388">Returns the name of the cursor. If the cursor is not a named cursor, %NULL
will be returned and the GdkCursor::texture property will be set.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="395">the name of the cursor or %NULL if it is not
a named cursor</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<instance-parameter name="cursor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="390">a #GdkCursor.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_texture" c:identifier="gdk_cursor_get_texture">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="406">Returns the texture for the cursor. If the cursor is a named cursor, %NULL
will be returned and the GdkCursor::name property will be set.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="413">the texture for cursor or %NULL if it is a
named cursor</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<instance-parameter name="cursor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcursor.c" line="408">a #GdkCursor.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</instance-parameter>
</parameters>
</method>
<property name="fallback" writable="1" construct-only="1" transfer-ownership="none">
<type name="Cursor"/>
</property>
<property name="hotspot-x" writable="1" construct-only="1" transfer-ownership="none">
<type name="gint" c:type="gint"/>
</property>
<property name="hotspot-y" writable="1" construct-only="1" transfer-ownership="none">
<type name="gint" c:type="gint"/>
</property>
<property name="name" writable="1" construct-only="1" transfer-ownership="none">
<type name="utf8" c:type="gchar*"/>
</property>
<property name="texture" writable="1" construct-only="1" transfer-ownership="none">
<type name="Texture"/>
</property>
</class>
<class name="Device" c:symbol-prefix="device" c:type="GdkDevice" parent="GObject.Object" abstract="1" glib:type-name="GdkDevice" glib:get-type="gdk_device_get_type">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="31">The #GdkDevice object represents a single input device, such
as a keyboard, a mouse, a touchpad, etc.
See the #GdkSeat documentation for more information
about the various kinds of master and slave devices, and their
relationships.</doc>
<function name="free_history" c:identifier="gdk_device_free_history" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="687">Frees an array of #GdkTimeCoord that was returned by gdk_device_get_history().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="events" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="689">an array of #GdkTimeCoord.</doc>
<array length="1" zero-terminated="0" c:type="GdkTimeCoord**">
<type name="TimeCoord" c:type="GdkTimeCoord*"/>
</array>
</parameter>
<parameter name="n_events" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="690">the length of the array.</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</function>
<method name="get_associated_device" c:identifier="gdk_device_get_associated_device">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="960">Returns the associated device to @device, if @device is of type
%GDK_DEVICE_TYPE_MASTER, it will return the paired pointer or
keyboard.
If @device is of type %GDK_DEVICE_TYPE_SLAVE, it will return
the master device to which @device is attached to.
If @device is of type %GDK_DEVICE_TYPE_FLOATING, %NULL will be
returned, as there is no associated device.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="974">The associated device, or
%NULL</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="962">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_axes" c:identifier="gdk_device_get_axes">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1750">Returns the axes currently available on the device.</doc>
<return-value transfer-ownership="none">
<type name="AxisFlags" c:type="GdkAxisFlags"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1752">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_axis" c:identifier="gdk_device_get_axis" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1183">Interprets an array of double as axis values for a given device,
and locates the value in the array for a given axis use.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1193">%TRUE if the given axis use was found, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1185">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="axes" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1186">pointer to an array of axes</doc>
<array zero-terminated="0" c:type="gdouble*">
<type name="gdouble" c:type="gdouble"/>
</array>
</parameter>
<parameter name="use" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1187">the use to look for</doc>
<type name="AxisUse" c:type="GdkAxisUse"/>
</parameter>
<parameter name="value" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1188">location to store the found value.</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_axis_use" c:identifier="gdk_device_get_axis_use">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="878">Returns the axis use for @index_.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="885">a #GdkAxisUse specifying how the axis is used.</doc>
<type name="AxisUse" c:type="GdkAxisUse"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="880">a pointer #GdkDevice.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="index_" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="881">the index of the axis.</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_axis_value" c:identifier="gdk_device_get_axis_value" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1138">Interprets an array of double as axis values for a given device,
and locates the value in the array for a given axis label, as returned
by gdk_device_list_axes()</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1149">%TRUE if the given axis use was found, otherwise %FALSE.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1140">a pointer #GdkDevice.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="axes" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1141">pointer to an array of axes</doc>
<array zero-terminated="0" c:type="gdouble*">
<type name="gdouble" c:type="gdouble"/>
</array>
</parameter>
<parameter name="axis_label" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1142">name of the label</doc>
<type name="Atom" c:type="GdkAtom"/>
</parameter>
<parameter name="value" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1143">location to store the found value.</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_device_type" c:identifier="gdk_device_get_device_type">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1075">Returns the device type for @device.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1081">the #GdkDeviceType for @device.</doc>
<type name="DeviceType" c:type="GdkDeviceType"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1077">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_device_get_display">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="943">Returns the #GdkDisplay to which @device pertains.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="949">a #GdkDisplay. This memory is owned
by GTK+, and must not be freed or unreffed.</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="945">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_has_cursor" c:identifier="gdk_device_get_has_cursor">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="722">Determines whether the pointer follows device motion.
This is not meaningful for keyboard devices, which don't have a pointer.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="729">%TRUE if the pointer follows device motion</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="724">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_history" c:identifier="gdk_device_get_history" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="619">Obtains the motion history for a pointer 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.)
Note that there is also gdk_surface_set_event_compression() to get
more motion events delivered directly, independent of the windowing
system.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="642">%TRUE if the windowing system supports motion history and
at least one event was found.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="621">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="622">the surface with respect to which which the event coordinates will be reported</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="start" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="623">starting timestamp for range of events to return</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
<parameter name="stop" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="624">ending timestamp for the range of events to return</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
<parameter name="events" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="625">
location to store a newly-allocated array of #GdkTimeCoord, or
%NULL</doc>
<array length="4" zero-terminated="0" c:type="GdkTimeCoord***">
<type name="TimeCoord" c:type="GdkTimeCoord**"/>
</array>
</parameter>
<parameter name="n_events" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="628">location to store the length of
@events, or %NULL</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_key" c:identifier="gdk_device_get_key">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="821">If @index_ has a valid keyval, this function will return %TRUE
and fill in @keyval and @modifiers with the keyval settings.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="831">%TRUE if keyval is set for @index.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="823">a #GdkDevice.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="index_" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="824">the index of the macro button to get.</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="keyval" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="825">return value for the keyval.</doc>
<type name="guint" c:type="guint*"/>
</parameter>
<parameter name="modifiers" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="826">return value for modifiers.</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<method name="get_last_event_surface" c:identifier="gdk_device_get_last_event_surface">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1631">Gets information about which surface the given pointer device is in, based on events
that have been received so far from the display server. If another application
has a pointer grab, or this application has a grab with owner_events = %FALSE,
%NULL may be returned even if the pointer is physically over one of this
application's surfaces.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1641">the last surface the device</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1633">a #GdkDevice, with a source other than %GDK_SOURCE_KEYBOARD</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_mode" c:identifier="gdk_device_get_mode">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="755">Determines the mode of the device.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="761">a #GdkInputSource</doc>
<type name="InputMode" c:type="GdkInputMode"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="757">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_n_axes" c:identifier="gdk_device_get_n_axes">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1091">Returns the number of axes the device currently has.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1097">the number of axes.</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1093">a pointer #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_n_keys" c:identifier="gdk_device_get_n_keys">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="805">Returns the number of keys the device currently has.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="811">the number of keys.</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="807">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_name" c:identifier="gdk_device_get_name">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="706">Determines the name of the device.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="712">a name</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="708">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_position" c:identifier="gdk_device_get_position">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="531">Gets the current location of @device in double precision. As a slave device's
coordinates are those of its master pointer, this function
may not be called on devices of type %GDK_DEVICE_TYPE_SLAVE,
unless there is an ongoing grab on them. See gdk_device_grab().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="533">pointer device to query status about.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="534">location to store root window X coordinate of @device, or %NULL.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="535">location to store root window Y coordinate of @device, or %NULL.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
</parameters>
</method>
<method name="get_product_id" c:identifier="gdk_device_get_product_id">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1700">Returns the product ID of this device, or %NULL if this information couldn't
be obtained. This ID is retrieved from the device, and is thus constant for
it. See gdk_device_get_vendor_id() for more information.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1708">the product ID, or %NULL</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1702">a slave #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_seat" c:identifier="gdk_device_get_seat">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1733">Returns the #GdkSeat the device belongs to.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1739">A #GdkSeat. This memory is owned by GTK+ and
must not be freed.</doc>
<type name="Seat" c:type="GdkSeat*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1735">A #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_source" c:identifier="gdk_device_get_source">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="739">Determines the type of the device.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="745">a #GdkInputSource</doc>
<type name="InputSource" c:type="GdkInputSource"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="741">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_state" c:identifier="gdk_device_get_state" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="502">Gets the current state of a pointer device relative to @surface. As a slave
device&#x2019;s coordinates are those of its master pointer, this
function may not be called on devices of type %GDK_DEVICE_TYPE_SLAVE,
unless there is an ongoing grab on them. See gdk_device_grab().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="504">a #GdkDevice.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="505">a #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="axes" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="506">an array of doubles to store the values of
the axes of @device in, or %NULL.</doc>
<array zero-terminated="0" c:type="gdouble*">
<type name="gdouble" c:type="gdouble"/>
</array>
</parameter>
<parameter name="mask" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="508">location to store the modifiers, or %NULL.</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<method name="get_surface_at_position" c:identifier="gdk_device_get_surface_at_position">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="570">Obtains the surface underneath @device, returning the location of the device in @win_x and @win_y in
double precision. Returns %NULL if the surface tree under @device is not known to GDK (for example,
belongs to another application).
As a slave device coordinates are those of its master pointer, This
function may not be called on devices of type %GDK_DEVICE_TYPE_SLAVE,
unless there is an ongoing grab on them, see gdk_device_grab().</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="586">the #GdkSurface under the
device position, or %NULL.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="572">pointer #GdkDevice to query info to.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="win_x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="573">return location for the X coordinate of the device location,
relative to the surface origin, or %NULL.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
<parameter name="win_y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="575">return location for the Y coordinate of the device location,
relative to the surface origin, or %NULL.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
</parameters>
</method>
<method name="get_vendor_id" c:identifier="gdk_device_get_vendor_id">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1658">Returns the vendor ID of this device, or %NULL if this information couldn't
be obtained. This ID is retrieved from the device, and is thus constant for
it.
This function, together with gdk_device_get_product_id(), can be used to eg.
compose #GSettings paths to store settings for this device.
|[&lt;!-- language="C" --&gt;
static GSettings *
get_device_settings (GdkDevice *device)
{
const gchar *vendor, *product;
GSettings *settings;
GdkDevice *device;
gchar *path;
vendor = gdk_device_get_vendor_id (device);
product = gdk_device_get_product_id (device);
path = g_strdup_printf ("/org/example/app/devices/%s:%s/", vendor, product);
settings = g_settings_new_with_path (DEVICE_SCHEMA, path);
g_free (path);
return settings;
}
]|</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1689">the vendor ID, or %NULL</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1660">a slave #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="list_axes" c:identifier="gdk_device_list_axes">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1108">Returns a #GList of #GdkAtoms, containing the labels for
the axes that @device currently has.</doc>
<return-value transfer-ownership="container">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1115">
A #GList of strings, free with g_list_free().</doc>
<type name="GLib.List" c:type="GList*">
<type name="Atom"/>
</type>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1110">a pointer #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="list_slave_devices" c:identifier="gdk_device_list_slave_devices">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1025">If the device if of type %GDK_DEVICE_TYPE_MASTER, it will return
the list of slave devices attached to it, otherwise it will return
%NULL</doc>
<return-value transfer-ownership="container" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1033">
the list of slave devices, or %NULL. The list must be
freed with g_list_free(), the contents of the list are
owned by GTK+ and should not be freed.</doc>
<type name="GLib.List" c:type="GList*">
<type name="Device"/>
</type>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="1027">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_axis_use" c:identifier="gdk_device_set_axis_use">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="902">Specifies how an axis of a device is used.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="904">a pointer #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="index_" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="905">the index of the axis</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="use" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="906">specifies how the axis is used</doc>
<type name="AxisUse" c:type="GdkAxisUse"/>
</parameter>
</parameters>
</method>
<method name="set_key" c:identifier="gdk_device_set_key">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="855">Specifies the X key event to generate when a macro button of a device
is pressed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="857">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="index_" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="858">the index of the macro button to set</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="859">the keyval to generate</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="modifiers" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="860">the modifiers to set</doc>
<type name="ModifierType" c:type="GdkModifierType"/>
</parameter>
</parameters>
</method>
<method name="set_mode" c:identifier="gdk_device_set_mode">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="771">Sets a the mode of an input device. The mode controls if the
device is active and whether the device&#x2019;s range is mapped to the
entire screen or to a single surface.
Note: This is only meaningful for floating devices, master devices (and
slaves connected to these) drive the pointer cursor, which is not limited
by the input mode.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="784">%TRUE if the mode was successfully changed.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="773">a #GdkDevice.</doc>
<type name="Device" c:type="GdkDevice*"/>
</instance-parameter>
<parameter name="mode" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="774">the input mode.</doc>
<type name="InputMode" c:type="GdkInputMode"/>
</parameter>
</parameters>
</method>
<property name="associated-device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="158">Associated pointer or keyboard with this device, if any. Devices of type #GDK_DEVICE_TYPE_MASTER
always come in keyboard/pointer pairs. Other device types will have a %NULL associated device.</doc>
<type name="Device"/>
</property>
<property name="axes" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="279">The axes currently available for this device.</doc>
<type name="AxisFlags"/>
</property>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="120">The #GdkDisplay the #GdkDevice pertains to.</doc>
<type name="Display"/>
</property>
<property name="has-cursor" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="198">Whether the device is represented by a cursor on the screen. Devices of type
%GDK_DEVICE_TYPE_MASTER will have %TRUE here.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="input-mode" writable="1" transfer-ownership="none">
<type name="InputMode"/>
</property>
<property name="input-source" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="171">Source type for the device.</doc>
<type name="InputSource"/>
</property>
<property name="n-axes" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="212">Number of axes in the device.</doc>
<type name="guint" c:type="guint"/>
</property>
<property name="name" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="132">The device name.</doc>
<type name="utf8" c:type="gchar*"/>
</property>
<property name="num-touches" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="264">The maximal number of concurrent touches on a touch device.
Will be 0 if the device is not a touch device or if the number
of touches is unknown.</doc>
<type name="guint" c:type="guint"/>
</property>
<property name="product-id" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="238">Product ID of this device, see gdk_device_get_product_id().</doc>
<type name="utf8" c:type="gchar*"/>
</property>
<property name="seat" writable="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="251">#GdkSeat of this device.</doc>
<type name="Seat"/>
</property>
<property name="tool" transfer-ownership="none">
<type name="DeviceTool"/>
</property>
<property name="type" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="144">Device role in the device manager.</doc>
<type name="DeviceType"/>
</property>
<property name="vendor-id" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="225">Vendor ID of this device, see gdk_device_get_vendor_id().</doc>
<type name="utf8" c:type="gchar*"/>
</property>
<glib:signal name="changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="300">The ::changed signal is emitted either when the #GdkDevice
has changed the number of either axes or keys. For example
In X this will normally happen when the slave device routing
events through the master device changes (for example, user
switches from the USB mouse to a tablet), in that case the
master device will change to reflect the new slave device
axes and keys.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="tool-changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="320">The ::tool-changed signal is emitted on pen/eraser
#GdkDevices whenever tools enter or leave proximity.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="tool" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevice.c" line="323">The new current tool</doc>
<type name="DeviceTool"/>
</parameter>
</parameters>
</glib:signal>
</class>
<interface name="DevicePad" c:symbol-prefix="device_pad" c:type="GdkDevicePad" glib:type-name="GdkDevicePad" glib:get-type="gdk_device_pad_get_type" glib:type-struct="DevicePadInterface">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="20">#GdkDevicePad is an interface implemented by devices of type
%GDK_SOURCE_TABLET_PAD, it allows querying the features provided
by the pad device.
Tablet pads may contain one or more groups, each containing a subset
of the buttons/rings/strips available. gdk_device_pad_get_n_groups()
can be used to obtain the number of groups, gdk_device_pad_get_n_features()
and gdk_device_pad_get_feature_group() can be combined to find out the
number of buttons/rings/strips the device has, and how are they grouped.
Each of those groups have different modes, which may be used to map
each individual pad feature to multiple actions. Only one mode is
effective (current) for each given group, different groups may have
different current modes. The number of available modes in a group can
be found out through gdk_device_pad_get_group_n_modes(), and the current
mode for a given group will be notified through the #GdkEventPadGroupMode
event.</doc>
<prerequisite name="Device"/>
<method name="get_feature_group" c:identifier="gdk_device_pad_get_feature_group">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="127">Returns the group the given @feature and @idx belong to,
or -1 if feature/index do not exist in @pad.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="136">The group number of the queried pad feature.</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="pad" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="129">a #GdkDevicePad</doc>
<type name="DevicePad" c:type="GdkDevicePad*"/>
</instance-parameter>
<parameter name="feature" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="130">the feature type to get the group from</doc>
<type name="DevicePadFeature" c:type="GdkDevicePadFeature"/>
</parameter>
<parameter name="feature_idx" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="131">the index of the feature to get the group from</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="get_group_n_modes" c:identifier="gdk_device_pad_get_group_n_modes">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="86">Returns the number of modes that @group may have.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="93">The number of modes available in @group.</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="pad" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="88">a #GdkDevicePad</doc>
<type name="DevicePad" c:type="GdkDevicePad*"/>
</instance-parameter>
<parameter name="group_idx" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="89">group to get the number of available modes from</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="get_n_features" c:identifier="gdk_device_pad_get_n_features">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="107">Returns the number of features a tablet pad has.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="114">The amount of elements of type @feature that this pad has.</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="pad" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="109">a #GdkDevicePad</doc>
<type name="DevicePad" c:type="GdkDevicePad*"/>
</instance-parameter>
<parameter name="feature" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="110">a pad feature</doc>
<type name="DevicePadFeature" c:type="GdkDevicePadFeature"/>
</parameter>
</parameters>
</method>
<method name="get_n_groups" c:identifier="gdk_device_pad_get_n_groups">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="65">Returns the number of groups this pad device has. Pads have
at least one group. A pad group is a subcollection of
buttons/strip/rings that is affected collectively by a same
current mode.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="74">The number of button/ring/strip groups in the pad.</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="pad" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.c" line="67">a #GdkDevicePad</doc>
<type name="DevicePad" c:type="GdkDevicePad*"/>
</instance-parameter>
</parameters>
</method>
</interface>
<enumeration name="DevicePadFeature" glib:type-name="GdkDevicePadFeature" glib:get-type="gdk_device_pad_feature_get_type" c:type="GdkDevicePadFeature">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.h" line="39">A pad feature.</doc>
<member name="button" value="0" c:identifier="GDK_DEVICE_PAD_FEATURE_BUTTON" glib:nick="button">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.h" line="41">a button</doc>
</member>
<member name="ring" value="1" c:identifier="GDK_DEVICE_PAD_FEATURE_RING" glib:nick="ring">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.h" line="42">a ring-shaped interactive area</doc>
</member>
<member name="strip" value="2" c:identifier="GDK_DEVICE_PAD_FEATURE_STRIP" glib:nick="strip">
<doc xml:space="preserve" filename="../gdk/gdkdevicepad.h" line="43">a straight interactive area</doc>
</member>
</enumeration>
<record name="DevicePadInterface" c:type="GdkDevicePadInterface" disguised="1" glib:is-gtype-struct-for="DevicePad">
</record>
<class name="DeviceTool" c:symbol-prefix="device_tool" c:type="GdkDeviceTool" parent="GObject.Object" glib:type-name="GdkDeviceTool" glib:get-type="gdk_device_tool_get_type">
<method name="get_hardware_id" c:identifier="gdk_device_tool_get_hardware_id">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="172">Gets the hardware ID of this tool, or 0 if it's not known. When
non-zero, the identificator is unique for the given tool model,
meaning that two identical tools will share the same @hardware_id,
but will have different serial numbers (see gdk_device_tool_get_serial()).
This is a more concrete (and device specific) method to identify
a #GdkDeviceTool than gdk_device_tool_get_tool_type(), as a tablet
may support multiple devices with the same #GdkDeviceToolType,
but having different hardware identificators.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="186">The hardware identificator of this tool.</doc>
<type name="guint64" c:type="guint64"/>
</return-value>
<parameters>
<instance-parameter name="tool" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="174">a #GdkDeviceTool</doc>
<type name="DeviceTool" c:type="GdkDeviceTool*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_serial" c:identifier="gdk_device_tool_get_serial">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="155">Gets the serial of this tool, this value can be used to identify a
physical tool (eg. a tablet pen) across program executions.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="162">The serial ID for this tool</doc>
<type name="guint64" c:type="guint64"/>
</return-value>
<parameters>
<instance-parameter name="tool" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="157">a #GdkDeviceTool</doc>
<type name="DeviceTool" c:type="GdkDeviceTool*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_tool_type" c:identifier="gdk_device_tool_get_tool_type">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="196">Gets the #GdkDeviceToolType of the tool.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="202">The physical type for this tool. This can be used to figure out what
sort of pen is being used, such as an airbrush or a pencil.</doc>
<type name="DeviceToolType" c:type="GdkDeviceToolType"/>
</return-value>
<parameters>
<instance-parameter name="tool" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.c" line="198">a #GdkDeviceTool</doc>
<type name="DeviceTool" c:type="GdkDeviceTool*"/>
</instance-parameter>
</parameters>
</method>
<property name="axes" writable="1" construct-only="1" transfer-ownership="none">
<type name="AxisFlags"/>
</property>
<property name="hardware-id" writable="1" construct-only="1" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</property>
<property name="serial" writable="1" construct-only="1" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</property>
<property name="tool-type" writable="1" construct-only="1" transfer-ownership="none">
<type name="DeviceToolType"/>
</property>
</class>
<enumeration name="DeviceToolType" glib:type-name="GdkDeviceToolType" glib:get-type="gdk_device_tool_type_get_type" c:type="GdkDeviceToolType">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="37">Indicates the specific type of tool being used being a tablet. Such as an
airbrush, pencil, etc.</doc>
<member name="unknown" value="0" c:identifier="GDK_DEVICE_TOOL_TYPE_UNKNOWN" glib:nick="unknown">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="39">Tool is of an unknown type.</doc>
</member>
<member name="pen" value="1" c:identifier="GDK_DEVICE_TOOL_TYPE_PEN" glib:nick="pen">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="40">Tool is a standard tablet stylus.</doc>
</member>
<member name="eraser" value="2" c:identifier="GDK_DEVICE_TOOL_TYPE_ERASER" glib:nick="eraser">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="41">Tool is standard tablet eraser.</doc>
</member>
<member name="brush" value="3" c:identifier="GDK_DEVICE_TOOL_TYPE_BRUSH" glib:nick="brush">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="42">Tool is a brush stylus.</doc>
</member>
<member name="pencil" value="4" c:identifier="GDK_DEVICE_TOOL_TYPE_PENCIL" glib:nick="pencil">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="43">Tool is a pencil stylus.</doc>
</member>
<member name="airbrush" value="5" c:identifier="GDK_DEVICE_TOOL_TYPE_AIRBRUSH" glib:nick="airbrush">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="44">Tool is an airbrush stylus.</doc>
</member>
<member name="mouse" value="6" c:identifier="GDK_DEVICE_TOOL_TYPE_MOUSE" glib:nick="mouse">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="45">Tool is a mouse.</doc>
</member>
<member name="lens" value="7" c:identifier="GDK_DEVICE_TOOL_TYPE_LENS" glib:nick="lens">
<doc xml:space="preserve" filename="../gdk/gdkdevicetool.h" line="46">Tool is a lens cursor.</doc>
</member>
</enumeration>
<enumeration name="DeviceType" glib:type-name="GdkDeviceType" glib:get-type="gdk_device_type_get_type" c:type="GdkDeviceType">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="90">Indicates the device type.</doc>
<member name="master" value="0" c:identifier="GDK_DEVICE_TYPE_MASTER" glib:nick="master">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="92">Device is a master (or virtual) device. There will
be an associated focus indicator on the screen.</doc>
</member>
<member name="slave" value="1" c:identifier="GDK_DEVICE_TYPE_SLAVE" glib:nick="slave">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="94">Device is a slave (or physical) device.</doc>
</member>
<member name="floating" value="2" c:identifier="GDK_DEVICE_TYPE_FLOATING" glib:nick="floating">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="95">Device is a physical device, currently not attached to
any seat.</doc>
</member>
</enumeration>
<class name="Display" c:symbol-prefix="display" c:type="GdkDisplay" parent="GObject.Object" glib:type-name="GdkDisplay" glib:get-type="gdk_display_get_type">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="44">GdkDisplay objects are the GDK representation of a workstation.
Their purpose are two-fold:
- To manage and provide information about input devices (pointers, keyboards, etc)
- To manage and provide information about output devices (monitors, projectors, etc)
Most of the input device handling has been factored out into separate #GdkSeat
objects. Every display has a one or more seats, which can be accessed with
gdk_display_get_default_seat() and gdk_display_list_seats().
Output devices are represented by #GdkMonitor objects, which can be accessed
with gdk_display_get_monitor() and similar APIs.</doc>
<function name="get_default" c:identifier="gdk_display_get_default">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="322">Gets the default #GdkDisplay. This is a convenience
function for:
`gdk_display_manager_get_default_display (gdk_display_manager_get ())`.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="329">a #GdkDisplay, or %NULL if
there is no default display.</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
</function>
<function name="open" c:identifier="gdk_display_open">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1221">Opens a display.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1227">a #GdkDisplay, or %NULL if the
display could not be opened</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<parameter name="display_name" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1223">the name of the display to open</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<method name="beep" c:identifier="gdk_display_beep">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1040">Emits a short beep on @display</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1042">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="close" c:identifier="gdk_display_close">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="403">Closes the connection to the windowing system for the given display,
and cleans up associated resources.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="405">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="device_is_grabbed" c:identifier="gdk_display_device_is_grabbed">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="997">Returns %TRUE if there is an ongoing grab on @device for @display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1004">%TRUE if there is a grab in effect for @device.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="999">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1000">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
</parameters>
</method>
<method name="flush" c:identifier="gdk_display_flush">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1076">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 explicitly. 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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1078">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_app_launch_context" c:identifier="gdk_display_get_app_launch_context">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1203">Returns a #GdkAppLaunchContext suitable for launching
applications on the given display.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1210">a new #GdkAppLaunchContext for @display.
Free with g_object_unref() when done</doc>
<type name="AppLaunchContext" c:type="GdkAppLaunchContext*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1205">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_clipboard" c:identifier="gdk_display_get_clipboard">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1117">Gets the clipboard used for copy/paste operations.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1123">the display's clipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1119">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_default_group" c:identifier="gdk_display_get_default_group">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1098">Returns the default group leader surface for all toplevel surfaces
on @display. This surface is implicitly created by GDK.
See gdk_surface_set_group().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1106">The default group leader surface
for @display</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1100">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_default_seat" c:identifier="gdk_display_get_default_seat">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1525">Returns the default #GdkSeat for this display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1531">the default seat.</doc>
<type name="Seat" c:type="GdkSeat*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1527">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_event" c:identifier="gdk_display_get_event">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="442">Gets the next #GdkEvent to be processed for @display, fetching events from the
windowing system if necessary.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="449">the next #GdkEvent to be processed,
or %NULL if no events are pending</doc>
<type name="Event" c:type="GdkEvent*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="444">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_keymap" c:identifier="gdk_display_get_keymap">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1352">Returns the #GdkKeymap attached to @display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1358">the #GdkKeymap attached to @display.</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1354">the #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_monitor" c:identifier="gdk_display_get_monitor">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1584">Gets a monitor associated with this display.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1591">the #GdkMonitor, or %NULL if
@monitor_num is not a valid monitor number</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1586">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="monitor_num" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1587">number of the monitor</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</method>
<method name="get_monitor_at_point" c:identifier="gdk_display_get_monitor_at_point">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1629">Gets the monitor in which the point (@x, @y) is located,
or a nearby monitor if the point is not in any monitor.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1638">the monitor containing the point</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1631">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1632">the x coordinate of the point</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1633">the y coordinate of the point</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</method>
<method name="get_monitor_at_surface" c:identifier="gdk_display_get_monitor_at_surface">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1689">Gets the monitor in which the largest area of @surface
resides, or a monitor close to @surface if it is outside
of all monitors.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1698">the monitor with the largest overlap with @surface</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1691">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1692">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
</parameters>
</method>
<method name="get_n_monitors" c:identifier="gdk_display_get_n_monitors">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1562">Gets the number of monitors that belong to @display.
The returned number is valid until the next emission of the
#GdkDisplay::monitor-added or #GdkDisplay::monitor-removed signal.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1571">the number of monitors</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1564">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_name" c:identifier="gdk_display_get_name">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1023">Gets the name of the display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1029">a string representing the display name. This string is owned
by GDK and should not be modified or freed.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1025">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_primary_clipboard" c:identifier="gdk_display_get_primary_clipboard">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1136">Gets the clipboard used for the primary selection. On backends where the
primary clipboard is not supported natively, GDK emulates this clipboard
locally.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1144">the primary clipboard</doc>
<type name="Clipboard" c:type="GdkClipboard*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1138">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_primary_monitor" c:identifier="gdk_display_get_primary_monitor">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1603">Gets the primary monitor for the display.
The primary monitor is considered the monitor where the &#x201C;main desktop&#x201D;
lives. While normal application surfaces typically allow the window
manager to place the surfaces, specialized desktop applications
such as panels should place themselves on the primary monitor.
If no monitor is the designated primary monitor, any monitor
(usually the first) may be returned. To make sure there is a dedicated
primary monitor, use gdk_monitor_is_primary() on the returned monitor.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1618">the primary monitor, or any monitor if no
primary monitor is configured by the user</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1605">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_setting" c:identifier="gdk_display_get_setting">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1771">Retrieves a desktop-wide setting such as double-click time
for the @display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1780">%TRUE if the setting existed and a value was stored
in @value, %FALSE otherwise</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1773">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="name" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1774">the name of the setting</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1775">location to store the value of the setting</doc>
<type name="GObject.Value" c:type="GValue*"/>
</parameter>
</parameters>
</method>
<method name="get_startup_notification_id" c:identifier="gdk_display_get_startup_notification_id">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1283">Gets the startup notification ID for a Wayland display, or %NULL
if no ID has been defined.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1290">the startup notification ID for @display, or %NULL</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1285">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="has_pending" c:identifier="gdk_display_has_pending">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1237">Returns whether the display has events that are waiting
to be processed.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1244">%TRUE if there are events ready to be processed.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1239">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_closed" c:identifier="gdk_display_is_closed">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="426">Finds out if the display has been closed.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="432">%TRUE if the display is closed.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="428">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_composited" c:identifier="gdk_display_is_composited">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1396">Returns whether surfaces can reasonably be expected to have
their alpha channel drawn correctly on the screen. Check
gdk_display_is_rgba() for wether the display supports an
alpha channel.
On X11 this function returns whether a compositing manager is
compositing on @display.
On modern displays, this value is always %TRUE.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1410">Whether surfaces with RGBA visuals can reasonably be
expected to have their alpha channels drawn correctly on the screen.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1398">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_rgba" c:identifier="gdk_display_is_rgba">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1435">Returns wether surfaces on this @display are created with an
alpha channel.
Even if a %TRUE is returned, it is possible that the
surface&#x2019;s alpha channel won&#x2019;t be honored when displaying the
surface on the screen: in particular, for X an appropriate
windowing manager and compositing manager must be running to
provide appropriate display. Use gdk_display_is_composited()
to check if that is the case.
For setting an overall opacity for a top-level surface, see
gdk_surface_set_opacity().
On modern displays, this value is always %TRUE.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1454">%TRUE if surfaces are created with an alpha channel or
%FALSE if the display does not support this functionality.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1437">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="list_seats" c:identifier="gdk_display_list_seats">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1545">Returns the list of seats known to @display.</doc>
<return-value transfer-ownership="container">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1551">the
list of seats known to the #GdkDisplay</doc>
<type name="GLib.List" c:type="GList*">
<type name="Seat"/>
</type>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1547">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="notify_startup_complete" c:identifier="gdk_display_notify_startup_complete">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1260">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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1262">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="startup_id" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1263">a startup-notification identifier, for which
notification process should be completed</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="peek_event" c:identifier="gdk_display_peek_event">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="463">Gets a copy of the first #GdkEvent in the @display&#x2019;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.)</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="472">the first #GdkEvent on the
event queue</doc>
<type name="Event" c:type="GdkEvent*"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="465">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="put_event" c:identifier="gdk_display_put_event">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="497">Appends a copy of the given event onto the front of the event
queue for @display.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="499">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
<parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="500">a #GdkEvent.</doc>
<type name="Event" c:type="const GdkEvent*"/>
</parameter>
</parameters>
</method>
<method name="supports_input_shapes" c:identifier="gdk_display_supports_input_shapes">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1174">Returns %TRUE if gdk_surface_input_shape_combine_mask() can
be used to modify the input shape of surfaces on @display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1181">%TRUE if surfaces with modified input shape are supported</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1176">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="supports_shapes" c:identifier="gdk_display_supports_shapes">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1157">Returns %TRUE if gdk_surface_shape_combine_mask() can
be used to create shaped windows on @display.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1164">%TRUE if shaped windows are supported</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1159">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="sync" c:identifier="gdk_display_sync">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1054">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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="1056">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</instance-parameter>
</parameters>
</method>
<property name="composited" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="184">%TRUE if the display properly composits the alpha channel.
See gdk_display_is_composited() for details.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="197">%TRUE if the display supports an alpha channel. See gdk_display_is_rgba()
for details.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<glib:signal name="closed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="228">The ::closed signal is emitted when the connection to the windowing
system for @display is closed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="is_error" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="231">%TRUE if the display was closed due to an error</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="monitor-added" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="279">The ::monitor-added signal is emitted whenever a monitor is
added.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="282">the monitor that was just added</doc>
<type name="Monitor"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="monitor-removed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="295">The ::monitor-removed signal is emitted whenever a monitor is
removed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="298">the monitor that was just removed</doc>
<type name="Monitor"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="opened" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="212">The ::opened signal is emitted when the connection to the windowing
system for @display is opened.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="seat-added" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="247">The ::seat-added signal is emitted whenever a new seat is made
known to the windowing system.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="250">the seat that was just added</doc>
<type name="Seat"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="seat-removed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="263">The ::seat-removed signal is emitted whenever a seat is removed
by the windowing system.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="266">the seat that was just removed</doc>
<type name="Seat"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="setting-changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="311">The ::setting-changed signal is emitted whenever a setting
changes its value.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="setting" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplay.c" line="314">the name of the setting that changed</doc>
<type name="utf8" c:type="gchar*"/>
</parameter>
</parameters>
</glib:signal>
</class>
<class name="DisplayManager" c:symbol-prefix="display_manager" c:type="GdkDisplayManager" parent="GObject.Object" glib:type-name="GdkDisplayManager" glib:get-type="gdk_display_manager_get_type">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="62">The purpose of the #GdkDisplayManager singleton object is to offer
notification when displays appear or disappear or the default display
changes.
You can use gdk_display_manager_get() to obtain the #GdkDisplayManager
singleton, but that should be rarely necessary. Typically, initializing
GTK opens a display that you can work with without ever accessing the
#GdkDisplayManager.
The GDK library can be built with support for multiple backends.
The #GdkDisplayManager object determines which backend is used
at runtime.
When writing backend-specific code that is supposed to work with
multiple GDK backends, you have to consider both compile time and
runtime. At compile time, use the #GDK_WINDOWING_X11, #GDK_WINDOWING_WIN32
macros, etc. to find out which backends are present in the GDK library
you are building your application against. At runtime, use type-check
macros like GDK_IS_X11_DISPLAY() to find out which backend is in use:
## Backend-specific code ## {#backend-specific}
|[&lt;!-- language="C" --&gt;
#ifdef GDK_WINDOWING_X11
if (GDK_IS_X11_DISPLAY (display))
{
// make X11-specific calls here
}
else
#endif
#ifdef GDK_WINDOWING_QUARTZ
if (GDK_IS_QUARTZ_DISPLAY (display))
{
// make Quartz-specific calls here
}
else
#endif
g_error ("Unsupported GDK backend");
]|</doc>
<function name="get" c:identifier="gdk_display_manager_get">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="281">Gets the singleton #GdkDisplayManager object.
When called for the first time, this function consults the
`GDK_BACKEND` environment variable to find out which
of the supported GDK backends to use (in case GDK has been compiled
with multiple backends). Applications can use gdk_set_allowed_backends()
to limit what backends can be used.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="292">The global #GdkDisplayManager singleton;
gdk_parse_args(), gdk_init(), or gdk_init_check() must have
been called first.</doc>
<type name="DisplayManager" c:type="GdkDisplayManager*"/>
</return-value>
</function>
<method name="get_default_display" c:identifier="gdk_display_manager_get_default_display">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="307">Gets the default #GdkDisplay.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="313">a #GdkDisplay, or %NULL if
there is no default display.</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="manager" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="309">a #GdkDisplayManager</doc>
<type name="DisplayManager" c:type="GdkDisplayManager*"/>
</instance-parameter>
</parameters>
</method>
<method name="list_displays" c:identifier="gdk_display_manager_list_displays">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="357">List all currently open displays.</doc>
<return-value transfer-ownership="container">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="363">a newly
allocated #GSList of #GdkDisplay objects. Free with g_slist_free()
when you are done with it.</doc>
<type name="GLib.SList" c:type="GSList*">
<type name="Display"/>
</type>
</return-value>
<parameters>
<instance-parameter name="manager" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="359">a #GdkDisplayManager</doc>
<type name="DisplayManager" c:type="GdkDisplayManager*"/>
</instance-parameter>
</parameters>
</method>
<method name="open_display" c:identifier="gdk_display_manager_open_display">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="373">Opens a display.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="380">a #GdkDisplay, or %NULL if the
display could not be opened</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="manager" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="375">a #GdkDisplayManager</doc>
<type name="DisplayManager" c:type="GdkDisplayManager*"/>
</instance-parameter>
<parameter name="name" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="376">the name of the display to open</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_default_display" c:identifier="gdk_display_manager_set_default_display">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="338">Sets @display as the default display.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="manager" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="340">a #GdkDisplayManager</doc>
<type name="DisplayManager" c:type="GdkDisplayManager*"/>
</instance-parameter>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="341">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</parameter>
</parameters>
</method>
<property name="default-display" writable="1" transfer-ownership="none">
<type name="Display"/>
</property>
<glib:signal name="display-opened" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="146">The ::display-opened signal is emitted when a display is opened.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="149">the opened display</doc>
<type name="Display"/>
</parameter>
</parameters>
</glib:signal>
</class>
<class name="Drag" c:symbol-prefix="drag" c:type="GdkDrag" parent="GObject.Object" abstract="1" glib:type-name="GdkDrag" glib:get-type="gdk_drag_get_type">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="110">The GdkDrag struct contains only private fields and
should not be accessed directly.</doc>
<function name="begin" c:identifier="gdk_drag_begin">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4894">Starts a drag and creates a new drag context for it.
This function is called by the drag source.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4907">a newly created #GdkDrag or
%NULL on error.</doc>
<type name="Drag" c:type="GdkDrag*"/>
</return-value>
<parameters>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4896">the source surface for this drag</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4897">the device that controls this drag</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
<parameter name="content" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4898">the offered content</doc>
<type name="ContentProvider" c:type="GdkContentProvider*"/>
</parameter>
<parameter name="actions" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4899">the actions supported by this drag</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</parameter>
<parameter name="dx" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4900">the x offset to @device's position where the drag nominally started</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="dy" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4901">the y offset to @device's position where the drag nominally started</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</function>
<method name="drop_done" c:identifier="gdk_drag_drop_done">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="688">Inform GDK if the drop ended successfully. Passing %FALSE
for @success may trigger a drag cancellation animation.
This function is called by the drag source, and should
be the last call before dropping the reference to the
@drag.
The #GdkDrag will only take the first gdk_drag_drop_done()
call as effective, if this function is called multiple times,
all subsequent calls will be ignored.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="690">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
<parameter name="success" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="691">whether the drag was ultimatively successful</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="get_actions" c:identifier="gdk_drag_get_actions">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="153">Determines the bitmask of possible actions proposed by the source.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="159">the #GdkDragAction flags</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="155">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_device" c:identifier="gdk_drag_get_device">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="189">Returns the #GdkDevice associated to the GdkDrag object.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="195">The #GdkDevice associated to @drag.</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="191">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_drag_get_display">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="117">Gets the #GdkDisplay that the drag object was created for.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="123">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="119">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_drag_surface" c:identifier="gdk_drag_get_drag_surface">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="643">Returns the surface on which the drag icon should be rendered
during the drag operation. Note that the surface may not be
available until the drag operation has begun. GDK will move
the surface in accordance with the ongoing drag operation.
The surface is owned by @drag and will be destroyed when
the drag operation is over.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="654">the drag surface, or %NULL</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="645">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_formats" c:identifier="gdk_drag_get_formats">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="135">Retrieves the formats supported by this GdkDrag object.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="141">a #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="137">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_selected_action" c:identifier="gdk_drag_get_selected_action">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="171">Determines the action chosen by the drag destination.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="177">a #GdkDragAction value</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="173">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_hotspot" c:identifier="gdk_drag_set_hotspot">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="667">Sets the position of the drag surface that will be kept
under the cursor hotspot. Initially, the hotspot is at the
top left corner of the drag surface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="drag" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="669">a #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</instance-parameter>
<parameter name="hot_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="670">x coordinate of the drag surface hotspot</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="hot_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="671">y coordinate of the drag surface hotspot</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<property name="actions" writable="1" transfer-ownership="none">
<type name="DragAction"/>
</property>
<property name="content" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="351">The #GdkContentProvider.</doc>
<type name="ContentProvider"/>
</property>
<property name="device" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="366">The #GdkDevice that is performing the drag.</doc>
<type name="Device"/>
</property>
<property name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="381">The #GdkDisplay that the drag belongs to.</doc>
<type name="Display"/>
</property>
<property name="formats" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="395">The possible formats that the drag can provide its data in.</doc>
<type name="ContentFormats"/>
</property>
<property name="selected-action" writable="1" transfer-ownership="none">
<type name="DragAction"/>
</property>
<property name="surface" writable="1" construct-only="1" transfer-ownership="none">
<type name="Surface"/>
</property>
<glib:signal name="cancel" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="440">The drag operation was cancelled.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="reason" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="443">The reason the drag was cancelled</doc>
<type name="DragCancelReason"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="dnd-finished" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="471">The drag operation was finished, the destination
finished reading all data. The drag object can now
free all miscellaneous data.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="drop-performed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="456">The drag operation was performed on an accepting client.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<bitfield name="DragAction" glib:type-name="GdkDragAction" glib:get-type="gdk_drag_action_get_type" c:type="GdkDragAction">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="565">Used in #GdkDrag to indicate what the destination
should do with the dropped data.</doc>
<member name="copy" value="1" c:identifier="GDK_ACTION_COPY" glib:nick="copy">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="567">Copy the data.</doc>
</member>
<member name="move" value="2" c:identifier="GDK_ACTION_MOVE" glib:nick="move">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="568">Move the data, i.e. first copy it, then delete
it from the source using the DELETE target of the X selection protocol.</doc>
</member>
<member name="link" value="4" c:identifier="GDK_ACTION_LINK" glib:nick="link">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="570">Add a link to the data. Note that this is only
useful if source and destination agree on what it means.</doc>
</member>
<member name="ask" value="8" c:identifier="GDK_ACTION_ASK" glib:nick="ask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="572">Ask the user what to do with the data.</doc>
</member>
<function name="is_unique" c:identifier="gdk_drag_action_is_unique">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="776">Checks if @action represents a single action or if it
includes multiple flags that can be selected from.
When @action is 0 - ie no action was given, %TRUE
is returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="786">%TRUE if exactly one action was given</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="action" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="778">a #GdkDragAction</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</parameter>
</parameters>
</function>
</bitfield>
<enumeration name="DragCancelReason" glib:type-name="GdkDragCancelReason" glib:get-type="gdk_drag_cancel_reason_get_type" c:type="GdkDragCancelReason">
<doc xml:space="preserve" filename="../gdk/gdkdrag.h" line="42">Used in #GdkDrag to the reason of a cancelled DND operation.</doc>
<member name="no_target" value="0" c:identifier="GDK_DRAG_CANCEL_NO_TARGET" glib:nick="no-target">
<doc xml:space="preserve" filename="../gdk/gdkdrag.h" line="44">There is no suitable drop target.</doc>
</member>
<member name="user_cancelled" value="1" c:identifier="GDK_DRAG_CANCEL_USER_CANCELLED" glib:nick="user-cancelled">
<doc xml:space="preserve" filename="../gdk/gdkdrag.h" line="45">Drag cancelled by the user</doc>
</member>
<member name="error" value="2" c:identifier="GDK_DRAG_CANCEL_ERROR" glib:nick="error">
<doc xml:space="preserve" filename="../gdk/gdkdrag.h" line="46">Unspecified error.</doc>
</member>
</enumeration>
<class name="DrawContext" c:symbol-prefix="draw_context" c:type="GdkDrawContext" parent="GObject.Object" abstract="1" glib:type-name="GdkDrawContext" glib:get-type="gdk_draw_context_get_type">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="28">#GdkDrawContext is the base object used by contexts implementing different
rendering methods, such as #GdkGLContext or #GdkVulkanContext. It provides
shared functionality between those contexts.
You will always interact with one of those s.ubclasses.
A GdkDrawContext is always associated with a single toplevel surface.</doc>
<method name="begin_frame" c:identifier="gdk_draw_context_begin_frame">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="253">Indicates that you are beginning the process of redrawing @region
on the @context's surface.
Calling this function begins a drawing operation using @context on the
surface that @context was created from. The actual requirements and
guarantees for the drawing operation vary for different implementations
of drawing, so a #GdkCairoContext and a #GdkGLContext need to be treated
differently.
A call to this function is a requirement for drawing and must be followed
by a call to gdk_draw_context_end_frame(), which will complete the
drawing operation and ensure the contents become visible on screen.
Note that the @region passed to this function is the minimum region that
needs to be drawn and depending on implementation, windowing system and
hardware in use, it might be necessary to draw a larger region. Drawing
implementation must use gdk_draw_context_get_frame_region() to query the
region that must be drawn.
When using GTK+, the widget system automatically places calls to
gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() via the
use of #GskRenderers, so application code does not need to call these
functions explicitly.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="255">the context used to draw the frame</doc>
<type name="DrawContext" c:type="GdkDrawContext*"/>
</instance-parameter>
<parameter name="region" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="256">minimum region that should be drawn</doc>
<type name="cairo.Region" c:type="const cairo_region_t*"/>
</parameter>
</parameters>
</method>
<method name="end_frame" c:identifier="gdk_draw_context_end_frame">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="318">Ends a drawing operation started with gdk_draw_context_begin_frame()
and makes the drawing available on screen. See that function for more
details about drawing.
When using a #GdkGLContext, this function may call `glFlush()`
implicitly before returning; it is not recommended to call `glFlush()`
explicitly before calling this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="320">a #GdkDrawContext</doc>
<type name="DrawContext" c:type="GdkDrawContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_draw_context_get_display">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="217">Retrieves the #GdkDisplay the @context is created for</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="223">a #GdkDisplay or %NULL</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="219">a #GdkDrawContext</doc>
<type name="DrawContext" c:type="GdkDrawContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_region" c:identifier="gdk_draw_context_get_frame_region">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="361">Retrieves the region that is currently in the process of being repainted.
After a call to gdk_draw_context_begin_frame() this function will return
a union of the region passed to that function and the area of the surface
that the @context determined needs to be repainted.
If @context is not inbetween calls to gdk_draw_context_begin_frame() and
gdk_draw_context_end_frame(), %NULL will be returned.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="374">a Cairo region or %NULL if not drawing
a frame.</doc>
<type name="cairo.Region" c:type="const cairo_region_t*"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="363">a #GdkDrawContext</doc>
<type name="DrawContext" c:type="GdkDrawContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_surface" c:identifier="gdk_draw_context_get_surface">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="235">Retrieves the #GdkSurface used by the @context.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="241">a #GdkSurface or %NULL</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="237">a #GdkDrawContext</doc>
<type name="DrawContext" c:type="GdkDrawContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_in_frame" c:identifier="gdk_draw_context_is_in_frame">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="182">Returns %TRUE if @context is in the process of drawing to its surface
after a call to gdk_draw_context_begin_frame() and not yet having called
gdk_draw_context_end_frame().
In this situation, drawing commands may be effecting the contents of a
@context's surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="192">%TRUE if the context is between begin_frame() and end_frame() calls.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="184">a #GdkDrawContext</doc>
<type name="DrawContext" c:type="GdkDrawContext*"/>
</instance-parameter>
</parameters>
</method>
<property name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="147">The #GdkDisplay used to create the #GdkDrawContext.</doc>
<type name="Display"/>
</property>
<property name="surface" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrawcontext.c" line="160">The #GdkSurface the gl context is bound to.</doc>
<type name="Surface"/>
</property>
</class>
<record name="DrawingContext" c:type="GdkDrawingContext" disguised="1">
</record>
<class name="Drop" c:symbol-prefix="drop" c:type="GdkDrop" parent="GObject.Object" abstract="1" glib:type-name="GdkDrop" glib:get-type="gdk_drop_get_type">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="62">The GdkDrop struct contains only private fields and
should not be accessed directly.</doc>
<method name="finish" c:identifier="gdk_drop_finish">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="534">Ends the drag operation after a drop.
The @action must be a single action selected from the actions
available via gdk_drop_get_actions().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="536">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="action" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="537">the action performed by the destination or 0 if the drop
failed</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</parameter>
</parameters>
</method>
<method name="get_actions" c:identifier="gdk_drop_get_actions">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="444">Returns the possible actions for this #GdkDrop. If this value
contains multiple actions - ie gdk_drag_action_is_unique()
returns %FALSE for the result - gdk_drag_finish() must choose
the action to use when accepting the drop.
This value may change over the lifetime of the #GdkDrop both
as a response to source side actions as well as to calls to
gdk_drop_status() or gdk_drag_finish(). The source side will
not change this value anymore once a drop has started.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="458">The possible #GdkDragActions</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="446">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_device" c:identifier="gdk_drop_get_device">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="389">Returns the #GdkDevice performing the drop.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="395">The #GdkDevice performing the drop.</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="391">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_drop_get_display">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="371">Gets the #GdkDisplay that @self was created for.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="377">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="373">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_drag" c:identifier="gdk_drop_get_drag">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="487">If this is an in-app drag-and-drop operation, returns the #GdkDrag
that corresponds to this drop.
If it is not, %NULL is returned.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="496">the corresponding #GdkDrag</doc>
<type name="Drag" c:type="GdkDrag*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="489">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_formats" c:identifier="gdk_drop_get_formats">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="407">Returns the #GdkContentFormats that the drop offers the data
to be read in.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="414">The possible #GdkContentFormats</doc>
<type name="ContentFormats" c:type="GdkContentFormats*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="409">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_surface" c:identifier="gdk_drop_get_surface">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="426">Returns the #GdkSurface performing the drop.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="432">The #GdkSurface performing the drop.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="428">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
</parameters>
</method>
<method name="read_async" c:identifier="gdk_drop_read_async">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="585">Asynchronously read the dropped data from a #GdkDrop
in a format that complies with one of the mime types.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="587">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="mime_types" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="588">
pointer to an array of mime types</doc>
<array c:type="const char**">
<type name="utf8"/>
</array>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="590">the io priority for the read operation</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="591">optional #GCancellable object,
%NULL to ignore</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="4">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="593">a #GAsyncReadyCallback to call when
the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="595">the data to pass to @callback</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_finish" c:identifier="gdk_drop_read_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="622">Finishes an async drop read operation, see gdk_drop_read_async().</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="631">the #GInputStream, or %NULL</doc>
<type name="Gio.InputStream" c:type="GInputStream*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="624">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="625">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
<parameter name="out_mime_type" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="626">return location for the used mime type</doc>
<type name="utf8" c:type="const char**"/>
</parameter>
</parameters>
</method>
<method name="read_text_async" c:identifier="gdk_drop_read_text_async">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="837">Asynchronously request the drag operation's contents converted to a string.
When the operation is finished @callback will be called. You can then
call gdk_drop_read_text_finish() to get the result.
This is a simple wrapper around gdk_drop_read_value_async(). Use
that function or gdk_drop_read_async() directly if you need more
control over the operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="839">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="840">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="2">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="841">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="842">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_text_finish" c:identifier="gdk_drop_read_text_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="871">Finishes an asynchronous read started with
gdk_drop_read_text_async().</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="881">a new string or %NULL on error.</doc>
<type name="utf8" c:type="char*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="873">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="874">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<method name="read_value_async" c:identifier="gdk_drop_read_value_async">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="773">Asynchronously request the drag operation's contents converted to the given
@type. When the operation is finished @callback will be called.
You can then call gdk_drop_read_value_finish() to get the resulting
#GValue.
For local drag'n'drop operations that are available in the given #GType, the
value will be copied directly. Otherwise, GDK will try to use
gdk_content_deserialize_async() to convert the data.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="775">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="776">a #GType to read</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="777">the [I/O priority][io-priority]
of the request.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="779">optional #GCancellable object, %NULL to ignore.</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="4">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="780">callback to call when the request is satisfied</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="781">the data to pass to callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="read_value_finish" c:identifier="gdk_drop_read_value_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="813">Finishes an async drop read started with
gdk_drop_read_value_async().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="823">a #GValue containing the result.</doc>
<type name="GObject.Value" c:type="const GValue*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="815">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="816">a #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</method>
<method name="status" c:identifier="gdk_drop_status">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="508">Selects all actions that are potentially supported by the destination.
When calling this function, do not restrict the passed in actions to
the ones provided by gdk_drop_get_actions(). Those actions may
change in the future, even depending on the actions you provide here.
This function should be called by drag destinations in response to
%GDK_DRAG_ENTER or %GDK_DRAG_MOTION events. If the destination does
not yet know the exact actions it supports, it should set any possible
actions first and then later call this function again.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="510">a #GdkDrop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</instance-parameter>
<parameter name="actions" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="511">Supported actions of the destination, or 0 to indicate
that a drop will not be accepted</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</parameter>
</parameters>
</method>
<property name="actions" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="273">The possible actions for this drop</doc>
<type name="DragAction"/>
</property>
<property name="device" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="289">The #GdkDevice performing the drop</doc>
<type name="Device"/>
</property>
<property name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="304">The #GdkDisplay that the drop belongs to.</doc>
<type name="Display"/>
</property>
<property name="drag" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="318">The #GdkDrag that initiated this drop</doc>
<type name="Drag"/>
</property>
<property name="formats" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="333">The possible formats that the drop can provide its data in.</doc>
<type name="ContentFormats"/>
</property>
<property name="surface" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrop.c" line="348">The #GdkSurface the drop happens on</doc>
<type name="Surface"/>
</property>
</class>
<constant name="EVENT_PROPAGATE" value="false" c:type="GDK_EVENT_PROPAGATE">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="65">Use this macro as the return value for continuing the propagation of
an event handler.</doc>
<type name="gboolean" c:type="gboolean"/>
</constant>
<constant name="EVENT_STOP" value="true" c:type="GDK_EVENT_STOP">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="73">Use this macro as the return value for stopping the propagation of
an event handler.</doc>
<type name="gboolean" c:type="gboolean"/>
</constant>
<class name="Event" c:symbol-prefix="event" parent="GObject.Object" glib:type-name="GdkEvent" glib:get-type="gdk_event_get_type">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="53">The GdkEvent struct contains only private fields and
should not be accessed directly.</doc>
<constructor name="new" c:identifier="gdk_event_new">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="449">Creates a new event of the given type. All fields are set to 0.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="455">a newly-allocated #GdkEvent. Free with g_object_unref()</doc>
<type name="Event" c:type="GdkEvent*"/>
</return-value>
<parameters>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="451">a #GdkEventType</doc>
<type name="EventType" c:type="GdkEventType"/>
</parameter>
</parameters>
</constructor>
<method name="_get_angle" c:identifier="gdk_events_get_angle" moved-to="events_get_angle">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1660">If both events contain X/Y information, this function will return %TRUE
and return in @angle the relative angle from @event1 to @event2. The rotation
direction for positive angles is from the positive X axis towards the positive
Y axis.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1671">%TRUE if the angle could be calculated.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1662">first #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="event2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1663">second #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="angle" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1664">return location for the relative angle between both events</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="_get_center" c:identifier="gdk_events_get_center" moved-to="events_get_center">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1702">If both events contain X/Y information, the center of both coordinates
will be returned in @x and @y.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1712">%TRUE if the center could be calculated.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1704">first #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="event2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1705">second #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1706">return location for the X coordinate of the center</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1707">return location for the Y coordinate of the center</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="_get_distance" c:identifier="gdk_events_get_distance" moved-to="events_get_distance">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1639">If both events have X/Y information, the distance between both coordinates
(as in a straight line going from @event1 to @event2) will be returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1648">%TRUE if the distance could be calculated.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1641">first #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="event2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1642">second #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="distance" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1643">return location for the distance</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="copy" c:identifier="gdk_event_copy">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="572">Copies a #GdkEvent, copying or incrementing the reference count of the
resources associated with it (e.g. #GdkSurface&#x2019;s and strings).</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="579">a copy of @event. Free with g_object_unref()</doc>
<type name="Event" c:type="GdkEvent*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="574">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_axes" c:identifier="gdk_event_get_axes">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2410">Extracts all axis values from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2418">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2412">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="axes" direction="out" caller-allocates="0" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2413">the array of values for all axes</doc>
<array length="1" zero-terminated="0" c:type="gdouble**">
<type name="gdouble" c:type="gdouble*"/>
</array>
</parameter>
<parameter name="n_axes" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2414">the length of array</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_axis" c:identifier="gdk_event_get_axis">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1400">Extract the axis value for a particular axis use from
an event structure.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1409">%TRUE if the specified axis was found, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1402">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="axis_use" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1403">the axis use to look for</doc>
<type name="AxisUse" c:type="GdkAxisUse"/>
</parameter>
<parameter name="value" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1404">location to store the value found</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_button" c:identifier="gdk_event_get_button">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1089">Extract the button number from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1096">%TRUE if the event delivered a button number</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1091">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="button" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1092">location to store mouse button number</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_click_count" c:identifier="gdk_event_get_click_count">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1128">Extracts the click count from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1135">%TRUE if the event delivered a click count</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1130">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="click_count" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1131">location to store click count</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_coords" c:identifier="gdk_event_get_coords">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="891">Extract the event surface relative x/y coordinates from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="899">%TRUE if the event delivered event surface coordinates</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="893">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="x_win" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="894">location to put event surface x coordinate</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="y_win" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="895">location to put event surface y coordinate</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_crossing_detail" c:identifier="gdk_event_get_crossing_detail">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2060">Extracts the crossing detail from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2067">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2062">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="detail" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2063">return location for the crossing detail</doc>
<type name="NotifyType" c:type="GdkNotifyType*"/>
</parameter>
</parameters>
</method>
<method name="get_crossing_mode" c:identifier="gdk_event_get_crossing_mode">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2029">Extracts the crossing mode from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2036">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2031">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="mode" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2032">return location for the crossing mode</doc>
<type name="CrossingMode" c:type="GdkCrossingMode*"/>
</parameter>
</parameters>
</method>
<method name="get_device" c:identifier="gdk_event_get_device">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1500">If the event contains a &#x201C;device&#x201D; field, this function will return
it, else it will return %NULL.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1507">a #GdkDevice, or %NULL.</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1502">a #GdkEvent.</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_device_tool" c:identifier="gdk_event_get_device_tool">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1875">If the event was generated by a device that supports
different tools (eg. a tablet), this function will
return a #GdkDeviceTool representing the tool that
caused the event. Otherwise, %NULL will be returned.
Note: the #GdkDeviceTool&lt;!-- --&gt;s will be constant during
the application lifetime, if settings must be stored
persistently across runs, see gdk_device_tool_get_serial()</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1888">The current device tool, or %NULL</doc>
<type name="DeviceTool" c:type="GdkDeviceTool*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1877">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_event_get_display">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1749">Retrieves the #GdkDisplay associated to the @event.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1755">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1751">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_drop" c:identifier="gdk_event_get_drop">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2004">Gets the #GdkDrop from a DND event.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2010">the drop</doc>
<type name="Drop" c:type="GdkDrop*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2006">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_event_sequence" c:identifier="gdk_event_get_event_sequence">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1769">If @event if of type %GDK_TOUCH_BEGIN, %GDK_TOUCH_UPDATE,
%GDK_TOUCH_END or %GDK_TOUCH_CANCEL, returns the #GdkEventSequence
to which the event belongs. Otherwise, return %NULL.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1777">the event sequence that the event belongs to</doc>
<type name="EventSequence" c:type="GdkEventSequence*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1771">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_event_type" c:identifier="gdk_event_get_event_type">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1841">Retrieves the type of the event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1847">a #GdkEventType</doc>
<type name="EventType" c:type="GdkEventType"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1843">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_focus_in" c:identifier="gdk_event_get_focus_in">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2287">Extracts whether this is a focus-in or focus-out event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2294">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2289">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="focus_in" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2290">return location for focus direction</doc>
<type name="gboolean" c:type="gboolean*"/>
</parameter>
</parameters>
</method>
<method name="get_grab_surface" c:identifier="gdk_event_get_grab_surface">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2262">Extracts the grab surface from a grab broken event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2269">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2264">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="surface" direction="out" caller-allocates="0" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2265">Return location for the grab surface</doc>
<type name="Surface" c:type="GdkSurface**"/>
</parameter>
</parameters>
</method>
<method name="get_key_group" c:identifier="gdk_event_get_key_group">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1240">Extracts the key group from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1247">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1242">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="group" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1243">return location for the key group</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_key_is_modifier" c:identifier="gdk_event_get_key_is_modifier">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1270">Extracts whether the event is a key event for
a modifier key.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1278">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1272">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="is_modifier" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1273">return location for the value</doc>
<type name="gboolean" c:type="gboolean*"/>
</parameter>
</parameters>
</method>
<method name="get_keycode" c:identifier="gdk_event_get_keycode">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1205">Extracts the hardware keycode from an event.
Also see gdk_event_get_scancode().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1214">%TRUE if the event delivered a hardware keycode</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1207">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="keycode" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1208">location to store the keycode</doc>
<type name="guint16" c:type="guint16*"/>
</parameter>
</parameters>
</method>
<method name="get_keyval" c:identifier="gdk_event_get_keyval">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1163">Extracts the keyval from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1170">%TRUE if the event delivered a key symbol</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1165">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="keyval" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1166">location to store the keyval</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_motion_history" c:identifier="gdk_event_get_motion_history">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2452">Retrieves the history of the @event motion, as a list of time and
coordinates.</doc>
<return-value transfer-ownership="container" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2459">a list
of time and coordinates</doc>
<type name="GLib.List" c:type="GList*">
<type name="TimeCoord"/>
</type>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2454">a #GdkEvent of type %GDK_MOTION_NOTIFY</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_pad_axis_value" c:identifier="gdk_event_get_pad_axis_value">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2381">Extracts the information from a pad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2389">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2383">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="index" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2384">Return location for the axis index</doc>
<type name="guint" c:type="guint*"/>
</parameter>
<parameter name="value" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2385">Return location for the axis value</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_pad_button" c:identifier="gdk_event_get_pad_button">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2354">Extracts information about the pressed button from
a pad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2362">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2356">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="button" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2357">Return location for the button</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_pad_group_mode" c:identifier="gdk_event_get_pad_group_mode">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2312">Extracts group and mode information from a pad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2320">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2314">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="group" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2315">return location for the group</doc>
<type name="guint" c:type="guint*"/>
</parameter>
<parameter name="mode" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2316">return location for the mode</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_pointer_emulated" c:identifier="gdk_event_get_pointer_emulated">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="551">Returns whether this event is an 'emulated' pointer event (typically
from a touch event), as opposed to a real one.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="558">%TRUE if this event is emulated</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="553">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_root_coords" c:identifier="gdk_event_get_root_coords">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="963">Extract the root window relative x/y coordinates from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="971">%TRUE if the event delivered root window coordinates</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="965">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="x_root" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="966">location to put root window x coordinate</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="y_root" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="967">location to put root window y coordinate</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_scancode" c:identifier="gdk_event_get_scancode">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1929">Gets the keyboard low-level scancode of a key event.
This is usually hardware_keycode. On Windows this is the high
word of WM_KEY{DOWN,UP} lParam which contains the scancode and
some extended flags.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1939">The associated keyboard scancode or 0</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1931">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_scroll_deltas" c:identifier="gdk_event_get_scroll_deltas">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1336">Retrieves the scroll deltas from a #GdkEvent</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1344">%TRUE if the event contains smooth scroll information</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1338">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="delta_x" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1339">return location for X delta</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="delta_y" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1340">return location for Y delta</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="get_scroll_direction" c:identifier="gdk_event_get_scroll_direction">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1301">Extracts the scroll direction from an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1308">%TRUE if the event delivered a scroll direction</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1303">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="direction" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1304">location to store the scroll direction</doc>
<type name="ScrollDirection" c:type="GdkScrollDirection*"/>
</parameter>
</parameters>
</method>
<method name="get_seat" c:identifier="gdk_event_get_seat">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1857">Returns the #GdkSeat this event was generated for.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1863">The #GdkSeat of this event</doc>
<type name="Seat" c:type="GdkSeat*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1859">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_source_device" c:identifier="gdk_event_get_source_device">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1534">This function returns the hardware (slave) #GdkDevice that has
triggered the event, falling back to the virtual (master) device
(as in gdk_event_get_device()) if the event wasn&#x2019;t caused by
interaction with a hardware device. This may happen for example
in synthesized crossing events after a #GdkSurface updates its
geometry or a grab is acquired/released.
If the event does not contain a device field, this function will
return %NULL.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1548">a #GdkDevice, or %NULL.</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1536">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_state" c:identifier="gdk_event_get_state">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="812">If the event contains a &#x201C;state&#x201D; field, puts that field in @state.
Otherwise stores an empty state (0).
@event may be %NULL, in which case it&#x2019;s treated
as if the event had no state field.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="823">%TRUE if there was a state field in the event</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="814">a #GdkEvent or %NULL</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="state" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="815">return location for state</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<method name="get_surface" c:identifier="gdk_event_get_surface">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="728">Extracts the #GdkSurface associated with an event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="734">The #GdkSurface associated with the event</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="730">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_time" c:identifier="gdk_event_get_time">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="744">Returns the time stamp from @event, if there is one; otherwise
returns #GDK_CURRENT_TIME. If @event is %NULL, returns #GDK_CURRENT_TIME.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="751">time stamp field from @event</doc>
<type name="guint32" c:type="guint32"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="746">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_touch_emulating_pointer" c:identifier="gdk_event_get_touch_emulating_pointer">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2235">Extracts whether a touch event is emulating a pointer event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2242">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2237">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="emulating" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2238">Return location for information</doc>
<type name="gboolean" c:type="gboolean*"/>
</parameter>
</parameters>
</method>
<method name="get_touchpad_angle_delta" c:identifier="gdk_event_get_touchpad_angle_delta">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2185">Extracts the angle from a touchpad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2192">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2187">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="delta" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2188">Return location for angle</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
</parameters>
</method>
<method name="get_touchpad_deltas" c:identifier="gdk_event_get_touchpad_deltas">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2151">Extracts delta information from a touchpad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2159">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2153">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="dx" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2154">return location for x</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
<parameter name="dy" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2155">return location for y</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
</parameters>
</method>
<method name="get_touchpad_gesture_n_fingers" c:identifier="gdk_event_get_touchpad_gesture_n_fingers">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2121">Extracts the number of fingers from a touchpad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2128">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2123">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="n_fingers" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2124">return location for the number of fingers</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</method>
<method name="get_touchpad_gesture_phase" c:identifier="gdk_event_get_touchpad_gesture_phase">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2091">Extracts the touchpad gesture phase from a touchpad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2098">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2093">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="phase" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2094">Return location for the gesture phase</doc>
<type name="TouchpadGesturePhase" c:type="GdkTouchpadGesturePhase*"/>
</parameter>
</parameters>
</method>
<method name="get_touchpad_scale" c:identifier="gdk_event_get_touchpad_scale">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2210">Extracts the scale from a touchpad event.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2217">%TRUE on success, otherwise %FALSE</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2212">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
<parameter name="scale" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="2213">Return location for scale</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
</parameters>
</method>
<method name="is_scroll_stop_event" c:identifier="gdk_event_is_scroll_stop_event">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1380">Check whether a scroll event is a stop scroll event. Scroll sequences
with smooth scroll information may provide a stop scroll event once the
interaction with the device finishes, e.g. by lifting a finger. This
stop scroll event is the signal that a widget may trigger kinetic
scrolling based on the current velocity.
Stop scroll events always have a a delta of 0/0.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1392">%TRUE if the event is a scroll stop event</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1382">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_sent" c:identifier="gdk_event_is_sent">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1987">Returns whether the event was sent explicitly.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1993">%TRUE if the event was sent explicitly</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1989">a #GdkEvent</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_coords" c:identifier="gdk_event_set_coords">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<type name="gdouble" c:type="gdouble"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<type name="gdouble" c:type="gdouble"/>
</parameter>
</parameters>
</method>
<method name="set_device" c:identifier="gdk_event_set_device">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1484">Sets the device for @event to @device. The event must
have been allocated by GTK+, for instance, by
gdk_event_copy().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1486">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1487">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
</parameters>
</method>
<method name="set_device_tool" c:identifier="gdk_event_set_device_tool">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1902">Sets the device tool for this event, should be rarely used.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1904">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="tool" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1905">tool to set on the event, or %NULL</doc>
<type name="DeviceTool" c:type="GdkDeviceTool*"/>
</parameter>
</parameters>
</method>
<method name="set_display" c:identifier="gdk_event_set_display">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1735">Sets the display that an event is associated with.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1737">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1738">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</parameter>
</parameters>
</method>
<method name="set_keyval" c:identifier="gdk_event_set_keyval">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="keyval" transfer-ownership="none">
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="set_source_device" c:identifier="gdk_event_set_source_device">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1517">Sets the slave device for @event to @device.
The event must have been allocated by GTK+,
for instance by gdk_event_copy().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1519">a #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1520">a #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
</parameters>
</method>
<method name="triggers_context_menu" c:identifier="gdk_event_triggers_context_menu">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1562">This function returns whether a #GdkEventButton should trigger a
context menu, according to platform conventions. The right mouse
button always triggers context menus. Additionally, if
gdk_keymap_get_modifier_mask() returns a non-0 mask for
%GDK_MODIFIER_INTENT_CONTEXT_MENU, then the left mouse button will
also trigger a context menu if this modifier is pressed.
This function should always be used instead of simply checking for
event-&gt;button == %GDK_BUTTON_SECONDARY.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1576">%TRUE if the event should trigger a context menu.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1564">a #GdkEvent, currently only button events are meaningful values</doc>
<type name="Event" c:type="const GdkEvent*"/>
</instance-parameter>
</parameters>
</method>
<property name="event-type" writable="1" construct-only="1" transfer-ownership="none">
<type name="EventType"/>
</property>
</class>
<record name="EventAny" c:type="GdkEventAny" disguised="1">
</record>
<record name="EventButton" c:type="GdkEventButton" disguised="1">
</record>
<record name="EventConfigure" c:type="GdkEventConfigure" disguised="1">
</record>
<record name="EventCrossing" c:type="GdkEventCrossing" disguised="1">
</record>
<record name="EventDND" c:type="GdkEventDND" disguised="1">
</record>
<record name="EventFocus" c:type="GdkEventFocus" disguised="1">
</record>
<record name="EventGrabBroken" c:type="GdkEventGrabBroken" disguised="1">
</record>
<record name="EventKey" c:type="GdkEventKey" disguised="1">
</record>
<bitfield name="EventMask" glib:type-name="GdkEventMask" glib:get-type="gdk_event_mask_get_type" c:type="GdkEventMask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="353">A set of bit-flags to indicate which events a surface is to receive.
Most of these masks map onto one or more of the #GdkEventType event types
above.
See the [input handling overview][chap-input-handling] for details of
[event masks][event-masks] and [event propagation][event-propagation].
If %GDK_TOUCH_MASK is enabled, the surface will receive touch events
from touch-enabled devices. Those will come as sequences of #GdkEventTouch
with type %GDK_TOUCH_UPDATE, enclosed by two events with
type %GDK_TOUCH_BEGIN and %GDK_TOUCH_END (or %GDK_TOUCH_CANCEL).
gdk_event_get_event_sequence() returns the event sequence for these
events, so different sequences may be distinguished.</doc>
<member name="exposure_mask" value="2" c:identifier="GDK_EXPOSURE_MASK" glib:nick="exposure-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="355">receive expose events</doc>
</member>
<member name="pointer_motion_mask" value="4" c:identifier="GDK_POINTER_MOTION_MASK" glib:nick="pointer-motion-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="356">receive all pointer motion events</doc>
</member>
<member name="button_motion_mask" value="16" c:identifier="GDK_BUTTON_MOTION_MASK" glib:nick="button-motion-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="357">receive pointer motion events while any button is pressed</doc>
</member>
<member name="button1_motion_mask" value="32" c:identifier="GDK_BUTTON1_MOTION_MASK" glib:nick="button1-motion-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="358">receive pointer motion events while 1 button is pressed</doc>
</member>
<member name="button2_motion_mask" value="64" c:identifier="GDK_BUTTON2_MOTION_MASK" glib:nick="button2-motion-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="359">receive pointer motion events while 2 button is pressed</doc>
</member>
<member name="button3_motion_mask" value="128" c:identifier="GDK_BUTTON3_MOTION_MASK" glib:nick="button3-motion-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="360">receive pointer motion events while 3 button is pressed</doc>
</member>
<member name="button_press_mask" value="256" c:identifier="GDK_BUTTON_PRESS_MASK" glib:nick="button-press-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="361">receive button press events</doc>
</member>
<member name="button_release_mask" value="512" c:identifier="GDK_BUTTON_RELEASE_MASK" glib:nick="button-release-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="362">receive button release events</doc>
</member>
<member name="key_press_mask" value="1024" c:identifier="GDK_KEY_PRESS_MASK" glib:nick="key-press-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="363">receive key press events</doc>
</member>
<member name="key_release_mask" value="2048" c:identifier="GDK_KEY_RELEASE_MASK" glib:nick="key-release-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="364">receive key release events</doc>
</member>
<member name="enter_notify_mask" value="4096" c:identifier="GDK_ENTER_NOTIFY_MASK" glib:nick="enter-notify-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="365">receive surface enter events</doc>
</member>
<member name="leave_notify_mask" value="8192" c:identifier="GDK_LEAVE_NOTIFY_MASK" glib:nick="leave-notify-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="366">receive surface leave events</doc>
</member>
<member name="focus_change_mask" value="16384" c:identifier="GDK_FOCUS_CHANGE_MASK" glib:nick="focus-change-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="367">receive focus change events</doc>
</member>
<member name="structure_mask" value="32768" c:identifier="GDK_STRUCTURE_MASK" glib:nick="structure-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="368">receive events about surface configuration change</doc>
</member>
<member name="property_change_mask" value="65536" c:identifier="GDK_PROPERTY_CHANGE_MASK" glib:nick="property-change-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="369">receive property change events</doc>
</member>
<member name="proximity_in_mask" value="262144" c:identifier="GDK_PROXIMITY_IN_MASK" glib:nick="proximity-in-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="370">receive proximity in events</doc>
</member>
<member name="proximity_out_mask" value="524288" c:identifier="GDK_PROXIMITY_OUT_MASK" glib:nick="proximity-out-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="371">receive proximity out events</doc>
</member>
<member name="substructure_mask" value="1048576" c:identifier="GDK_SUBSTRUCTURE_MASK" glib:nick="substructure-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="372">receive events about surface configuration changes of child surfaces</doc>
</member>
<member name="scroll_mask" value="2097152" c:identifier="GDK_SCROLL_MASK" glib:nick="scroll-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="373">receive scroll events</doc>
</member>
<member name="touch_mask" value="4194304" c:identifier="GDK_TOUCH_MASK" glib:nick="touch-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="374">receive touch events</doc>
</member>
<member name="smooth_scroll_mask" value="8388608" c:identifier="GDK_SMOOTH_SCROLL_MASK" glib:nick="smooth-scroll-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="375">receive smooth scrolling events</doc>
</member>
<member name="touchpad_gesture_mask" value="16777216" c:identifier="GDK_TOUCHPAD_GESTURE_MASK" glib:nick="touchpad-gesture-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="376">receive touchpad gesture events</doc>
</member>
<member name="tablet_pad_mask" value="33554432" c:identifier="GDK_TABLET_PAD_MASK" glib:nick="tablet-pad-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="377">receive tablet pad events</doc>
</member>
<member name="all_events_mask" value="67108862" c:identifier="GDK_ALL_EVENTS_MASK" glib:nick="all-events-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="378">the combination of all the above event masks.</doc>
</member>
</bitfield>
<record name="EventMotion" c:type="GdkEventMotion" disguised="1">
</record>
<record name="EventPadAxis" c:type="GdkEventPadAxis" disguised="1">
</record>
<record name="EventPadButton" c:type="GdkEventPadButton" disguised="1">
</record>
<record name="EventPadGroupMode" c:type="GdkEventPadGroupMode" disguised="1">
</record>
<record name="EventProximity" c:type="GdkEventProximity" disguised="1">
</record>
<record name="EventScroll" c:type="GdkEventScroll" disguised="1">
</record>
<record name="EventSequence" c:type="GdkEventSequence" glib:type-name="GdkEventSequence" glib:get-type="gdk_event_sequence_get_type" c:symbol-prefix="event_sequence">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="60">GdkEventSequence is an opaque type representing a sequence
of related touch events.</doc>
</record>
<record name="EventSetting" c:type="GdkEventSetting" disguised="1">
</record>
<record name="EventTouch" c:type="GdkEventTouch" disguised="1">
</record>
<record name="EventTouchpadPinch" c:type="GdkEventTouchpadPinch" disguised="1">
</record>
<record name="EventTouchpadSwipe" c:type="GdkEventTouchpadSwipe" disguised="1">
</record>
<enumeration name="EventType" glib:type-name="GdkEventType" glib:get-type="gdk_event_type_get_type" c:type="GdkEventType">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="128">Specifies the type of the event.
Do not confuse these events with the signals that GTK+ widgets emit.
Although many of these events result in corresponding signals being emitted,
the events are often transformed or filtered along the way.</doc>
<member name="nothing" value="0" c:identifier="GDK_NOTHING" glib:nick="nothing">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="130">a special code to indicate a null event.</doc>
</member>
<member name="delete" value="1" c:identifier="GDK_DELETE" glib:nick="delete">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="131">the window manager has requested that the toplevel surface be
hidden or destroyed, usually when the user clicks on a special icon in the
title bar.</doc>
</member>
<member name="destroy" value="2" c:identifier="GDK_DESTROY" glib:nick="destroy">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="134">the surface has been destroyed.</doc>
</member>
<member name="motion_notify" value="3" c:identifier="GDK_MOTION_NOTIFY" glib:nick="motion-notify">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="135">the pointer (usually a mouse) has moved.</doc>
</member>
<member name="button_press" value="4" c:identifier="GDK_BUTTON_PRESS" glib:nick="button-press">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="136">a mouse button has been pressed.</doc>
</member>
<member name="button_release" value="5" c:identifier="GDK_BUTTON_RELEASE" glib:nick="button-release">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="137">a mouse button has been released.</doc>
</member>
<member name="key_press" value="6" c:identifier="GDK_KEY_PRESS" glib:nick="key-press">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="138">a key has been pressed.</doc>
</member>
<member name="key_release" value="7" c:identifier="GDK_KEY_RELEASE" glib:nick="key-release">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="139">a key has been released.</doc>
</member>
<member name="enter_notify" value="8" c:identifier="GDK_ENTER_NOTIFY" glib:nick="enter-notify">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="140">the pointer has entered the surface.</doc>
</member>
<member name="leave_notify" value="9" c:identifier="GDK_LEAVE_NOTIFY" glib:nick="leave-notify">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="141">the pointer has left the surface.</doc>
</member>
<member name="focus_change" value="10" c:identifier="GDK_FOCUS_CHANGE" glib:nick="focus-change">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="142">the keyboard focus has entered or left the surface.</doc>
</member>
<member name="configure" value="11" c:identifier="GDK_CONFIGURE" glib:nick="configure">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="143">the size, position or stacking order of the surface has changed.
Note that GTK+ discards these events for %GDK_SURFACE_CHILD surfaces.</doc>
</member>
<member name="proximity_in" value="12" c:identifier="GDK_PROXIMITY_IN" glib:nick="proximity-in">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="145">an input device has moved into contact with a sensing
surface (e.g. a touchscreen or graphics tablet).</doc>
</member>
<member name="proximity_out" value="13" c:identifier="GDK_PROXIMITY_OUT" glib:nick="proximity-out">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="147">an input device has moved out of contact with a sensing
surface.</doc>
</member>
<member name="drag_enter" value="14" c:identifier="GDK_DRAG_ENTER" glib:nick="drag-enter">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="149">the mouse has entered the surface while a drag is in progress.</doc>
</member>
<member name="drag_leave" value="15" c:identifier="GDK_DRAG_LEAVE" glib:nick="drag-leave">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="150">the mouse has left the surface while a drag is in progress.</doc>
</member>
<member name="drag_motion" value="16" c:identifier="GDK_DRAG_MOTION" glib:nick="drag-motion">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="151">the mouse has moved in the surface while a drag is in
progress.</doc>
</member>
<member name="drop_start" value="17" c:identifier="GDK_DROP_START" glib:nick="drop-start">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="153">a drop operation onto the surface has started.</doc>
</member>
<member name="scroll" value="18" c:identifier="GDK_SCROLL" glib:nick="scroll">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="154">the scroll wheel was turned</doc>
</member>
<member name="grab_broken" value="19" c:identifier="GDK_GRAB_BROKEN" glib:nick="grab-broken">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="155">a pointer or keyboard grab was broken. This event type
was added in 2.8.</doc>
</member>
<member name="touch_begin" value="20" c:identifier="GDK_TOUCH_BEGIN" glib:nick="touch-begin">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="157">A new touch event sequence has just started. This event
type was added in 3.4.</doc>
</member>
<member name="touch_update" value="21" c:identifier="GDK_TOUCH_UPDATE" glib:nick="touch-update">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="159">A touch event sequence has been updated. This event type
was added in 3.4.</doc>
</member>
<member name="touch_end" value="22" c:identifier="GDK_TOUCH_END" glib:nick="touch-end">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="161">A touch event sequence has finished. This event type
was added in 3.4.</doc>
</member>
<member name="touch_cancel" value="23" c:identifier="GDK_TOUCH_CANCEL" glib:nick="touch-cancel">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="163">A touch event sequence has been canceled. This event type
was added in 3.4.</doc>
</member>
<member name="touchpad_swipe" value="24" c:identifier="GDK_TOUCHPAD_SWIPE" glib:nick="touchpad-swipe">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="165">A touchpad swipe gesture event, the current state
is determined by its phase field. This event type was added in 3.18.</doc>
</member>
<member name="touchpad_pinch" value="25" c:identifier="GDK_TOUCHPAD_PINCH" glib:nick="touchpad-pinch">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="167">A touchpad pinch gesture event, the current state
is determined by its phase field. This event type was added in 3.18.</doc>
</member>
<member name="pad_button_press" value="26" c:identifier="GDK_PAD_BUTTON_PRESS" glib:nick="pad-button-press">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="169">A tablet pad button press event. This event type
was added in 3.22.</doc>
</member>
<member name="pad_button_release" value="27" c:identifier="GDK_PAD_BUTTON_RELEASE" glib:nick="pad-button-release">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="171">A tablet pad button release event. This event type
was added in 3.22.</doc>
</member>
<member name="pad_ring" value="28" c:identifier="GDK_PAD_RING" glib:nick="pad-ring">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="173">A tablet pad axis event from a "ring". This event type was
added in 3.22.</doc>
</member>
<member name="pad_strip" value="29" c:identifier="GDK_PAD_STRIP" glib:nick="pad-strip">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="175">A tablet pad axis event from a "strip". This event type was
added in 3.22.</doc>
</member>
<member name="pad_group_mode" value="30" c:identifier="GDK_PAD_GROUP_MODE" glib:nick="pad-group-mode">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="177">A tablet pad group mode change. This event type was
added in 3.22.</doc>
</member>
<member name="event_last" value="31" c:identifier="GDK_EVENT_LAST" glib:nick="event-last">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="179">marks the end of the GdkEventType enumeration. Added in 2.18</doc>
</member>
</enumeration>
<glib:boxed glib:name="FileList" c:symbol-prefix="file_list" glib:type-name="GdkFileList" glib:get-type="gdk_file_list_get_type">
</glib:boxed>
<class name="FrameClock" c:symbol-prefix="frame_clock" c:type="GdkFrameClock" parent="GObject.Object" abstract="1" glib:type-name="GdkFrameClock" glib:get-type="gdk_frame_clock_get_type" glib:type-struct="FrameClockClass">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="30">A #GdkFrameClock tells the application when to update and repaint a
window. This may be synced to the vertical refresh rate of the
monitor, for example. Even when the frame clock uses a simple timer
rather than a hardware-based vertical sync, the frame clock helps
because it ensures everything paints at the same time (reducing the
total number of frames). The frame clock can also automatically
stop painting when it knows the frames will not be visible, or
scale back animation framerates.
#GdkFrameClock is designed to be compatible with an OpenGL-based
implementation or with mozRequestAnimationFrame in Firefox,
for example.
A frame clock is idle until someone requests a frame with
gdk_frame_clock_request_phase(). At some later point that makes
sense for the synchronization being implemented, the clock will
process a frame and emit signals for each phase that has been
requested. (See the signals of the #GdkFrameClock class for
documentation of the phases. %GDK_FRAME_CLOCK_PHASE_UPDATE and the
#GdkFrameClock::update signal are most interesting for application
writers, and are used to update the animations, using the frame time
given by gdk_frame_clock_get_frame_time().
The frame time is reported in microseconds and generally in the same
timescale as g_get_monotonic_time(), however, it is not the same
as g_get_monotonic_time(). The frame time does not advance during
the time a frame is being painted, and outside of a frame, an attempt
is made so that all calls to gdk_frame_clock_get_frame_time() that
are called at a &#x201C;similar&#x201D; time get the same value. This means that
if different animations are timed by looking at the difference in
time between an initial value from gdk_frame_clock_get_frame_time()
and the value inside the #GdkFrameClock::update signal of the clock,
they will stay exactly synchronized.</doc>
<method name="begin_updating" c:identifier="gdk_frame_clock_begin_updating">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="304">Starts updates for an animation. Until a matching call to
gdk_frame_clock_end_updating() is made, the frame clock will continually
request a new frame with the %GDK_FRAME_CLOCK_PHASE_UPDATE phase.
This function may be called multiple times and frames will be
requested until gdk_frame_clock_end_updating() is called the same
number of times.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="306">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
</parameters>
</method>
<method name="end_updating" c:identifier="gdk_frame_clock_end_updating">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="323">Stops updates for an animation. See the documentation for
gdk_frame_clock_begin_updating().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="325">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_current_timings" c:identifier="gdk_frame_clock_get_current_timings">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="469">Gets the frame timings for the current frame.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="475">the #GdkFrameTimings for the
frame currently being processed, or even no frame is being
processed, for the previous frame. Before any frames have been
processed, returns %NULL.</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="471">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_counter" c:identifier="gdk_frame_clock_get_frame_counter">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="355">A #GdkFrameClock maintains a 64-bit counter that increments for
each frame drawn.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="362">inside frame processing, the value of the frame counter
for the current frame. Outside of frame processing, the frame
counter for the last frame.</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="357">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_time" c:identifier="gdk_frame_clock_get_frame_time">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="257">Gets the time that should currently be used for animations. Inside
the processing of a frame, it&#x2019;s the time used to compute the
animation position of everything in a frame. Outside of a frame, it's
the time of the conceptual &#x201C;previous frame,&#x201D; which may be either
the actual previous frame time, or if that&#x2019;s too old, an updated
time.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="268">a timestamp in microseconds, in the timescale of
of g_get_monotonic_time().</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="259">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_history_start" c:identifier="gdk_frame_clock_get_history_start">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="378">#GdkFrameClock internally keeps a history of #GdkFrameTimings
objects for recent frames that can be retrieved with
gdk_frame_clock_get_timings(). The set of stored frames
is the set from the counter values given by
gdk_frame_clock_get_history_start() and
gdk_frame_clock_get_frame_counter(), inclusive.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="389">the frame counter value for the oldest frame
that is available in the internal frame history of the
#GdkFrameClock.</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="380">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_refresh_info" c:identifier="gdk_frame_clock_get_refresh_info">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="536">Using the frame history stored in the frame clock, finds the last
known presentation time and refresh interval, and assuming that
presentation times are separated by the refresh interval,
predicts a presentation time that is a multiple of the refresh
interval after the last presentation time, and later than @base_time.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="538">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
<parameter name="base_time" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="539">base time for determining a presentaton time</doc>
<type name="gint64" c:type="gint64"/>
</parameter>
<parameter name="refresh_interval_return" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="540">a location to store the
determined refresh interval, or %NULL. A default refresh interval of
1/60th of a second will be stored if no history is present.</doc>
<type name="gint64" c:type="gint64*"/>
</parameter>
<parameter name="presentation_time_return" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="543">a location to store the next
candidate presentation time after the given base time.
0 will be will be stored if no history is present.</doc>
<type name="gint64" c:type="gint64*"/>
</parameter>
</parameters>
</method>
<method name="get_timings" c:identifier="gdk_frame_clock_get_timings">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="433">Retrieves a #GdkFrameTimings object holding timing information
for the current frame or a recent frame. The #GdkFrameTimings
object may not yet be complete: see gdk_frame_timings_get_complete().</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="443">the #GdkFrameTimings object for
the specified frame, or %NULL if it is not available. See
gdk_frame_clock_get_history_start().</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="435">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
<parameter name="frame_counter" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="436">the frame counter value identifying the frame to
be received.</doc>
<type name="gint64" c:type="gint64"/>
</parameter>
</parameters>
</method>
<method name="request_phase" c:identifier="gdk_frame_clock_request_phase">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="279">Asks the frame clock to run a particular phase. The signal
corresponding the requested phase will be emitted the next
time the frame clock processes. Multiple calls to
gdk_frame_clock_request_phase() will be combined together
and only one frame processed. If you are displaying animated
content and want to continually request the
%GDK_FRAME_CLOCK_PHASE_UPDATE phase for a period of time,
you should use gdk_frame_clock_begin_updating() instead, since
this allows GTK to adjust system parameters to get maximally
smooth animations.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="frame_clock" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="281">a #GdkFrameClock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</instance-parameter>
<parameter name="phase" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="282">the phase that is requested</doc>
<type name="FrameClockPhase" c:type="GdkFrameClockPhase"/>
</parameter>
</parameters>
</method>
<glib:signal name="after-paint" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="212">This signal ends processing of the frame. Applications
should generally not handle this signal.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="before-paint" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="139">This signal begins processing of the frame. Applications
should generally not handle this signal.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="flush-events" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="122">This signal is used to flush pending motion events that
are being batched up and compressed together. Applications
should not handle this signal.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="layout" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="175">This signal is emitted as the second step of toolkit and
application processing of the frame. Any work to update
sizes and positions of application elements should be
performed. GTK normally handles this internally.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="paint" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="193">This signal is emitted as the third step of toolkit and
application processing of the frame. The frame is
repainted. GDK normally handles this internally and
produces expose events, which are turned into GTK
#GtkWidget::draw signals.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="resume-events" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="228">This signal is emitted after processing of the frame is
finished, and is handled internally by GTK to resume normal
event processing. Applications should not handle this signal.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="update" when="last">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.c" line="155">This signal is emitted as the first step of toolkit and
application processing of the frame. Animations should
be updated using gdk_frame_clock_get_frame_time().
Applications can connect directly to this signal, or
use gtk_widget_add_tick_callback() as a more convenient
interface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<record name="FrameClockClass" c:type="GdkFrameClockClass" disguised="1" glib:is-gtype-struct-for="FrameClock">
</record>
<bitfield name="FrameClockPhase" glib:type-name="GdkFrameClockPhase" glib:get-type="gdk_frame_clock_phase_get_type" c:type="GdkFrameClockPhase">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="47">#GdkFrameClockPhase is used to represent the different paint clock
phases that can be requested. The elements of the enumeration
correspond to the signals of #GdkFrameClock.</doc>
<member name="none" value="0" c:identifier="GDK_FRAME_CLOCK_PHASE_NONE" glib:nick="none">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="49">no phase</doc>
</member>
<member name="flush_events" value="1" c:identifier="GDK_FRAME_CLOCK_PHASE_FLUSH_EVENTS" glib:nick="flush-events">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="50">corresponds to GdkFrameClock::flush-events. Should not be handled by applications.</doc>
</member>
<member name="before_paint" value="2" c:identifier="GDK_FRAME_CLOCK_PHASE_BEFORE_PAINT" glib:nick="before-paint">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="51">corresponds to GdkFrameClock::before-paint. Should not be handled by applications.</doc>
</member>
<member name="update" value="4" c:identifier="GDK_FRAME_CLOCK_PHASE_UPDATE" glib:nick="update">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="52">corresponds to GdkFrameClock::update.</doc>
</member>
<member name="layout" value="8" c:identifier="GDK_FRAME_CLOCK_PHASE_LAYOUT" glib:nick="layout">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="53">corresponds to GdkFrameClock::layout.</doc>
</member>
<member name="paint" value="16" c:identifier="GDK_FRAME_CLOCK_PHASE_PAINT" glib:nick="paint">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="54">corresponds to GdkFrameClock::paint.</doc>
</member>
<member name="resume_events" value="32" c:identifier="GDK_FRAME_CLOCK_PHASE_RESUME_EVENTS" glib:nick="resume-events">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="55">corresponds to GdkFrameClock::resume-events. Should not be handled by applications.</doc>
</member>
<member name="after_paint" value="64" c:identifier="GDK_FRAME_CLOCK_PHASE_AFTER_PAINT" glib:nick="after-paint">
<doc xml:space="preserve" filename="../gdk/gdkframeclock.h" line="56">corresponds to GdkFrameClock::after-paint. Should not be handled by applications.</doc>
</member>
</bitfield>
<record name="FrameClockPrivate" c:type="GdkFrameClockPrivate" disguised="1">
</record>
<record name="FrameTimings" c:type="GdkFrameTimings" glib:type-name="GdkFrameTimings" glib:get-type="gdk_frame_timings_get_type" c:symbol-prefix="frame_timings">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="24">A #GdkFrameTimings object holds timing information for a single frame
of the application&#x2019;s displays. To retrieve #GdkFrameTimings objects,
use gdk_frame_clock_get_timings() or gdk_frame_clock_get_current_timings().
The information in #GdkFrameTimings is useful for precise synchronization
of video with the event or audio streams, and for measuring
quality metrics for the application&#x2019;s display, such as latency and jitter.</doc>
<method name="get_complete" c:identifier="gdk_frame_timings_get_complete">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="128">The timing information in a #GdkFrameTimings is filled in
incrementally as the frame as drawn and passed off to the
window system for processing and display to the user. The
accessor functions for #GdkFrameTimings can return 0 to
indicate an unavailable value for two reasons: either because
the information is not yet available, or because it isn't
available at all. Once gdk_frame_timings_get_complete() returns
%TRUE for a frame, you can be certain that no further values
will become available and be stored in the #GdkFrameTimings.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="142">%TRUE if all information that will be available
for the frame has been filled in.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="130">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_counter" c:identifier="gdk_frame_timings_get_frame_counter">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="113">Gets the frame counter value of the #GdkFrameClock when this
this frame was drawn.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="120">the frame counter value for this frame</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="115">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_time" c:identifier="gdk_frame_timings_get_frame_time">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="153">Returns the frame time for the frame. This is the time value
that is typically used to time animations for the frame. See
gdk_frame_clock_get_frame_time().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="161">the frame time for the frame, in the timescale
of g_get_monotonic_time()</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="155">A #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_predicted_presentation_time" c:identifier="gdk_frame_timings_get_predicted_presentation_time">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="191">Gets the predicted time at which this frame will be displayed. Although
no predicted time may be available, if one is available, it will
be available while the frame is being generated, in contrast to
gdk_frame_timings_get_presentation_time(), which is only available
after the frame has been presented. In general, if you are simply
animating, you should use gdk_frame_clock_get_frame_time() rather
than this function, but this function is useful for applications
that want exact control over latency. For example, a movie player
may want this information for Audio/Video synchronization.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="205">The predicted time at which the frame will be presented,
in the timescale of g_get_monotonic_time(), or 0 if no predicted
presentation time is available.</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="193">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_presentation_time" c:identifier="gdk_frame_timings_get_presentation_time">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="172">Reurns the presentation time. This is the time at which the frame
became visible to the user.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="179">the time the frame was displayed to the user, in the
timescale of g_get_monotonic_time(), or 0 if no presentation
time is available. See gdk_frame_timings_get_complete()</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="174">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_refresh_interval" c:identifier="gdk_frame_timings_get_refresh_interval">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="217">Gets the natural interval between presentation times for
the display that this frame was displayed on. Frame presentation
usually happens during the &#x201C;vertical blanking interval&#x201D;.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="225">the refresh interval of the display, in microseconds,
or 0 if the refresh interval is not available.
See gdk_frame_timings_get_complete().</doc>
<type name="gint64" c:type="gint64"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="219">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="ref" c:identifier="gdk_frame_timings_ref">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="75">Increases the reference count of @timings.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="81">@timings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="77">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
<method name="unref" c:identifier="gdk_frame_timings_unref">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="93">Decreases the reference count of @timings. If @timings
is no longer referenced, it will be freed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="timings" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkframetimings.c" line="95">a #GdkFrameTimings</doc>
<type name="FrameTimings" c:type="GdkFrameTimings*"/>
</instance-parameter>
</parameters>
</method>
</record>
<enumeration name="FullscreenMode" glib:type-name="GdkFullscreenMode" glib:get-type="gdk_fullscreen_mode_get_type" c:type="GdkFullscreenMode">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="252">Indicates which monitor (in a multi-head setup) a surface should span over
when in fullscreen mode.</doc>
<member name="current_monitor" value="0" c:identifier="GDK_FULLSCREEN_ON_CURRENT_MONITOR" glib:nick="current-monitor">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="254">Fullscreen on current monitor only.</doc>
</member>
<member name="all_monitors" value="1" c:identifier="GDK_FULLSCREEN_ON_ALL_MONITORS" glib:nick="all-monitors">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="255">Span across all monitors when fullscreen.</doc>
</member>
</enumeration>
<class name="GLContext" c:symbol-prefix="gl_context" c:type="GdkGLContext" parent="DrawContext" abstract="1" glib:type-name="GdkGLContext" glib:get-type="gdk_gl_context_get_type">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="21">#GdkGLContext is an object representing the platform-specific
OpenGL draw context.
#GdkGLContexts are created for a #GdkSurface using
gdk_surface_create_gl_context(), and the context will match the
the characteristics of the surface.
A #GdkGLContext is not tied to any particular normal framebuffer.
For instance, it cannot draw to the #GdkSurface back buffer. The GDK
repaint system is in full control of the painting to that. Instead,
you can create render buffers or textures and use gdk_cairo_draw_from_gl()
in the draw function of your widget to draw them. Then GDK will handle
the integration of your rendering with that of other widgets.
Support for #GdkGLContext is platform-specific, context creation
can fail, returning %NULL context.
A #GdkGLContext has to be made "current" in order to start using
it, otherwise any OpenGL call will be ignored.
## Creating a new OpenGL context ##
In order to create a new #GdkGLContext instance you need a
#GdkSurface, which you typically get during the realize call
of a widget.
A #GdkGLContext is not realized until either gdk_gl_context_make_current(),
or until it is realized using gdk_gl_context_realize(). It is possible to
specify details of the GL context like the OpenGL version to be used, or
whether the GL context should have extra state validation enabled after
calling gdk_surface_create_gl_context() by calling gdk_gl_context_realize().
If the realization fails you have the option to change the settings of the
#GdkGLContext and try again.
## Using a GdkGLContext ##
You will need to make the #GdkGLContext the current context
before issuing OpenGL calls; the system sends OpenGL commands to
whichever context is current. It is possible to have multiple
contexts, so you always need to ensure that the one which you
want to draw with is the current one before issuing commands:
|[&lt;!-- language="C" --&gt;
gdk_gl_context_make_current (context);
]|
You can now perform your drawing using OpenGL commands.
You can check which #GdkGLContext is the current one by using
gdk_gl_context_get_current(); you can also unset any #GdkGLContext
that is currently set by calling gdk_gl_context_clear_current().</doc>
<function name="clear_current" c:identifier="gdk_gl_context_clear_current">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1156">Clears the current #GdkGLContext.
Any OpenGL call after this function returns will be ignored
until gdk_gl_context_make_current() is called.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</function>
<function name="get_current" c:identifier="gdk_gl_context_get_current">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1177">Retrieves the current #GdkGLContext.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1182">the current #GdkGLContext, or %NULL</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</return-value>
</function>
<method name="get_debug_enabled" c:identifier="gdk_gl_context_get_debug_enabled">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="556">Retrieves the value set using gdk_gl_context_set_debug_enabled().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="562">%TRUE if debugging is enabled</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="558">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_gl_context_get_display">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1080">Retrieves the #GdkDisplay the @context is created for</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1086">a #GdkDisplay or %NULL</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1082">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_forward_compatible" c:identifier="gdk_gl_context_get_forward_compatible">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="603">Retrieves the value set using gdk_gl_context_set_forward_compatible().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="609">%TRUE if the context should be forward compatible</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="605">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_required_version" c:identifier="gdk_gl_context_get_required_version">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="673">Retrieves the major and minor version requested by calling
gdk_gl_context_set_required_version().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="675">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
<parameter name="major" direction="out" caller-allocates="0" transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="676">return location for the major version to request</doc>
<type name="gint" c:type="int*"/>
</parameter>
<parameter name="minor" direction="out" caller-allocates="0" transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="677">return location for the minor version to request</doc>
<type name="gint" c:type="int*"/>
</parameter>
</parameters>
</method>
<method name="get_shared_context" c:identifier="gdk_gl_context_get_shared_context">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1112">Retrieves the #GdkGLContext that this @context share data with.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1118">a #GdkGLContext or %NULL</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1114">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_surface" c:identifier="gdk_gl_context_get_surface">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1096">Retrieves the #GdkSurface used by the @context.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1102">a #GdkSurface or %NULL</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1098">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_use_es" c:identifier="gdk_gl_context_get_use_es">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="798">Checks whether the @context is using an OpenGL or OpenGL ES profile.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="804">%TRUE if the #GdkGLContext is using an OpenGL ES profile</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="800">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_version" c:identifier="gdk_gl_context_get_version">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1130">Retrieves the OpenGL version of the @context.
The @context must be realized prior to calling this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1132">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
<parameter name="major" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1133">return location for the major version</doc>
<type name="gint" c:type="int*"/>
</parameter>
<parameter name="minor" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1134">return location for the minor version</doc>
<type name="gint" c:type="int*"/>
</parameter>
</parameters>
</method>
<method name="is_legacy" c:identifier="gdk_gl_context_is_legacy">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="723">Whether the #GdkGLContext is in legacy mode or not.
The #GdkGLContext must be realized before calling this function.
When realizing a GL context, GDK will try to use the OpenGL 3.2 core
profile; this profile removes all the OpenGL API that was deprecated
prior to the 3.2 version of the specification. If the realization is
successful, this function will return %FALSE.
If the underlying OpenGL implementation does not support core profiles,
GDK will fall back to a pre-3.2 compatibility profile, and this function
will return %TRUE.
You can use the value returned by this function to decide which kind
of OpenGL API to use, or whether to do extension discovery, or what
kind of shader programs to load.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="744">%TRUE if the GL context is in legacy mode</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="725">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="make_current" c:identifier="gdk_gl_context_make_current">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1041">Makes the @context the current one.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="1043">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="realize" c:identifier="gdk_gl_context_realize" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="912">Realizes the given #GdkGLContext.
It is safe to call this function on a realized #GdkGLContext.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="921">%TRUE if the context is realized</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="914">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_debug_enabled" c:identifier="gdk_gl_context_set_debug_enabled">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="530">Sets whether the #GdkGLContext should perform extra validations and
run time checking. This is useful during development, but has
additional overhead.
The #GdkGLContext must not be realized or made current prior to
calling this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="532">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
<parameter name="enabled" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="533">whether to enable debugging in the context</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_forward_compatible" c:identifier="gdk_gl_context_set_forward_compatible">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="574">Sets whether the #GdkGLContext should be forward compatible.
Forward compatibile contexts must not support OpenGL functionality that
has been marked as deprecated in the requested version; non-forward
compatible contexts, on the other hand, must support both deprecated and
non deprecated functionality.
The #GdkGLContext must not be realized or made current prior to calling
this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="576">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
<parameter name="compatible" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="577">whether the context should be forward compatible</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_required_version" c:identifier="gdk_gl_context_set_required_version">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="621">Sets the major and minor version of OpenGL to request.
Setting @major and @minor to zero will use the default values.
The #GdkGLContext must not be realized or made current prior to calling
this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="623">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
<parameter name="major" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="624">the major version to request</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="minor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="625">the minor version to request</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</method>
<method name="set_use_es" c:identifier="gdk_gl_context_set_use_es">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="766">Requests that GDK create a OpenGL ES context instead of an OpenGL one,
if the platform and windowing system allows it.
The @context must not have been realized.
By default, GDK will attempt to automatically detect whether the
underlying GL implementation is OpenGL or OpenGL ES once the @context
is realized.
You should check the return value of gdk_gl_context_get_use_es() after
calling gdk_gl_context_realize() to decide whether to use the OpenGL or
OpenGL ES API, extensions, or shaders.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="768">a #GdkGLContext:</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</instance-parameter>
<parameter name="use_es" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="769">whether the context should use OpenGL ES instead of OpenGL,
or -1 to allow auto-detection</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</method>
<property name="shared-context" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkglcontext.c" line="372">The #GdkGLContext that this context is sharing data with, or %NULL</doc>
<type name="GLContext"/>
</property>
</class>
<enumeration name="GLError" glib:type-name="GdkGLError" glib:get-type="gdk_gl_error_get_type" c:type="GdkGLError" glib:error-domain="gdk-gl-error-quark">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="422">Error enumeration for #GdkGLContext.</doc>
<member name="not_available" value="0" c:identifier="GDK_GL_ERROR_NOT_AVAILABLE" glib:nick="not-available">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="424">OpenGL support is not available</doc>
</member>
<member name="unsupported_format" value="1" c:identifier="GDK_GL_ERROR_UNSUPPORTED_FORMAT" glib:nick="unsupported-format">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="425">The requested visual format is not supported</doc>
</member>
<member name="unsupported_profile" value="2" c:identifier="GDK_GL_ERROR_UNSUPPORTED_PROFILE" glib:nick="unsupported-profile">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="426">The requested profile is not supported</doc>
</member>
<member name="compilation_failed" value="3" c:identifier="GDK_GL_ERROR_COMPILATION_FAILED" glib:nick="compilation-failed">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="427">The shader compilation failed</doc>
</member>
<member name="link_failed" value="4" c:identifier="GDK_GL_ERROR_LINK_FAILED" glib:nick="link-failed">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="428">The shader linking failed</doc>
</member>
<function name="quark" c:identifier="gdk_gl_error_quark">
<return-value transfer-ownership="none">
<type name="GLib.Quark" c:type="GQuark"/>
</return-value>
</function>
</enumeration>
<class name="GLTexture" c:symbol-prefix="gl_texture" c:type="GdkGLTexture" parent="Texture" glib:type-name="GdkGLTexture" glib:get-type="gdk_gl_texture_get_type" glib:type-struct="GLTextureClass">
<implements name="Paintable"/>
<constructor name="new" c:identifier="gdk_gl_texture_new">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="178">Creates a new texture for an existing GL texture.
Note that the GL texture must not be modified until @destroy is called,
which will happen when the GdkTexture object is finalized, or due to
an explicit call of gdk_gl_texture_release().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="194">A newly-created #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<parameter name="context" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="180">a #GdkGLContext</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</parameter>
<parameter name="id" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="181">the ID of a texture that was created with @context</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="182">the nominal width of the texture</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="183">the nominal height of the texture</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="destroy" transfer-ownership="none" scope="async">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="184">a destroy notify that will be called when the GL resources
are released</doc>
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
</parameter>
<parameter name="data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="186">data that gets passed to @destroy</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</constructor>
<method name="release" c:identifier="gdk_gl_texture_release">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="134">Releases the GL resources held by a #GdkGLTexture that
was created with gdk_gl_texture_new().
The texture contents are still available via the
gdk_texture_download() function, after this function
has been called.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgltexture.c" line="136">a #GdkTexture wrapping a GL texture</doc>
<type name="GLTexture" c:type="GdkGLTexture*"/>
</instance-parameter>
</parameters>
</method>
</class>
<record name="GLTextureClass" c:type="GdkGLTextureClass" disguised="1" glib:is-gtype-struct-for="GLTexture">
</record>
<record name="Geometry" c:type="GdkGeometry">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="266">The #GdkGeometry struct gives the window manager information about
a surface&#x2019;s geometry constraints. Normally you would set these on
the GTK+ level using gtk_window_set_geometry_hints(). #GtkWindow
then sets the hints on the #GdkSurface it creates.
gdk_surface_set_geometry_hints() expects the hints to be fully valid already
and simply passes them to the window manager; in contrast,
gtk_window_set_geometry_hints() performs some interpretation. For example,
#GtkWindow will apply the hints to the geometry widget instead of the
toplevel window, if you set a geometry widget. Also, the
@min_width/@min_height/@max_width/@max_height fields may be set to -1, and
#GtkWindow will substitute the size request of the surface or geometry widget.
If the minimum size hint is not provided, #GtkWindow will use its requisition
as the minimum size. If the minimum size is provided and a geometry widget is
set, #GtkWindow will take the minimum size as the minimum size of the
geometry widget rather than the entire surface. The base size is treated
similarly.
The canonical use-case for gtk_window_set_geometry_hints() is to get a
terminal widget to resize properly. Here, the terminal text area should be
the geometry widget; #GtkWindow will then automatically set the base size to
the size of other widgets in the terminal window, such as the menubar and
scrollbar. Then, the @width_inc and @height_inc fields should be set to the
size of one character in the terminal. Finally, the base size should be set
to the size of one character. The net effect is that the minimum size of the
terminal will have a 1x1 character terminal area, and only terminal sizes on
the &#x201C;character grid&#x201D; will be allowed.
Here&#x2019;s an example of how the terminal example would be implemented, assuming
a terminal area widget called &#x201C;terminal&#x201D; and a toplevel window &#x201C;toplevel&#x201D;:
|[&lt;!-- language="C" --&gt;
GdkGeometry hints;
hints.base_width = terminal-&gt;char_width;
hints.base_height = terminal-&gt;char_height;
hints.min_width = terminal-&gt;char_width;
hints.min_height = terminal-&gt;char_height;
hints.width_inc = terminal-&gt;char_width;
hints.height_inc = terminal-&gt;char_height;
gtk_window_set_geometry_hints (GTK_WINDOW (toplevel),
GTK_WIDGET (terminal),
&amp;hints,
GDK_HINT_RESIZE_INC |
GDK_HINT_MIN_SIZE |
GDK_HINT_BASE_SIZE);
]|
The other useful fields are the @min_aspect and @max_aspect fields; these
contain a width/height ratio as a floating point number. If a geometry widget
is set, the aspect applies to the geometry widget rather than the entire
window. The most common use of these hints is probably to set @min_aspect and
@max_aspect to the same value, thus forcing the window to keep a constant
aspect ratio.</doc>
<field name="min_width" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="268">minimum width of surface (or -1 to use requisition, with
#GtkWindow only)</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="min_height" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="270">minimum height of surface (or -1 to use requisition, with
#GtkWindow only)</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="max_width" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="272">maximum width of surface (or -1 to use requisition, with
#GtkWindow only)</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="max_height" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="274">maximum height of surface (or -1 to use requisition, with
#GtkWindow only)</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="base_width" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="276">allowed surface widths are @base_width + @width_inc * N where N
is any integer (-1 allowed with #GtkWindow)</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="base_height" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="278">allowed surface widths are @base_height + @height_inc * N where
N is any integer (-1 allowed with #GtkWindow)</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="width_inc" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="280">width resize increment</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="height_inc" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="281">height resize increment</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="min_aspect" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="282">minimum width/height ratio</doc>
<type name="gdouble" c:type="gdouble"/>
</field>
<field name="max_aspect" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="283">maximum width/height ratio</doc>
<type name="gdouble" c:type="gdouble"/>
</field>
<field name="win_gravity" writable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="284">surface gravity, see gtk_window_set_gravity()</doc>
<type name="Gravity" c:type="GdkGravity"/>
</field>
</record>
<enumeration name="GrabOwnership" glib:type-name="GdkGrabOwnership" glib:get-type="gdk_grab_ownership_get_type" c:type="GdkGrabOwnership">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="338">Defines how device grabs interact with other devices.</doc>
<member name="none" value="0" c:identifier="GDK_OWNERSHIP_NONE" glib:nick="none">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="340">All other devices&#x2019; events are allowed.</doc>
</member>
<member name="surface" value="1" c:identifier="GDK_OWNERSHIP_SURFACE" glib:nick="surface">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="341">Other devices&#x2019; events are blocked for the grab surface.</doc>
</member>
<member name="application" value="2" c:identifier="GDK_OWNERSHIP_APPLICATION" glib:nick="application">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="342">Other devices&#x2019; events are blocked for the whole application.</doc>
</member>
</enumeration>
<enumeration name="GrabStatus" glib:type-name="GdkGrabStatus" glib:get-type="gdk_grab_status_get_type" c:type="GdkGrabStatus">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="314">Returned by gdk_device_grab() to indicate success or the reason for the
failure of the grab attempt.</doc>
<member name="success" value="0" c:identifier="GDK_GRAB_SUCCESS" glib:nick="success">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="316">the resource was successfully grabbed.</doc>
</member>
<member name="already_grabbed" value="1" c:identifier="GDK_GRAB_ALREADY_GRABBED" glib:nick="already-grabbed">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="317">the resource is actively grabbed by another client.</doc>
</member>
<member name="invalid_time" value="2" c:identifier="GDK_GRAB_INVALID_TIME" glib:nick="invalid-time">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="318">the resource was grabbed more recently than the
specified time.</doc>
</member>
<member name="not_viewable" value="3" c:identifier="GDK_GRAB_NOT_VIEWABLE" glib:nick="not-viewable">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="320">the grab surface or the @confine_to surface are not
viewable.</doc>
</member>
<member name="frozen" value="4" c:identifier="GDK_GRAB_FROZEN" glib:nick="frozen">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="322">the resource is frozen by an active grab of another client.</doc>
</member>
<member name="failed" value="5" c:identifier="GDK_GRAB_FAILED" glib:nick="failed">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="323">the grab failed for some other reason</doc>
</member>
</enumeration>
<enumeration name="Gravity" glib:type-name="GdkGravity" glib:get-type="gdk_gravity_get_type" c:type="GdkGravity">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="152">Defines the reference point of a surface and the meaning of coordinates
passed to gtk_window_move(). See gtk_window_move() and the "implementation
notes" section of the
[Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec)
specification for more details.</doc>
<member name="north_west" value="1" c:identifier="GDK_GRAVITY_NORTH_WEST" glib:nick="north-west">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="154">the reference point is at the top left corner.</doc>
</member>
<member name="north" value="2" c:identifier="GDK_GRAVITY_NORTH" glib:nick="north">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="155">the reference point is in the middle of the top edge.</doc>
</member>
<member name="north_east" value="3" c:identifier="GDK_GRAVITY_NORTH_EAST" glib:nick="north-east">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="156">the reference point is at the top right corner.</doc>
</member>
<member name="west" value="4" c:identifier="GDK_GRAVITY_WEST" glib:nick="west">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="157">the reference point is at the middle of the left edge.</doc>
</member>
<member name="center" value="5" c:identifier="GDK_GRAVITY_CENTER" glib:nick="center">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="158">the reference point is at the center of the surface.</doc>
</member>
<member name="east" value="6" c:identifier="GDK_GRAVITY_EAST" glib:nick="east">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="159">the reference point is at the middle of the right edge.</doc>
</member>
<member name="south_west" value="7" c:identifier="GDK_GRAVITY_SOUTH_WEST" glib:nick="south-west">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="160">the reference point is at the lower left corner.</doc>
</member>
<member name="south" value="8" c:identifier="GDK_GRAVITY_SOUTH" glib:nick="south">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="161">the reference point is at the middle of the lower edge.</doc>
</member>
<member name="south_east" value="9" c:identifier="GDK_GRAVITY_SOUTH_EAST" glib:nick="south-east">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="162">the reference point is at the lower right corner.</doc>
</member>
<member name="static" value="10" c:identifier="GDK_GRAVITY_STATIC" glib:nick="static">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="163">the reference point is at the top left corner of the
surface itself, ignoring window manager decorations.</doc>
</member>
</enumeration>
<enumeration name="InputMode" glib:type-name="GdkInputMode" glib:get-type="gdk_input_mode_get_type" c:type="GdkInputMode">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="71">An enumeration that describes the mode of an input device.</doc>
<member name="disabled" value="0" c:identifier="GDK_MODE_DISABLED" glib:nick="disabled">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="73">the device is disabled and will not report any events.</doc>
</member>
<member name="screen" value="1" c:identifier="GDK_MODE_SCREEN" glib:nick="screen">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="74">the device is enabled. The device&#x2019;s coordinate space
maps to the entire screen.</doc>
</member>
<member name="surface" value="2" c:identifier="GDK_MODE_SURFACE" glib:nick="surface">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="76">the device is enabled. The device&#x2019;s coordinate space
is mapped to a single surface. The manner in which this surface
is chosen is undefined, but it will typically be the same
way in which the focus surface for key events is determined.</doc>
</member>
</enumeration>
<enumeration name="InputSource" glib:type-name="GdkInputSource" glib:get-type="gdk_input_source_get_type" c:type="GdkInputSource">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="37">An enumeration describing the type of an input device in general terms.</doc>
<member name="mouse" value="0" c:identifier="GDK_SOURCE_MOUSE" glib:nick="mouse">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="39">the device is a mouse. (This will be reported for the core
pointer, even if it is something else, such as a trackball.)</doc>
</member>
<member name="pen" value="1" c:identifier="GDK_SOURCE_PEN" glib:nick="pen">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="41">the device is a stylus of a graphics tablet or similar device.</doc>
</member>
<member name="eraser" value="2" c:identifier="GDK_SOURCE_ERASER" glib:nick="eraser">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="42">the device is an eraser. Typically, this would be the other end
of a stylus on a graphics tablet.</doc>
</member>
<member name="cursor" value="3" c:identifier="GDK_SOURCE_CURSOR" glib:nick="cursor">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="44">the device is a graphics tablet &#x201C;puck&#x201D; or similar device.</doc>
</member>
<member name="keyboard" value="4" c:identifier="GDK_SOURCE_KEYBOARD" glib:nick="keyboard">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="45">the device is a keyboard.</doc>
</member>
<member name="touchscreen" value="5" c:identifier="GDK_SOURCE_TOUCHSCREEN" glib:nick="touchscreen">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="46">the device is a direct-input touch device, such
as a touchscreen or tablet. This device type has been added in 3.4.</doc>
</member>
<member name="touchpad" value="6" c:identifier="GDK_SOURCE_TOUCHPAD" glib:nick="touchpad">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="48">the device is an indirect touch device, such
as a touchpad. This device type has been added in 3.4.</doc>
</member>
<member name="trackpoint" value="7" c:identifier="GDK_SOURCE_TRACKPOINT" glib:nick="trackpoint">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="50">the device is a trackpoint. This device type has been
added in 3.22</doc>
</member>
<member name="tablet_pad" value="8" c:identifier="GDK_SOURCE_TABLET_PAD" glib:nick="tablet-pad">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="52">the device is a "pad", a collection of buttons,
rings and strips found in drawing tablets. This device type has been
added in 3.22.</doc>
</member>
</enumeration>
<constant name="KEY_0" value="48" c:type="GDK_KEY_0">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_1" value="49" c:type="GDK_KEY_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_2" value="50" c:type="GDK_KEY_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3" value="51" c:type="GDK_KEY_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_AltCursor" value="64784" c:type="GDK_KEY_3270_AltCursor">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Attn" value="64782" c:type="GDK_KEY_3270_Attn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_BackTab" value="64773" c:type="GDK_KEY_3270_BackTab">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_ChangeScreen" value="64793" c:type="GDK_KEY_3270_ChangeScreen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Copy" value="64789" c:type="GDK_KEY_3270_Copy">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_CursorBlink" value="64783" c:type="GDK_KEY_3270_CursorBlink">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_CursorSelect" value="64796" c:type="GDK_KEY_3270_CursorSelect">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_DeleteWord" value="64794" c:type="GDK_KEY_3270_DeleteWord">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Duplicate" value="64769" c:type="GDK_KEY_3270_Duplicate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Enter" value="64798" c:type="GDK_KEY_3270_Enter">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_EraseEOF" value="64774" c:type="GDK_KEY_3270_EraseEOF">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_EraseInput" value="64775" c:type="GDK_KEY_3270_EraseInput">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_ExSelect" value="64795" c:type="GDK_KEY_3270_ExSelect">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_FieldMark" value="64770" c:type="GDK_KEY_3270_FieldMark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Ident" value="64787" c:type="GDK_KEY_3270_Ident">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Jump" value="64786" c:type="GDK_KEY_3270_Jump">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_KeyClick" value="64785" c:type="GDK_KEY_3270_KeyClick">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Left2" value="64772" c:type="GDK_KEY_3270_Left2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_PA1" value="64778" c:type="GDK_KEY_3270_PA1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_PA2" value="64779" c:type="GDK_KEY_3270_PA2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_PA3" value="64780" c:type="GDK_KEY_3270_PA3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Play" value="64790" c:type="GDK_KEY_3270_Play">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_PrintScreen" value="64797" c:type="GDK_KEY_3270_PrintScreen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Quit" value="64777" c:type="GDK_KEY_3270_Quit">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Record" value="64792" c:type="GDK_KEY_3270_Record">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Reset" value="64776" c:type="GDK_KEY_3270_Reset">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Right2" value="64771" c:type="GDK_KEY_3270_Right2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Rule" value="64788" c:type="GDK_KEY_3270_Rule">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Setup" value="64791" c:type="GDK_KEY_3270_Setup">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_3270_Test" value="64781" c:type="GDK_KEY_3270_Test">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_4" value="52" c:type="GDK_KEY_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_5" value="53" c:type="GDK_KEY_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_6" value="54" c:type="GDK_KEY_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_7" value="55" c:type="GDK_KEY_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_8" value="56" c:type="GDK_KEY_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_9" value="57" c:type="GDK_KEY_9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_A" value="65" c:type="GDK_KEY_A">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AE" value="198" c:type="GDK_KEY_AE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Aacute" value="193" c:type="GDK_KEY_Aacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abelowdot" value="16785056" c:type="GDK_KEY_Abelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abreve" value="451" c:type="GDK_KEY_Abreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abreveacute" value="16785070" c:type="GDK_KEY_Abreveacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abrevebelowdot" value="16785078" c:type="GDK_KEY_Abrevebelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abrevegrave" value="16785072" c:type="GDK_KEY_Abrevegrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abrevehook" value="16785074" c:type="GDK_KEY_Abrevehook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Abrevetilde" value="16785076" c:type="GDK_KEY_Abrevetilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AccessX_Enable" value="65136" c:type="GDK_KEY_AccessX_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AccessX_Feedback_Enable" value="65137" c:type="GDK_KEY_AccessX_Feedback_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Acircumflex" value="194" c:type="GDK_KEY_Acircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Acircumflexacute" value="16785060" c:type="GDK_KEY_Acircumflexacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Acircumflexbelowdot" value="16785068" c:type="GDK_KEY_Acircumflexbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Acircumflexgrave" value="16785062" c:type="GDK_KEY_Acircumflexgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Acircumflexhook" value="16785064" c:type="GDK_KEY_Acircumflexhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Acircumflextilde" value="16785066" c:type="GDK_KEY_Acircumflextilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AddFavorite" value="269025081" c:type="GDK_KEY_AddFavorite">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Adiaeresis" value="196" c:type="GDK_KEY_Adiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Agrave" value="192" c:type="GDK_KEY_Agrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ahook" value="16785058" c:type="GDK_KEY_Ahook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Alt_L" value="65513" c:type="GDK_KEY_Alt_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Alt_R" value="65514" c:type="GDK_KEY_Alt_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Amacron" value="960" c:type="GDK_KEY_Amacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Aogonek" value="417" c:type="GDK_KEY_Aogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ApplicationLeft" value="269025104" c:type="GDK_KEY_ApplicationLeft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ApplicationRight" value="269025105" c:type="GDK_KEY_ApplicationRight">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_0" value="16778848" c:type="GDK_KEY_Arabic_0">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_1" value="16778849" c:type="GDK_KEY_Arabic_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_2" value="16778850" c:type="GDK_KEY_Arabic_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_3" value="16778851" c:type="GDK_KEY_Arabic_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_4" value="16778852" c:type="GDK_KEY_Arabic_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_5" value="16778853" c:type="GDK_KEY_Arabic_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_6" value="16778854" c:type="GDK_KEY_Arabic_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_7" value="16778855" c:type="GDK_KEY_Arabic_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_8" value="16778856" c:type="GDK_KEY_Arabic_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_9" value="16778857" c:type="GDK_KEY_Arabic_9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_ain" value="1497" c:type="GDK_KEY_Arabic_ain">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_alef" value="1479" c:type="GDK_KEY_Arabic_alef">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_alefmaksura" value="1513" c:type="GDK_KEY_Arabic_alefmaksura">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_beh" value="1480" c:type="GDK_KEY_Arabic_beh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_comma" value="1452" c:type="GDK_KEY_Arabic_comma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_dad" value="1494" c:type="GDK_KEY_Arabic_dad">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_dal" value="1487" c:type="GDK_KEY_Arabic_dal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_damma" value="1519" c:type="GDK_KEY_Arabic_damma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_dammatan" value="1516" c:type="GDK_KEY_Arabic_dammatan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_ddal" value="16778888" c:type="GDK_KEY_Arabic_ddal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_farsi_yeh" value="16778956" c:type="GDK_KEY_Arabic_farsi_yeh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_fatha" value="1518" c:type="GDK_KEY_Arabic_fatha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_fathatan" value="1515" c:type="GDK_KEY_Arabic_fathatan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_feh" value="1505" c:type="GDK_KEY_Arabic_feh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_fullstop" value="16778964" c:type="GDK_KEY_Arabic_fullstop">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_gaf" value="16778927" c:type="GDK_KEY_Arabic_gaf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_ghain" value="1498" c:type="GDK_KEY_Arabic_ghain">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_ha" value="1511" c:type="GDK_KEY_Arabic_ha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hah" value="1485" c:type="GDK_KEY_Arabic_hah">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamza" value="1473" c:type="GDK_KEY_Arabic_hamza">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamza_above" value="16778836" c:type="GDK_KEY_Arabic_hamza_above">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamza_below" value="16778837" c:type="GDK_KEY_Arabic_hamza_below">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamzaonalef" value="1475" c:type="GDK_KEY_Arabic_hamzaonalef">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamzaonwaw" value="1476" c:type="GDK_KEY_Arabic_hamzaonwaw">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamzaonyeh" value="1478" c:type="GDK_KEY_Arabic_hamzaonyeh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_hamzaunderalef" value="1477" c:type="GDK_KEY_Arabic_hamzaunderalef">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_heh" value="1511" c:type="GDK_KEY_Arabic_heh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_heh_doachashmee" value="16778942" c:type="GDK_KEY_Arabic_heh_doachashmee">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_heh_goal" value="16778945" c:type="GDK_KEY_Arabic_heh_goal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_jeem" value="1484" c:type="GDK_KEY_Arabic_jeem">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_jeh" value="16778904" c:type="GDK_KEY_Arabic_jeh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_kaf" value="1507" c:type="GDK_KEY_Arabic_kaf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_kasra" value="1520" c:type="GDK_KEY_Arabic_kasra">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_kasratan" value="1517" c:type="GDK_KEY_Arabic_kasratan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_keheh" value="16778921" c:type="GDK_KEY_Arabic_keheh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_khah" value="1486" c:type="GDK_KEY_Arabic_khah">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_lam" value="1508" c:type="GDK_KEY_Arabic_lam">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_madda_above" value="16778835" c:type="GDK_KEY_Arabic_madda_above">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_maddaonalef" value="1474" c:type="GDK_KEY_Arabic_maddaonalef">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_meem" value="1509" c:type="GDK_KEY_Arabic_meem">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_noon" value="1510" c:type="GDK_KEY_Arabic_noon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_noon_ghunna" value="16778938" c:type="GDK_KEY_Arabic_noon_ghunna">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_peh" value="16778878" c:type="GDK_KEY_Arabic_peh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_percent" value="16778858" c:type="GDK_KEY_Arabic_percent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_qaf" value="1506" c:type="GDK_KEY_Arabic_qaf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_question_mark" value="1471" c:type="GDK_KEY_Arabic_question_mark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_ra" value="1489" c:type="GDK_KEY_Arabic_ra">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_rreh" value="16778897" c:type="GDK_KEY_Arabic_rreh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_sad" value="1493" c:type="GDK_KEY_Arabic_sad">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_seen" value="1491" c:type="GDK_KEY_Arabic_seen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_semicolon" value="1467" c:type="GDK_KEY_Arabic_semicolon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_shadda" value="1521" c:type="GDK_KEY_Arabic_shadda">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_sheen" value="1492" c:type="GDK_KEY_Arabic_sheen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_sukun" value="1522" c:type="GDK_KEY_Arabic_sukun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_superscript_alef" value="16778864" c:type="GDK_KEY_Arabic_superscript_alef">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_switch" value="65406" c:type="GDK_KEY_Arabic_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_tah" value="1495" c:type="GDK_KEY_Arabic_tah">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_tatweel" value="1504" c:type="GDK_KEY_Arabic_tatweel">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_tcheh" value="16778886" c:type="GDK_KEY_Arabic_tcheh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_teh" value="1482" c:type="GDK_KEY_Arabic_teh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_tehmarbuta" value="1481" c:type="GDK_KEY_Arabic_tehmarbuta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_thal" value="1488" c:type="GDK_KEY_Arabic_thal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_theh" value="1483" c:type="GDK_KEY_Arabic_theh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_tteh" value="16778873" c:type="GDK_KEY_Arabic_tteh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_veh" value="16778916" c:type="GDK_KEY_Arabic_veh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_waw" value="1512" c:type="GDK_KEY_Arabic_waw">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_yeh" value="1514" c:type="GDK_KEY_Arabic_yeh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_yeh_baree" value="16778962" c:type="GDK_KEY_Arabic_yeh_baree">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_zah" value="1496" c:type="GDK_KEY_Arabic_zah">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Arabic_zain" value="1490" c:type="GDK_KEY_Arabic_zain">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Aring" value="197" c:type="GDK_KEY_Aring">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_AT" value="16778552" c:type="GDK_KEY_Armenian_AT">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_AYB" value="16778545" c:type="GDK_KEY_Armenian_AYB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_BEN" value="16778546" c:type="GDK_KEY_Armenian_BEN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_CHA" value="16778569" c:type="GDK_KEY_Armenian_CHA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_DA" value="16778548" c:type="GDK_KEY_Armenian_DA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_DZA" value="16778561" c:type="GDK_KEY_Armenian_DZA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_E" value="16778551" c:type="GDK_KEY_Armenian_E">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_FE" value="16778582" c:type="GDK_KEY_Armenian_FE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_GHAT" value="16778562" c:type="GDK_KEY_Armenian_GHAT">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_GIM" value="16778547" c:type="GDK_KEY_Armenian_GIM">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_HI" value="16778565" c:type="GDK_KEY_Armenian_HI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_HO" value="16778560" c:type="GDK_KEY_Armenian_HO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_INI" value="16778555" c:type="GDK_KEY_Armenian_INI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_JE" value="16778571" c:type="GDK_KEY_Armenian_JE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_KE" value="16778580" c:type="GDK_KEY_Armenian_KE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_KEN" value="16778559" c:type="GDK_KEY_Armenian_KEN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_KHE" value="16778557" c:type="GDK_KEY_Armenian_KHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_LYUN" value="16778556" c:type="GDK_KEY_Armenian_LYUN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_MEN" value="16778564" c:type="GDK_KEY_Armenian_MEN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_NU" value="16778566" c:type="GDK_KEY_Armenian_NU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_O" value="16778581" c:type="GDK_KEY_Armenian_O">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_PE" value="16778570" c:type="GDK_KEY_Armenian_PE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_PYUR" value="16778579" c:type="GDK_KEY_Armenian_PYUR">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_RA" value="16778572" c:type="GDK_KEY_Armenian_RA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_RE" value="16778576" c:type="GDK_KEY_Armenian_RE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_SE" value="16778573" c:type="GDK_KEY_Armenian_SE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_SHA" value="16778567" c:type="GDK_KEY_Armenian_SHA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_TCHE" value="16778563" c:type="GDK_KEY_Armenian_TCHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_TO" value="16778553" c:type="GDK_KEY_Armenian_TO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_TSA" value="16778558" c:type="GDK_KEY_Armenian_TSA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_TSO" value="16778577" c:type="GDK_KEY_Armenian_TSO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_TYUN" value="16778575" c:type="GDK_KEY_Armenian_TYUN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_VEV" value="16778574" c:type="GDK_KEY_Armenian_VEV">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_VO" value="16778568" c:type="GDK_KEY_Armenian_VO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_VYUN" value="16778578" c:type="GDK_KEY_Armenian_VYUN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_YECH" value="16778549" c:type="GDK_KEY_Armenian_YECH">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ZA" value="16778550" c:type="GDK_KEY_Armenian_ZA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ZHE" value="16778554" c:type="GDK_KEY_Armenian_ZHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_accent" value="16778587" c:type="GDK_KEY_Armenian_accent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_amanak" value="16778588" c:type="GDK_KEY_Armenian_amanak">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_apostrophe" value="16778586" c:type="GDK_KEY_Armenian_apostrophe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_at" value="16778600" c:type="GDK_KEY_Armenian_at">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ayb" value="16778593" c:type="GDK_KEY_Armenian_ayb">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ben" value="16778594" c:type="GDK_KEY_Armenian_ben">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_but" value="16778589" c:type="GDK_KEY_Armenian_but">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_cha" value="16778617" c:type="GDK_KEY_Armenian_cha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_da" value="16778596" c:type="GDK_KEY_Armenian_da">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_dza" value="16778609" c:type="GDK_KEY_Armenian_dza">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_e" value="16778599" c:type="GDK_KEY_Armenian_e">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_exclam" value="16778588" c:type="GDK_KEY_Armenian_exclam">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_fe" value="16778630" c:type="GDK_KEY_Armenian_fe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_full_stop" value="16778633" c:type="GDK_KEY_Armenian_full_stop">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ghat" value="16778610" c:type="GDK_KEY_Armenian_ghat">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_gim" value="16778595" c:type="GDK_KEY_Armenian_gim">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_hi" value="16778613" c:type="GDK_KEY_Armenian_hi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ho" value="16778608" c:type="GDK_KEY_Armenian_ho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_hyphen" value="16778634" c:type="GDK_KEY_Armenian_hyphen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ini" value="16778603" c:type="GDK_KEY_Armenian_ini">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_je" value="16778619" c:type="GDK_KEY_Armenian_je">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ke" value="16778628" c:type="GDK_KEY_Armenian_ke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ken" value="16778607" c:type="GDK_KEY_Armenian_ken">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_khe" value="16778605" c:type="GDK_KEY_Armenian_khe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ligature_ew" value="16778631" c:type="GDK_KEY_Armenian_ligature_ew">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_lyun" value="16778604" c:type="GDK_KEY_Armenian_lyun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_men" value="16778612" c:type="GDK_KEY_Armenian_men">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_nu" value="16778614" c:type="GDK_KEY_Armenian_nu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_o" value="16778629" c:type="GDK_KEY_Armenian_o">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_paruyk" value="16778590" c:type="GDK_KEY_Armenian_paruyk">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_pe" value="16778618" c:type="GDK_KEY_Armenian_pe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_pyur" value="16778627" c:type="GDK_KEY_Armenian_pyur">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_question" value="16778590" c:type="GDK_KEY_Armenian_question">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_ra" value="16778620" c:type="GDK_KEY_Armenian_ra">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_re" value="16778624" c:type="GDK_KEY_Armenian_re">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_se" value="16778621" c:type="GDK_KEY_Armenian_se">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_separation_mark" value="16778589" c:type="GDK_KEY_Armenian_separation_mark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_sha" value="16778615" c:type="GDK_KEY_Armenian_sha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_shesht" value="16778587" c:type="GDK_KEY_Armenian_shesht">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_tche" value="16778611" c:type="GDK_KEY_Armenian_tche">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_to" value="16778601" c:type="GDK_KEY_Armenian_to">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_tsa" value="16778606" c:type="GDK_KEY_Armenian_tsa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_tso" value="16778625" c:type="GDK_KEY_Armenian_tso">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_tyun" value="16778623" c:type="GDK_KEY_Armenian_tyun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_verjaket" value="16778633" c:type="GDK_KEY_Armenian_verjaket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_vev" value="16778622" c:type="GDK_KEY_Armenian_vev">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_vo" value="16778616" c:type="GDK_KEY_Armenian_vo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_vyun" value="16778626" c:type="GDK_KEY_Armenian_vyun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_yech" value="16778597" c:type="GDK_KEY_Armenian_yech">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_yentamna" value="16778634" c:type="GDK_KEY_Armenian_yentamna">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_za" value="16778598" c:type="GDK_KEY_Armenian_za">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Armenian_zhe" value="16778602" c:type="GDK_KEY_Armenian_zhe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Atilde" value="195" c:type="GDK_KEY_Atilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudibleBell_Enable" value="65146" c:type="GDK_KEY_AudibleBell_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioCycleTrack" value="269025179" c:type="GDK_KEY_AudioCycleTrack">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioForward" value="269025175" c:type="GDK_KEY_AudioForward">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioLowerVolume" value="269025041" c:type="GDK_KEY_AudioLowerVolume">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioMedia" value="269025074" c:type="GDK_KEY_AudioMedia">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioMicMute" value="269025202" c:type="GDK_KEY_AudioMicMute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioMute" value="269025042" c:type="GDK_KEY_AudioMute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioNext" value="269025047" c:type="GDK_KEY_AudioNext">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioPause" value="269025073" c:type="GDK_KEY_AudioPause">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioPlay" value="269025044" c:type="GDK_KEY_AudioPlay">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioPrev" value="269025046" c:type="GDK_KEY_AudioPrev">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioRaiseVolume" value="269025043" c:type="GDK_KEY_AudioRaiseVolume">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioRandomPlay" value="269025177" c:type="GDK_KEY_AudioRandomPlay">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioRecord" value="269025052" c:type="GDK_KEY_AudioRecord">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioRepeat" value="269025176" c:type="GDK_KEY_AudioRepeat">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioRewind" value="269025086" c:type="GDK_KEY_AudioRewind">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_AudioStop" value="269025045" c:type="GDK_KEY_AudioStop">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Away" value="269025165" c:type="GDK_KEY_Away">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_B" value="66" c:type="GDK_KEY_B">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Babovedot" value="16784898" c:type="GDK_KEY_Babovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Back" value="269025062" c:type="GDK_KEY_Back">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_BackForward" value="269025087" c:type="GDK_KEY_BackForward">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_BackSpace" value="65288" c:type="GDK_KEY_BackSpace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Battery" value="269025171" c:type="GDK_KEY_Battery">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Begin" value="65368" c:type="GDK_KEY_Begin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Blue" value="269025190" c:type="GDK_KEY_Blue">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Bluetooth" value="269025172" c:type="GDK_KEY_Bluetooth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Book" value="269025106" c:type="GDK_KEY_Book">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_BounceKeys_Enable" value="65140" c:type="GDK_KEY_BounceKeys_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Break" value="65387" c:type="GDK_KEY_Break">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_BrightnessAdjust" value="269025083" c:type="GDK_KEY_BrightnessAdjust">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Byelorussian_SHORTU" value="1726" c:type="GDK_KEY_Byelorussian_SHORTU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Byelorussian_shortu" value="1710" c:type="GDK_KEY_Byelorussian_shortu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_C" value="67" c:type="GDK_KEY_C">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_CD" value="269025107" c:type="GDK_KEY_CD">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_CH" value="65186" c:type="GDK_KEY_CH">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_C_H" value="65189" c:type="GDK_KEY_C_H">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_C_h" value="65188" c:type="GDK_KEY_C_h">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cabovedot" value="709" c:type="GDK_KEY_Cabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cacute" value="454" c:type="GDK_KEY_Cacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Calculator" value="269025053" c:type="GDK_KEY_Calculator">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Calendar" value="269025056" c:type="GDK_KEY_Calendar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cancel" value="65385" c:type="GDK_KEY_Cancel">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Caps_Lock" value="65509" c:type="GDK_KEY_Caps_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ccaron" value="456" c:type="GDK_KEY_Ccaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ccedilla" value="199" c:type="GDK_KEY_Ccedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ccircumflex" value="710" c:type="GDK_KEY_Ccircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ch" value="65185" c:type="GDK_KEY_Ch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Clear" value="65291" c:type="GDK_KEY_Clear">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ClearGrab" value="269024801" c:type="GDK_KEY_ClearGrab">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Close" value="269025110" c:type="GDK_KEY_Close">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Codeinput" value="65335" c:type="GDK_KEY_Codeinput">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ColonSign" value="16785569" c:type="GDK_KEY_ColonSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Community" value="269025085" c:type="GDK_KEY_Community">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ContrastAdjust" value="269025058" c:type="GDK_KEY_ContrastAdjust">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Control_L" value="65507" c:type="GDK_KEY_Control_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Control_R" value="65508" c:type="GDK_KEY_Control_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Copy" value="269025111" c:type="GDK_KEY_Copy">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_CruzeiroSign" value="16785570" c:type="GDK_KEY_CruzeiroSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cut" value="269025112" c:type="GDK_KEY_Cut">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_CycleAngle" value="269025180" c:type="GDK_KEY_CycleAngle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_A" value="1761" c:type="GDK_KEY_Cyrillic_A">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_BE" value="1762" c:type="GDK_KEY_Cyrillic_BE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_CHE" value="1790" c:type="GDK_KEY_Cyrillic_CHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_CHE_descender" value="16778422" c:type="GDK_KEY_Cyrillic_CHE_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_CHE_vertstroke" value="16778424" c:type="GDK_KEY_Cyrillic_CHE_vertstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_DE" value="1764" c:type="GDK_KEY_Cyrillic_DE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_DZHE" value="1727" c:type="GDK_KEY_Cyrillic_DZHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_E" value="1788" c:type="GDK_KEY_Cyrillic_E">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_EF" value="1766" c:type="GDK_KEY_Cyrillic_EF">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_EL" value="1772" c:type="GDK_KEY_Cyrillic_EL">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_EM" value="1773" c:type="GDK_KEY_Cyrillic_EM">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_EN" value="1774" c:type="GDK_KEY_Cyrillic_EN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_EN_descender" value="16778402" c:type="GDK_KEY_Cyrillic_EN_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ER" value="1778" c:type="GDK_KEY_Cyrillic_ER">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ES" value="1779" c:type="GDK_KEY_Cyrillic_ES">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_GHE" value="1767" c:type="GDK_KEY_Cyrillic_GHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_GHE_bar" value="16778386" c:type="GDK_KEY_Cyrillic_GHE_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_HA" value="1768" c:type="GDK_KEY_Cyrillic_HA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_HARDSIGN" value="1791" c:type="GDK_KEY_Cyrillic_HARDSIGN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_HA_descender" value="16778418" c:type="GDK_KEY_Cyrillic_HA_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_I" value="1769" c:type="GDK_KEY_Cyrillic_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_IE" value="1765" c:type="GDK_KEY_Cyrillic_IE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_IO" value="1715" c:type="GDK_KEY_Cyrillic_IO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_I_macron" value="16778466" c:type="GDK_KEY_Cyrillic_I_macron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_JE" value="1720" c:type="GDK_KEY_Cyrillic_JE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_KA" value="1771" c:type="GDK_KEY_Cyrillic_KA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_KA_descender" value="16778394" c:type="GDK_KEY_Cyrillic_KA_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_KA_vertstroke" value="16778396" c:type="GDK_KEY_Cyrillic_KA_vertstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_LJE" value="1721" c:type="GDK_KEY_Cyrillic_LJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_NJE" value="1722" c:type="GDK_KEY_Cyrillic_NJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_O" value="1775" c:type="GDK_KEY_Cyrillic_O">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_O_bar" value="16778472" c:type="GDK_KEY_Cyrillic_O_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_PE" value="1776" c:type="GDK_KEY_Cyrillic_PE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_SCHWA" value="16778456" c:type="GDK_KEY_Cyrillic_SCHWA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_SHA" value="1787" c:type="GDK_KEY_Cyrillic_SHA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_SHCHA" value="1789" c:type="GDK_KEY_Cyrillic_SHCHA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_SHHA" value="16778426" c:type="GDK_KEY_Cyrillic_SHHA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_SHORTI" value="1770" c:type="GDK_KEY_Cyrillic_SHORTI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_SOFTSIGN" value="1784" c:type="GDK_KEY_Cyrillic_SOFTSIGN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_TE" value="1780" c:type="GDK_KEY_Cyrillic_TE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_TSE" value="1763" c:type="GDK_KEY_Cyrillic_TSE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_U" value="1781" c:type="GDK_KEY_Cyrillic_U">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_U_macron" value="16778478" c:type="GDK_KEY_Cyrillic_U_macron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_U_straight" value="16778414" c:type="GDK_KEY_Cyrillic_U_straight">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_U_straight_bar" value="16778416" c:type="GDK_KEY_Cyrillic_U_straight_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_VE" value="1783" c:type="GDK_KEY_Cyrillic_VE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_YA" value="1777" c:type="GDK_KEY_Cyrillic_YA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_YERU" value="1785" c:type="GDK_KEY_Cyrillic_YERU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_YU" value="1760" c:type="GDK_KEY_Cyrillic_YU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ZE" value="1786" c:type="GDK_KEY_Cyrillic_ZE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ZHE" value="1782" c:type="GDK_KEY_Cyrillic_ZHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ZHE_descender" value="16778390" c:type="GDK_KEY_Cyrillic_ZHE_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_a" value="1729" c:type="GDK_KEY_Cyrillic_a">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_be" value="1730" c:type="GDK_KEY_Cyrillic_be">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_che" value="1758" c:type="GDK_KEY_Cyrillic_che">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_che_descender" value="16778423" c:type="GDK_KEY_Cyrillic_che_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_che_vertstroke" value="16778425" c:type="GDK_KEY_Cyrillic_che_vertstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_de" value="1732" c:type="GDK_KEY_Cyrillic_de">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_dzhe" value="1711" c:type="GDK_KEY_Cyrillic_dzhe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_e" value="1756" c:type="GDK_KEY_Cyrillic_e">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ef" value="1734" c:type="GDK_KEY_Cyrillic_ef">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_el" value="1740" c:type="GDK_KEY_Cyrillic_el">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_em" value="1741" c:type="GDK_KEY_Cyrillic_em">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_en" value="1742" c:type="GDK_KEY_Cyrillic_en">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_en_descender" value="16778403" c:type="GDK_KEY_Cyrillic_en_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_er" value="1746" c:type="GDK_KEY_Cyrillic_er">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_es" value="1747" c:type="GDK_KEY_Cyrillic_es">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ghe" value="1735" c:type="GDK_KEY_Cyrillic_ghe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ghe_bar" value="16778387" c:type="GDK_KEY_Cyrillic_ghe_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ha" value="1736" c:type="GDK_KEY_Cyrillic_ha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ha_descender" value="16778419" c:type="GDK_KEY_Cyrillic_ha_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_hardsign" value="1759" c:type="GDK_KEY_Cyrillic_hardsign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_i" value="1737" c:type="GDK_KEY_Cyrillic_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_i_macron" value="16778467" c:type="GDK_KEY_Cyrillic_i_macron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ie" value="1733" c:type="GDK_KEY_Cyrillic_ie">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_io" value="1699" c:type="GDK_KEY_Cyrillic_io">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_je" value="1704" c:type="GDK_KEY_Cyrillic_je">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ka" value="1739" c:type="GDK_KEY_Cyrillic_ka">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ka_descender" value="16778395" c:type="GDK_KEY_Cyrillic_ka_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ka_vertstroke" value="16778397" c:type="GDK_KEY_Cyrillic_ka_vertstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_lje" value="1705" c:type="GDK_KEY_Cyrillic_lje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_nje" value="1706" c:type="GDK_KEY_Cyrillic_nje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_o" value="1743" c:type="GDK_KEY_Cyrillic_o">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_o_bar" value="16778473" c:type="GDK_KEY_Cyrillic_o_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_pe" value="1744" c:type="GDK_KEY_Cyrillic_pe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_schwa" value="16778457" c:type="GDK_KEY_Cyrillic_schwa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_sha" value="1755" c:type="GDK_KEY_Cyrillic_sha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_shcha" value="1757" c:type="GDK_KEY_Cyrillic_shcha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_shha" value="16778427" c:type="GDK_KEY_Cyrillic_shha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_shorti" value="1738" c:type="GDK_KEY_Cyrillic_shorti">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_softsign" value="1752" c:type="GDK_KEY_Cyrillic_softsign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_te" value="1748" c:type="GDK_KEY_Cyrillic_te">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_tse" value="1731" c:type="GDK_KEY_Cyrillic_tse">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_u" value="1749" c:type="GDK_KEY_Cyrillic_u">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_u_macron" value="16778479" c:type="GDK_KEY_Cyrillic_u_macron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_u_straight" value="16778415" c:type="GDK_KEY_Cyrillic_u_straight">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_u_straight_bar" value="16778417" c:type="GDK_KEY_Cyrillic_u_straight_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ve" value="1751" c:type="GDK_KEY_Cyrillic_ve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ya" value="1745" c:type="GDK_KEY_Cyrillic_ya">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_yeru" value="1753" c:type="GDK_KEY_Cyrillic_yeru">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_yu" value="1728" c:type="GDK_KEY_Cyrillic_yu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_ze" value="1754" c:type="GDK_KEY_Cyrillic_ze">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_zhe" value="1750" c:type="GDK_KEY_Cyrillic_zhe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Cyrillic_zhe_descender" value="16778391" c:type="GDK_KEY_Cyrillic_zhe_descender">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_D" value="68" c:type="GDK_KEY_D">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_DOS" value="269025114" c:type="GDK_KEY_DOS">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Dabovedot" value="16784906" c:type="GDK_KEY_Dabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Dcaron" value="463" c:type="GDK_KEY_Dcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Delete" value="65535" c:type="GDK_KEY_Delete">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Display" value="269025113" c:type="GDK_KEY_Display">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Documents" value="269025115" c:type="GDK_KEY_Documents">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_DongSign" value="16785579" c:type="GDK_KEY_DongSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Down" value="65364" c:type="GDK_KEY_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Dstroke" value="464" c:type="GDK_KEY_Dstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_E" value="69" c:type="GDK_KEY_E">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ENG" value="957" c:type="GDK_KEY_ENG">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ETH" value="208" c:type="GDK_KEY_ETH">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_EZH" value="16777655" c:type="GDK_KEY_EZH">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eabovedot" value="972" c:type="GDK_KEY_Eabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eacute" value="201" c:type="GDK_KEY_Eacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ebelowdot" value="16785080" c:type="GDK_KEY_Ebelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecaron" value="460" c:type="GDK_KEY_Ecaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecircumflex" value="202" c:type="GDK_KEY_Ecircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecircumflexacute" value="16785086" c:type="GDK_KEY_Ecircumflexacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecircumflexbelowdot" value="16785094" c:type="GDK_KEY_Ecircumflexbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecircumflexgrave" value="16785088" c:type="GDK_KEY_Ecircumflexgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecircumflexhook" value="16785090" c:type="GDK_KEY_Ecircumflexhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ecircumflextilde" value="16785092" c:type="GDK_KEY_Ecircumflextilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_EcuSign" value="16785568" c:type="GDK_KEY_EcuSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ediaeresis" value="203" c:type="GDK_KEY_Ediaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Egrave" value="200" c:type="GDK_KEY_Egrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ehook" value="16785082" c:type="GDK_KEY_Ehook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eisu_Shift" value="65327" c:type="GDK_KEY_Eisu_Shift">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eisu_toggle" value="65328" c:type="GDK_KEY_Eisu_toggle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eject" value="269025068" c:type="GDK_KEY_Eject">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Emacron" value="938" c:type="GDK_KEY_Emacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_End" value="65367" c:type="GDK_KEY_End">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eogonek" value="458" c:type="GDK_KEY_Eogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Escape" value="65307" c:type="GDK_KEY_Escape">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Eth" value="208" c:type="GDK_KEY_Eth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Etilde" value="16785084" c:type="GDK_KEY_Etilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_EuroSign" value="8364" c:type="GDK_KEY_EuroSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Excel" value="269025116" c:type="GDK_KEY_Excel">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Execute" value="65378" c:type="GDK_KEY_Execute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Explorer" value="269025117" c:type="GDK_KEY_Explorer">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F" value="70" c:type="GDK_KEY_F">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F1" value="65470" c:type="GDK_KEY_F1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F10" value="65479" c:type="GDK_KEY_F10">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F11" value="65480" c:type="GDK_KEY_F11">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F12" value="65481" c:type="GDK_KEY_F12">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F13" value="65482" c:type="GDK_KEY_F13">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F14" value="65483" c:type="GDK_KEY_F14">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F15" value="65484" c:type="GDK_KEY_F15">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F16" value="65485" c:type="GDK_KEY_F16">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F17" value="65486" c:type="GDK_KEY_F17">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F18" value="65487" c:type="GDK_KEY_F18">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F19" value="65488" c:type="GDK_KEY_F19">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F2" value="65471" c:type="GDK_KEY_F2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F20" value="65489" c:type="GDK_KEY_F20">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F21" value="65490" c:type="GDK_KEY_F21">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F22" value="65491" c:type="GDK_KEY_F22">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F23" value="65492" c:type="GDK_KEY_F23">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F24" value="65493" c:type="GDK_KEY_F24">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F25" value="65494" c:type="GDK_KEY_F25">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F26" value="65495" c:type="GDK_KEY_F26">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F27" value="65496" c:type="GDK_KEY_F27">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F28" value="65497" c:type="GDK_KEY_F28">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F29" value="65498" c:type="GDK_KEY_F29">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F3" value="65472" c:type="GDK_KEY_F3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F30" value="65499" c:type="GDK_KEY_F30">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F31" value="65500" c:type="GDK_KEY_F31">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F32" value="65501" c:type="GDK_KEY_F32">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F33" value="65502" c:type="GDK_KEY_F33">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F34" value="65503" c:type="GDK_KEY_F34">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F35" value="65504" c:type="GDK_KEY_F35">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F4" value="65473" c:type="GDK_KEY_F4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F5" value="65474" c:type="GDK_KEY_F5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F6" value="65475" c:type="GDK_KEY_F6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F7" value="65476" c:type="GDK_KEY_F7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F8" value="65477" c:type="GDK_KEY_F8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_F9" value="65478" c:type="GDK_KEY_F9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_FFrancSign" value="16785571" c:type="GDK_KEY_FFrancSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Fabovedot" value="16784926" c:type="GDK_KEY_Fabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_0" value="16778992" c:type="GDK_KEY_Farsi_0">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_1" value="16778993" c:type="GDK_KEY_Farsi_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_2" value="16778994" c:type="GDK_KEY_Farsi_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_3" value="16778995" c:type="GDK_KEY_Farsi_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_4" value="16778996" c:type="GDK_KEY_Farsi_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_5" value="16778997" c:type="GDK_KEY_Farsi_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_6" value="16778998" c:type="GDK_KEY_Farsi_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_7" value="16778999" c:type="GDK_KEY_Farsi_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_8" value="16779000" c:type="GDK_KEY_Farsi_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_9" value="16779001" c:type="GDK_KEY_Farsi_9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Farsi_yeh" value="16778956" c:type="GDK_KEY_Farsi_yeh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Favorites" value="269025072" c:type="GDK_KEY_Favorites">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Finance" value="269025084" c:type="GDK_KEY_Finance">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Find" value="65384" c:type="GDK_KEY_Find">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_First_Virtual_Screen" value="65232" c:type="GDK_KEY_First_Virtual_Screen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Forward" value="269025063" c:type="GDK_KEY_Forward">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_FrameBack" value="269025181" c:type="GDK_KEY_FrameBack">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_FrameForward" value="269025182" c:type="GDK_KEY_FrameForward">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_G" value="71" c:type="GDK_KEY_G">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Gabovedot" value="725" c:type="GDK_KEY_Gabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Game" value="269025118" c:type="GDK_KEY_Game">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Gbreve" value="683" c:type="GDK_KEY_Gbreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Gcaron" value="16777702" c:type="GDK_KEY_Gcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Gcedilla" value="939" c:type="GDK_KEY_Gcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Gcircumflex" value="728" c:type="GDK_KEY_Gcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_an" value="16781520" c:type="GDK_KEY_Georgian_an">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_ban" value="16781521" c:type="GDK_KEY_Georgian_ban">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_can" value="16781546" c:type="GDK_KEY_Georgian_can">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_char" value="16781549" c:type="GDK_KEY_Georgian_char">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_chin" value="16781545" c:type="GDK_KEY_Georgian_chin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_cil" value="16781548" c:type="GDK_KEY_Georgian_cil">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_don" value="16781523" c:type="GDK_KEY_Georgian_don">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_en" value="16781524" c:type="GDK_KEY_Georgian_en">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_fi" value="16781558" c:type="GDK_KEY_Georgian_fi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_gan" value="16781522" c:type="GDK_KEY_Georgian_gan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_ghan" value="16781542" c:type="GDK_KEY_Georgian_ghan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_hae" value="16781552" c:type="GDK_KEY_Georgian_hae">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_har" value="16781556" c:type="GDK_KEY_Georgian_har">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_he" value="16781553" c:type="GDK_KEY_Georgian_he">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_hie" value="16781554" c:type="GDK_KEY_Georgian_hie">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_hoe" value="16781557" c:type="GDK_KEY_Georgian_hoe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_in" value="16781528" c:type="GDK_KEY_Georgian_in">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_jhan" value="16781551" c:type="GDK_KEY_Georgian_jhan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_jil" value="16781547" c:type="GDK_KEY_Georgian_jil">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_kan" value="16781529" c:type="GDK_KEY_Georgian_kan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_khar" value="16781541" c:type="GDK_KEY_Georgian_khar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_las" value="16781530" c:type="GDK_KEY_Georgian_las">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_man" value="16781531" c:type="GDK_KEY_Georgian_man">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_nar" value="16781532" c:type="GDK_KEY_Georgian_nar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_on" value="16781533" c:type="GDK_KEY_Georgian_on">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_par" value="16781534" c:type="GDK_KEY_Georgian_par">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_phar" value="16781540" c:type="GDK_KEY_Georgian_phar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_qar" value="16781543" c:type="GDK_KEY_Georgian_qar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_rae" value="16781536" c:type="GDK_KEY_Georgian_rae">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_san" value="16781537" c:type="GDK_KEY_Georgian_san">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_shin" value="16781544" c:type="GDK_KEY_Georgian_shin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_tan" value="16781527" c:type="GDK_KEY_Georgian_tan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_tar" value="16781538" c:type="GDK_KEY_Georgian_tar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_un" value="16781539" c:type="GDK_KEY_Georgian_un">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_vin" value="16781525" c:type="GDK_KEY_Georgian_vin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_we" value="16781555" c:type="GDK_KEY_Georgian_we">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_xan" value="16781550" c:type="GDK_KEY_Georgian_xan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_zen" value="16781526" c:type="GDK_KEY_Georgian_zen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Georgian_zhar" value="16781535" c:type="GDK_KEY_Georgian_zhar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Go" value="269025119" c:type="GDK_KEY_Go">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_ALPHA" value="1985" c:type="GDK_KEY_Greek_ALPHA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_ALPHAaccent" value="1953" c:type="GDK_KEY_Greek_ALPHAaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_BETA" value="1986" c:type="GDK_KEY_Greek_BETA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_CHI" value="2007" c:type="GDK_KEY_Greek_CHI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_DELTA" value="1988" c:type="GDK_KEY_Greek_DELTA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_EPSILON" value="1989" c:type="GDK_KEY_Greek_EPSILON">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_EPSILONaccent" value="1954" c:type="GDK_KEY_Greek_EPSILONaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_ETA" value="1991" c:type="GDK_KEY_Greek_ETA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_ETAaccent" value="1955" c:type="GDK_KEY_Greek_ETAaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_GAMMA" value="1987" c:type="GDK_KEY_Greek_GAMMA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_IOTA" value="1993" c:type="GDK_KEY_Greek_IOTA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_IOTAaccent" value="1956" c:type="GDK_KEY_Greek_IOTAaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_IOTAdiaeresis" value="1957" c:type="GDK_KEY_Greek_IOTAdiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_IOTAdieresis" value="1957" c:type="GDK_KEY_Greek_IOTAdieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_KAPPA" value="1994" c:type="GDK_KEY_Greek_KAPPA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_LAMBDA" value="1995" c:type="GDK_KEY_Greek_LAMBDA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_LAMDA" value="1995" c:type="GDK_KEY_Greek_LAMDA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_MU" value="1996" c:type="GDK_KEY_Greek_MU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_NU" value="1997" c:type="GDK_KEY_Greek_NU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_OMEGA" value="2009" c:type="GDK_KEY_Greek_OMEGA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_OMEGAaccent" value="1963" c:type="GDK_KEY_Greek_OMEGAaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_OMICRON" value="1999" c:type="GDK_KEY_Greek_OMICRON">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_OMICRONaccent" value="1959" c:type="GDK_KEY_Greek_OMICRONaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_PHI" value="2006" c:type="GDK_KEY_Greek_PHI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_PI" value="2000" c:type="GDK_KEY_Greek_PI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_PSI" value="2008" c:type="GDK_KEY_Greek_PSI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_RHO" value="2001" c:type="GDK_KEY_Greek_RHO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_SIGMA" value="2002" c:type="GDK_KEY_Greek_SIGMA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_TAU" value="2004" c:type="GDK_KEY_Greek_TAU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_THETA" value="1992" c:type="GDK_KEY_Greek_THETA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_UPSILON" value="2005" c:type="GDK_KEY_Greek_UPSILON">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_UPSILONaccent" value="1960" c:type="GDK_KEY_Greek_UPSILONaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_UPSILONdieresis" value="1961" c:type="GDK_KEY_Greek_UPSILONdieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_XI" value="1998" c:type="GDK_KEY_Greek_XI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_ZETA" value="1990" c:type="GDK_KEY_Greek_ZETA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_accentdieresis" value="1966" c:type="GDK_KEY_Greek_accentdieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_alpha" value="2017" c:type="GDK_KEY_Greek_alpha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_alphaaccent" value="1969" c:type="GDK_KEY_Greek_alphaaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_beta" value="2018" c:type="GDK_KEY_Greek_beta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_chi" value="2039" c:type="GDK_KEY_Greek_chi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_delta" value="2020" c:type="GDK_KEY_Greek_delta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_epsilon" value="2021" c:type="GDK_KEY_Greek_epsilon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_epsilonaccent" value="1970" c:type="GDK_KEY_Greek_epsilonaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_eta" value="2023" c:type="GDK_KEY_Greek_eta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_etaaccent" value="1971" c:type="GDK_KEY_Greek_etaaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_finalsmallsigma" value="2035" c:type="GDK_KEY_Greek_finalsmallsigma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_gamma" value="2019" c:type="GDK_KEY_Greek_gamma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_horizbar" value="1967" c:type="GDK_KEY_Greek_horizbar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_iota" value="2025" c:type="GDK_KEY_Greek_iota">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_iotaaccent" value="1972" c:type="GDK_KEY_Greek_iotaaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_iotaaccentdieresis" value="1974" c:type="GDK_KEY_Greek_iotaaccentdieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_iotadieresis" value="1973" c:type="GDK_KEY_Greek_iotadieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_kappa" value="2026" c:type="GDK_KEY_Greek_kappa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_lambda" value="2027" c:type="GDK_KEY_Greek_lambda">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_lamda" value="2027" c:type="GDK_KEY_Greek_lamda">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_mu" value="2028" c:type="GDK_KEY_Greek_mu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_nu" value="2029" c:type="GDK_KEY_Greek_nu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_omega" value="2041" c:type="GDK_KEY_Greek_omega">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_omegaaccent" value="1979" c:type="GDK_KEY_Greek_omegaaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_omicron" value="2031" c:type="GDK_KEY_Greek_omicron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_omicronaccent" value="1975" c:type="GDK_KEY_Greek_omicronaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_phi" value="2038" c:type="GDK_KEY_Greek_phi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_pi" value="2032" c:type="GDK_KEY_Greek_pi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_psi" value="2040" c:type="GDK_KEY_Greek_psi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_rho" value="2033" c:type="GDK_KEY_Greek_rho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_sigma" value="2034" c:type="GDK_KEY_Greek_sigma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_switch" value="65406" c:type="GDK_KEY_Greek_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_tau" value="2036" c:type="GDK_KEY_Greek_tau">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_theta" value="2024" c:type="GDK_KEY_Greek_theta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_upsilon" value="2037" c:type="GDK_KEY_Greek_upsilon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_upsilonaccent" value="1976" c:type="GDK_KEY_Greek_upsilonaccent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_upsilonaccentdieresis" value="1978" c:type="GDK_KEY_Greek_upsilonaccentdieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_upsilondieresis" value="1977" c:type="GDK_KEY_Greek_upsilondieresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_xi" value="2030" c:type="GDK_KEY_Greek_xi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Greek_zeta" value="2022" c:type="GDK_KEY_Greek_zeta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Green" value="269025188" c:type="GDK_KEY_Green">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_H" value="72" c:type="GDK_KEY_H">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul" value="65329" c:type="GDK_KEY_Hangul">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_A" value="3775" c:type="GDK_KEY_Hangul_A">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_AE" value="3776" c:type="GDK_KEY_Hangul_AE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_AraeA" value="3830" c:type="GDK_KEY_Hangul_AraeA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_AraeAE" value="3831" c:type="GDK_KEY_Hangul_AraeAE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Banja" value="65337" c:type="GDK_KEY_Hangul_Banja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Cieuc" value="3770" c:type="GDK_KEY_Hangul_Cieuc">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Codeinput" value="65335" c:type="GDK_KEY_Hangul_Codeinput">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Dikeud" value="3751" c:type="GDK_KEY_Hangul_Dikeud">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_E" value="3780" c:type="GDK_KEY_Hangul_E">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_EO" value="3779" c:type="GDK_KEY_Hangul_EO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_EU" value="3793" c:type="GDK_KEY_Hangul_EU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_End" value="65331" c:type="GDK_KEY_Hangul_End">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Hanja" value="65332" c:type="GDK_KEY_Hangul_Hanja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Hieuh" value="3774" c:type="GDK_KEY_Hangul_Hieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_I" value="3795" c:type="GDK_KEY_Hangul_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Ieung" value="3767" c:type="GDK_KEY_Hangul_Ieung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Cieuc" value="3818" c:type="GDK_KEY_Hangul_J_Cieuc">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Dikeud" value="3802" c:type="GDK_KEY_Hangul_J_Dikeud">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Hieuh" value="3822" c:type="GDK_KEY_Hangul_J_Hieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Ieung" value="3816" c:type="GDK_KEY_Hangul_J_Ieung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Jieuj" value="3817" c:type="GDK_KEY_Hangul_J_Jieuj">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Khieuq" value="3819" c:type="GDK_KEY_Hangul_J_Khieuq">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Kiyeog" value="3796" c:type="GDK_KEY_Hangul_J_Kiyeog">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_KiyeogSios" value="3798" c:type="GDK_KEY_Hangul_J_KiyeogSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_KkogjiDalrinIeung" value="3833" c:type="GDK_KEY_Hangul_J_KkogjiDalrinIeung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Mieum" value="3811" c:type="GDK_KEY_Hangul_J_Mieum">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Nieun" value="3799" c:type="GDK_KEY_Hangul_J_Nieun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_NieunHieuh" value="3801" c:type="GDK_KEY_Hangul_J_NieunHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_NieunJieuj" value="3800" c:type="GDK_KEY_Hangul_J_NieunJieuj">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_PanSios" value="3832" c:type="GDK_KEY_Hangul_J_PanSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Phieuf" value="3821" c:type="GDK_KEY_Hangul_J_Phieuf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Pieub" value="3812" c:type="GDK_KEY_Hangul_J_Pieub">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_PieubSios" value="3813" c:type="GDK_KEY_Hangul_J_PieubSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Rieul" value="3803" c:type="GDK_KEY_Hangul_J_Rieul">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulHieuh" value="3810" c:type="GDK_KEY_Hangul_J_RieulHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulKiyeog" value="3804" c:type="GDK_KEY_Hangul_J_RieulKiyeog">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulMieum" value="3805" c:type="GDK_KEY_Hangul_J_RieulMieum">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulPhieuf" value="3809" c:type="GDK_KEY_Hangul_J_RieulPhieuf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulPieub" value="3806" c:type="GDK_KEY_Hangul_J_RieulPieub">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulSios" value="3807" c:type="GDK_KEY_Hangul_J_RieulSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_RieulTieut" value="3808" c:type="GDK_KEY_Hangul_J_RieulTieut">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Sios" value="3814" c:type="GDK_KEY_Hangul_J_Sios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_SsangKiyeog" value="3797" c:type="GDK_KEY_Hangul_J_SsangKiyeog">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_SsangSios" value="3815" c:type="GDK_KEY_Hangul_J_SsangSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_Tieut" value="3820" c:type="GDK_KEY_Hangul_J_Tieut">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_J_YeorinHieuh" value="3834" c:type="GDK_KEY_Hangul_J_YeorinHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Jamo" value="65333" c:type="GDK_KEY_Hangul_Jamo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Jeonja" value="65336" c:type="GDK_KEY_Hangul_Jeonja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Jieuj" value="3768" c:type="GDK_KEY_Hangul_Jieuj">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Khieuq" value="3771" c:type="GDK_KEY_Hangul_Khieuq">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Kiyeog" value="3745" c:type="GDK_KEY_Hangul_Kiyeog">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_KiyeogSios" value="3747" c:type="GDK_KEY_Hangul_KiyeogSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_KkogjiDalrinIeung" value="3827" c:type="GDK_KEY_Hangul_KkogjiDalrinIeung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Mieum" value="3761" c:type="GDK_KEY_Hangul_Mieum">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_MultipleCandidate" value="65341" c:type="GDK_KEY_Hangul_MultipleCandidate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Nieun" value="3748" c:type="GDK_KEY_Hangul_Nieun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_NieunHieuh" value="3750" c:type="GDK_KEY_Hangul_NieunHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_NieunJieuj" value="3749" c:type="GDK_KEY_Hangul_NieunJieuj">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_O" value="3783" c:type="GDK_KEY_Hangul_O">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_OE" value="3786" c:type="GDK_KEY_Hangul_OE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_PanSios" value="3826" c:type="GDK_KEY_Hangul_PanSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Phieuf" value="3773" c:type="GDK_KEY_Hangul_Phieuf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Pieub" value="3762" c:type="GDK_KEY_Hangul_Pieub">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_PieubSios" value="3764" c:type="GDK_KEY_Hangul_PieubSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_PostHanja" value="65339" c:type="GDK_KEY_Hangul_PostHanja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_PreHanja" value="65338" c:type="GDK_KEY_Hangul_PreHanja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_PreviousCandidate" value="65342" c:type="GDK_KEY_Hangul_PreviousCandidate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Rieul" value="3753" c:type="GDK_KEY_Hangul_Rieul">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulHieuh" value="3760" c:type="GDK_KEY_Hangul_RieulHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulKiyeog" value="3754" c:type="GDK_KEY_Hangul_RieulKiyeog">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulMieum" value="3755" c:type="GDK_KEY_Hangul_RieulMieum">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulPhieuf" value="3759" c:type="GDK_KEY_Hangul_RieulPhieuf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulPieub" value="3756" c:type="GDK_KEY_Hangul_RieulPieub">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulSios" value="3757" c:type="GDK_KEY_Hangul_RieulSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulTieut" value="3758" c:type="GDK_KEY_Hangul_RieulTieut">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_RieulYeorinHieuh" value="3823" c:type="GDK_KEY_Hangul_RieulYeorinHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Romaja" value="65334" c:type="GDK_KEY_Hangul_Romaja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SingleCandidate" value="65340" c:type="GDK_KEY_Hangul_SingleCandidate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Sios" value="3765" c:type="GDK_KEY_Hangul_Sios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Special" value="65343" c:type="GDK_KEY_Hangul_Special">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SsangDikeud" value="3752" c:type="GDK_KEY_Hangul_SsangDikeud">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SsangJieuj" value="3769" c:type="GDK_KEY_Hangul_SsangJieuj">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SsangKiyeog" value="3746" c:type="GDK_KEY_Hangul_SsangKiyeog">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SsangPieub" value="3763" c:type="GDK_KEY_Hangul_SsangPieub">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SsangSios" value="3766" c:type="GDK_KEY_Hangul_SsangSios">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Start" value="65330" c:type="GDK_KEY_Hangul_Start">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SunkyeongeumMieum" value="3824" c:type="GDK_KEY_Hangul_SunkyeongeumMieum">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SunkyeongeumPhieuf" value="3828" c:type="GDK_KEY_Hangul_SunkyeongeumPhieuf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_SunkyeongeumPieub" value="3825" c:type="GDK_KEY_Hangul_SunkyeongeumPieub">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_Tieut" value="3772" c:type="GDK_KEY_Hangul_Tieut">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_U" value="3788" c:type="GDK_KEY_Hangul_U">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_WA" value="3784" c:type="GDK_KEY_Hangul_WA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_WAE" value="3785" c:type="GDK_KEY_Hangul_WAE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_WE" value="3790" c:type="GDK_KEY_Hangul_WE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_WEO" value="3789" c:type="GDK_KEY_Hangul_WEO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_WI" value="3791" c:type="GDK_KEY_Hangul_WI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YA" value="3777" c:type="GDK_KEY_Hangul_YA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YAE" value="3778" c:type="GDK_KEY_Hangul_YAE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YE" value="3782" c:type="GDK_KEY_Hangul_YE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YEO" value="3781" c:type="GDK_KEY_Hangul_YEO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YI" value="3794" c:type="GDK_KEY_Hangul_YI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YO" value="3787" c:type="GDK_KEY_Hangul_YO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YU" value="3792" c:type="GDK_KEY_Hangul_YU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_YeorinHieuh" value="3829" c:type="GDK_KEY_Hangul_YeorinHieuh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hangul_switch" value="65406" c:type="GDK_KEY_Hangul_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hankaku" value="65321" c:type="GDK_KEY_Hankaku">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hcircumflex" value="678" c:type="GDK_KEY_Hcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hebrew_switch" value="65406" c:type="GDK_KEY_Hebrew_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Help" value="65386" c:type="GDK_KEY_Help">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Henkan" value="65315" c:type="GDK_KEY_Henkan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Henkan_Mode" value="65315" c:type="GDK_KEY_Henkan_Mode">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hibernate" value="269025192" c:type="GDK_KEY_Hibernate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hiragana" value="65317" c:type="GDK_KEY_Hiragana">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hiragana_Katakana" value="65319" c:type="GDK_KEY_Hiragana_Katakana">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_History" value="269025079" c:type="GDK_KEY_History">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Home" value="65360" c:type="GDK_KEY_Home">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_HomePage" value="269025048" c:type="GDK_KEY_HomePage">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_HotLinks" value="269025082" c:type="GDK_KEY_HotLinks">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hstroke" value="673" c:type="GDK_KEY_Hstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hyper_L" value="65517" c:type="GDK_KEY_Hyper_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Hyper_R" value="65518" c:type="GDK_KEY_Hyper_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_I" value="73" c:type="GDK_KEY_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Center_Object" value="65075" c:type="GDK_KEY_ISO_Center_Object">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Continuous_Underline" value="65072" c:type="GDK_KEY_ISO_Continuous_Underline">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Discontinuous_Underline" value="65073" c:type="GDK_KEY_ISO_Discontinuous_Underline">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Emphasize" value="65074" c:type="GDK_KEY_ISO_Emphasize">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Enter" value="65076" c:type="GDK_KEY_ISO_Enter">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Fast_Cursor_Down" value="65071" c:type="GDK_KEY_ISO_Fast_Cursor_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Fast_Cursor_Left" value="65068" c:type="GDK_KEY_ISO_Fast_Cursor_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Fast_Cursor_Right" value="65069" c:type="GDK_KEY_ISO_Fast_Cursor_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Fast_Cursor_Up" value="65070" c:type="GDK_KEY_ISO_Fast_Cursor_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_First_Group" value="65036" c:type="GDK_KEY_ISO_First_Group">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_First_Group_Lock" value="65037" c:type="GDK_KEY_ISO_First_Group_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Group_Latch" value="65030" c:type="GDK_KEY_ISO_Group_Latch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Group_Lock" value="65031" c:type="GDK_KEY_ISO_Group_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Group_Shift" value="65406" c:type="GDK_KEY_ISO_Group_Shift">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Last_Group" value="65038" c:type="GDK_KEY_ISO_Last_Group">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Last_Group_Lock" value="65039" c:type="GDK_KEY_ISO_Last_Group_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Left_Tab" value="65056" c:type="GDK_KEY_ISO_Left_Tab">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level2_Latch" value="65026" c:type="GDK_KEY_ISO_Level2_Latch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level3_Latch" value="65028" c:type="GDK_KEY_ISO_Level3_Latch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level3_Lock" value="65029" c:type="GDK_KEY_ISO_Level3_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level3_Shift" value="65027" c:type="GDK_KEY_ISO_Level3_Shift">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level5_Latch" value="65042" c:type="GDK_KEY_ISO_Level5_Latch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level5_Lock" value="65043" c:type="GDK_KEY_ISO_Level5_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Level5_Shift" value="65041" c:type="GDK_KEY_ISO_Level5_Shift">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Lock" value="65025" c:type="GDK_KEY_ISO_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Move_Line_Down" value="65058" c:type="GDK_KEY_ISO_Move_Line_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Move_Line_Up" value="65057" c:type="GDK_KEY_ISO_Move_Line_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Next_Group" value="65032" c:type="GDK_KEY_ISO_Next_Group">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Next_Group_Lock" value="65033" c:type="GDK_KEY_ISO_Next_Group_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Partial_Line_Down" value="65060" c:type="GDK_KEY_ISO_Partial_Line_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Partial_Line_Up" value="65059" c:type="GDK_KEY_ISO_Partial_Line_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Partial_Space_Left" value="65061" c:type="GDK_KEY_ISO_Partial_Space_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Partial_Space_Right" value="65062" c:type="GDK_KEY_ISO_Partial_Space_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Prev_Group" value="65034" c:type="GDK_KEY_ISO_Prev_Group">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Prev_Group_Lock" value="65035" c:type="GDK_KEY_ISO_Prev_Group_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Release_Both_Margins" value="65067" c:type="GDK_KEY_ISO_Release_Both_Margins">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Release_Margin_Left" value="65065" c:type="GDK_KEY_ISO_Release_Margin_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Release_Margin_Right" value="65066" c:type="GDK_KEY_ISO_Release_Margin_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Set_Margin_Left" value="65063" c:type="GDK_KEY_ISO_Set_Margin_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ISO_Set_Margin_Right" value="65064" c:type="GDK_KEY_ISO_Set_Margin_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Iabovedot" value="681" c:type="GDK_KEY_Iabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Iacute" value="205" c:type="GDK_KEY_Iacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ibelowdot" value="16785098" c:type="GDK_KEY_Ibelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ibreve" value="16777516" c:type="GDK_KEY_Ibreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Icircumflex" value="206" c:type="GDK_KEY_Icircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Idiaeresis" value="207" c:type="GDK_KEY_Idiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Igrave" value="204" c:type="GDK_KEY_Igrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ihook" value="16785096" c:type="GDK_KEY_Ihook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Imacron" value="975" c:type="GDK_KEY_Imacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Insert" value="65379" c:type="GDK_KEY_Insert">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Iogonek" value="967" c:type="GDK_KEY_Iogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Itilde" value="933" c:type="GDK_KEY_Itilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_J" value="74" c:type="GDK_KEY_J">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Jcircumflex" value="684" c:type="GDK_KEY_Jcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_K" value="75" c:type="GDK_KEY_K">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_0" value="65456" c:type="GDK_KEY_KP_0">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_1" value="65457" c:type="GDK_KEY_KP_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_2" value="65458" c:type="GDK_KEY_KP_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_3" value="65459" c:type="GDK_KEY_KP_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_4" value="65460" c:type="GDK_KEY_KP_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_5" value="65461" c:type="GDK_KEY_KP_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_6" value="65462" c:type="GDK_KEY_KP_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_7" value="65463" c:type="GDK_KEY_KP_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_8" value="65464" c:type="GDK_KEY_KP_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_9" value="65465" c:type="GDK_KEY_KP_9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Add" value="65451" c:type="GDK_KEY_KP_Add">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Begin" value="65437" c:type="GDK_KEY_KP_Begin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Decimal" value="65454" c:type="GDK_KEY_KP_Decimal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Delete" value="65439" c:type="GDK_KEY_KP_Delete">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Divide" value="65455" c:type="GDK_KEY_KP_Divide">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Down" value="65433" c:type="GDK_KEY_KP_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_End" value="65436" c:type="GDK_KEY_KP_End">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Enter" value="65421" c:type="GDK_KEY_KP_Enter">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Equal" value="65469" c:type="GDK_KEY_KP_Equal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_F1" value="65425" c:type="GDK_KEY_KP_F1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_F2" value="65426" c:type="GDK_KEY_KP_F2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_F3" value="65427" c:type="GDK_KEY_KP_F3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_F4" value="65428" c:type="GDK_KEY_KP_F4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Home" value="65429" c:type="GDK_KEY_KP_Home">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Insert" value="65438" c:type="GDK_KEY_KP_Insert">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Left" value="65430" c:type="GDK_KEY_KP_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Multiply" value="65450" c:type="GDK_KEY_KP_Multiply">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Next" value="65435" c:type="GDK_KEY_KP_Next">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Page_Down" value="65435" c:type="GDK_KEY_KP_Page_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Page_Up" value="65434" c:type="GDK_KEY_KP_Page_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Prior" value="65434" c:type="GDK_KEY_KP_Prior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Right" value="65432" c:type="GDK_KEY_KP_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Separator" value="65452" c:type="GDK_KEY_KP_Separator">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Space" value="65408" c:type="GDK_KEY_KP_Space">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Subtract" value="65453" c:type="GDK_KEY_KP_Subtract">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Tab" value="65417" c:type="GDK_KEY_KP_Tab">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KP_Up" value="65431" c:type="GDK_KEY_KP_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Kana_Lock" value="65325" c:type="GDK_KEY_Kana_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Kana_Shift" value="65326" c:type="GDK_KEY_Kana_Shift">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Kanji" value="65313" c:type="GDK_KEY_Kanji">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Kanji_Bangou" value="65335" c:type="GDK_KEY_Kanji_Bangou">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Katakana" value="65318" c:type="GDK_KEY_Katakana">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KbdBrightnessDown" value="269025030" c:type="GDK_KEY_KbdBrightnessDown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KbdBrightnessUp" value="269025029" c:type="GDK_KEY_KbdBrightnessUp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_KbdLightOnOff" value="269025028" c:type="GDK_KEY_KbdLightOnOff">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Kcedilla" value="979" c:type="GDK_KEY_Kcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Korean_Won" value="3839" c:type="GDK_KEY_Korean_Won">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L" value="76" c:type="GDK_KEY_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L1" value="65480" c:type="GDK_KEY_L1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L10" value="65489" c:type="GDK_KEY_L10">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L2" value="65481" c:type="GDK_KEY_L2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L3" value="65482" c:type="GDK_KEY_L3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L4" value="65483" c:type="GDK_KEY_L4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L5" value="65484" c:type="GDK_KEY_L5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L6" value="65485" c:type="GDK_KEY_L6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L7" value="65486" c:type="GDK_KEY_L7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L8" value="65487" c:type="GDK_KEY_L8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_L9" value="65488" c:type="GDK_KEY_L9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Lacute" value="453" c:type="GDK_KEY_Lacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Last_Virtual_Screen" value="65236" c:type="GDK_KEY_Last_Virtual_Screen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch0" value="269025088" c:type="GDK_KEY_Launch0">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch1" value="269025089" c:type="GDK_KEY_Launch1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch2" value="269025090" c:type="GDK_KEY_Launch2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch3" value="269025091" c:type="GDK_KEY_Launch3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch4" value="269025092" c:type="GDK_KEY_Launch4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch5" value="269025093" c:type="GDK_KEY_Launch5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch6" value="269025094" c:type="GDK_KEY_Launch6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch7" value="269025095" c:type="GDK_KEY_Launch7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch8" value="269025096" c:type="GDK_KEY_Launch8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Launch9" value="269025097" c:type="GDK_KEY_Launch9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LaunchA" value="269025098" c:type="GDK_KEY_LaunchA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LaunchB" value="269025099" c:type="GDK_KEY_LaunchB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LaunchC" value="269025100" c:type="GDK_KEY_LaunchC">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LaunchD" value="269025101" c:type="GDK_KEY_LaunchD">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LaunchE" value="269025102" c:type="GDK_KEY_LaunchE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LaunchF" value="269025103" c:type="GDK_KEY_LaunchF">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Lbelowdot" value="16784950" c:type="GDK_KEY_Lbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Lcaron" value="421" c:type="GDK_KEY_Lcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Lcedilla" value="934" c:type="GDK_KEY_Lcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Left" value="65361" c:type="GDK_KEY_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LightBulb" value="269025077" c:type="GDK_KEY_LightBulb">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Linefeed" value="65290" c:type="GDK_KEY_Linefeed">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LiraSign" value="16785572" c:type="GDK_KEY_LiraSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LogGrabInfo" value="269024805" c:type="GDK_KEY_LogGrabInfo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LogOff" value="269025121" c:type="GDK_KEY_LogOff">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_LogWindowTree" value="269024804" c:type="GDK_KEY_LogWindowTree">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Lstroke" value="419" c:type="GDK_KEY_Lstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_M" value="77" c:type="GDK_KEY_M">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Mabovedot" value="16784960" c:type="GDK_KEY_Mabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Macedonia_DSE" value="1717" c:type="GDK_KEY_Macedonia_DSE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Macedonia_GJE" value="1714" c:type="GDK_KEY_Macedonia_GJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Macedonia_KJE" value="1724" c:type="GDK_KEY_Macedonia_KJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Macedonia_dse" value="1701" c:type="GDK_KEY_Macedonia_dse">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Macedonia_gje" value="1698" c:type="GDK_KEY_Macedonia_gje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Macedonia_kje" value="1708" c:type="GDK_KEY_Macedonia_kje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Mae_Koho" value="65342" c:type="GDK_KEY_Mae_Koho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Mail" value="269025049" c:type="GDK_KEY_Mail">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MailForward" value="269025168" c:type="GDK_KEY_MailForward">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Market" value="269025122" c:type="GDK_KEY_Market">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Massyo" value="65324" c:type="GDK_KEY_Massyo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Meeting" value="269025123" c:type="GDK_KEY_Meeting">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Memo" value="269025054" c:type="GDK_KEY_Memo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Menu" value="65383" c:type="GDK_KEY_Menu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MenuKB" value="269025125" c:type="GDK_KEY_MenuKB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MenuPB" value="269025126" c:type="GDK_KEY_MenuPB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Messenger" value="269025166" c:type="GDK_KEY_Messenger">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Meta_L" value="65511" c:type="GDK_KEY_Meta_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Meta_R" value="65512" c:type="GDK_KEY_Meta_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MillSign" value="16785573" c:type="GDK_KEY_MillSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ModeLock" value="269025025" c:type="GDK_KEY_ModeLock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Mode_switch" value="65406" c:type="GDK_KEY_Mode_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MonBrightnessDown" value="269025027" c:type="GDK_KEY_MonBrightnessDown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MonBrightnessUp" value="269025026" c:type="GDK_KEY_MonBrightnessUp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MouseKeys_Accel_Enable" value="65143" c:type="GDK_KEY_MouseKeys_Accel_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MouseKeys_Enable" value="65142" c:type="GDK_KEY_MouseKeys_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Muhenkan" value="65314" c:type="GDK_KEY_Muhenkan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Multi_key" value="65312" c:type="GDK_KEY_Multi_key">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MultipleCandidate" value="65341" c:type="GDK_KEY_MultipleCandidate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Music" value="269025170" c:type="GDK_KEY_Music">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MyComputer" value="269025075" c:type="GDK_KEY_MyComputer">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_MySites" value="269025127" c:type="GDK_KEY_MySites">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_N" value="78" c:type="GDK_KEY_N">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Nacute" value="465" c:type="GDK_KEY_Nacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_NairaSign" value="16785574" c:type="GDK_KEY_NairaSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ncaron" value="466" c:type="GDK_KEY_Ncaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ncedilla" value="977" c:type="GDK_KEY_Ncedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_New" value="269025128" c:type="GDK_KEY_New">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_NewSheqelSign" value="16785578" c:type="GDK_KEY_NewSheqelSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_News" value="269025129" c:type="GDK_KEY_News">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Next" value="65366" c:type="GDK_KEY_Next">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Next_VMode" value="269024802" c:type="GDK_KEY_Next_VMode">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Next_Virtual_Screen" value="65234" c:type="GDK_KEY_Next_Virtual_Screen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ntilde" value="209" c:type="GDK_KEY_Ntilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Num_Lock" value="65407" c:type="GDK_KEY_Num_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_O" value="79" c:type="GDK_KEY_O">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_OE" value="5052" c:type="GDK_KEY_OE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Oacute" value="211" c:type="GDK_KEY_Oacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Obarred" value="16777631" c:type="GDK_KEY_Obarred">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Obelowdot" value="16785100" c:type="GDK_KEY_Obelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocaron" value="16777681" c:type="GDK_KEY_Ocaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocircumflex" value="212" c:type="GDK_KEY_Ocircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocircumflexacute" value="16785104" c:type="GDK_KEY_Ocircumflexacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocircumflexbelowdot" value="16785112" c:type="GDK_KEY_Ocircumflexbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocircumflexgrave" value="16785106" c:type="GDK_KEY_Ocircumflexgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocircumflexhook" value="16785108" c:type="GDK_KEY_Ocircumflexhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ocircumflextilde" value="16785110" c:type="GDK_KEY_Ocircumflextilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Odiaeresis" value="214" c:type="GDK_KEY_Odiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Odoubleacute" value="469" c:type="GDK_KEY_Odoubleacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_OfficeHome" value="269025130" c:type="GDK_KEY_OfficeHome">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ograve" value="210" c:type="GDK_KEY_Ograve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohook" value="16785102" c:type="GDK_KEY_Ohook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohorn" value="16777632" c:type="GDK_KEY_Ohorn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohornacute" value="16785114" c:type="GDK_KEY_Ohornacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohornbelowdot" value="16785122" c:type="GDK_KEY_Ohornbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohorngrave" value="16785116" c:type="GDK_KEY_Ohorngrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohornhook" value="16785118" c:type="GDK_KEY_Ohornhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ohorntilde" value="16785120" c:type="GDK_KEY_Ohorntilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Omacron" value="978" c:type="GDK_KEY_Omacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ooblique" value="216" c:type="GDK_KEY_Ooblique">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Open" value="269025131" c:type="GDK_KEY_Open">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_OpenURL" value="269025080" c:type="GDK_KEY_OpenURL">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Option" value="269025132" c:type="GDK_KEY_Option">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Oslash" value="216" c:type="GDK_KEY_Oslash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Otilde" value="213" c:type="GDK_KEY_Otilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Overlay1_Enable" value="65144" c:type="GDK_KEY_Overlay1_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Overlay2_Enable" value="65145" c:type="GDK_KEY_Overlay2_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_P" value="80" c:type="GDK_KEY_P">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pabovedot" value="16784982" c:type="GDK_KEY_Pabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Page_Down" value="65366" c:type="GDK_KEY_Page_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Page_Up" value="65365" c:type="GDK_KEY_Page_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Paste" value="269025133" c:type="GDK_KEY_Paste">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pause" value="65299" c:type="GDK_KEY_Pause">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_PesetaSign" value="16785575" c:type="GDK_KEY_PesetaSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Phone" value="269025134" c:type="GDK_KEY_Phone">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pictures" value="269025169" c:type="GDK_KEY_Pictures">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Accelerate" value="65274" c:type="GDK_KEY_Pointer_Accelerate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Button1" value="65257" c:type="GDK_KEY_Pointer_Button1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Button2" value="65258" c:type="GDK_KEY_Pointer_Button2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Button3" value="65259" c:type="GDK_KEY_Pointer_Button3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Button4" value="65260" c:type="GDK_KEY_Pointer_Button4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Button5" value="65261" c:type="GDK_KEY_Pointer_Button5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Button_Dflt" value="65256" c:type="GDK_KEY_Pointer_Button_Dflt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DblClick1" value="65263" c:type="GDK_KEY_Pointer_DblClick1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DblClick2" value="65264" c:type="GDK_KEY_Pointer_DblClick2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DblClick3" value="65265" c:type="GDK_KEY_Pointer_DblClick3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DblClick4" value="65266" c:type="GDK_KEY_Pointer_DblClick4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DblClick5" value="65267" c:type="GDK_KEY_Pointer_DblClick5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DblClick_Dflt" value="65262" c:type="GDK_KEY_Pointer_DblClick_Dflt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DfltBtnNext" value="65275" c:type="GDK_KEY_Pointer_DfltBtnNext">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DfltBtnPrev" value="65276" c:type="GDK_KEY_Pointer_DfltBtnPrev">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Down" value="65251" c:type="GDK_KEY_Pointer_Down">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DownLeft" value="65254" c:type="GDK_KEY_Pointer_DownLeft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_DownRight" value="65255" c:type="GDK_KEY_Pointer_DownRight">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Drag1" value="65269" c:type="GDK_KEY_Pointer_Drag1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Drag2" value="65270" c:type="GDK_KEY_Pointer_Drag2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Drag3" value="65271" c:type="GDK_KEY_Pointer_Drag3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Drag4" value="65272" c:type="GDK_KEY_Pointer_Drag4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Drag5" value="65277" c:type="GDK_KEY_Pointer_Drag5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Drag_Dflt" value="65268" c:type="GDK_KEY_Pointer_Drag_Dflt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_EnableKeys" value="65273" c:type="GDK_KEY_Pointer_EnableKeys">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Left" value="65248" c:type="GDK_KEY_Pointer_Left">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Right" value="65249" c:type="GDK_KEY_Pointer_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_Up" value="65250" c:type="GDK_KEY_Pointer_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_UpLeft" value="65252" c:type="GDK_KEY_Pointer_UpLeft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Pointer_UpRight" value="65253" c:type="GDK_KEY_Pointer_UpRight">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_PowerDown" value="269025057" c:type="GDK_KEY_PowerDown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_PowerOff" value="269025066" c:type="GDK_KEY_PowerOff">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Prev_VMode" value="269024803" c:type="GDK_KEY_Prev_VMode">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Prev_Virtual_Screen" value="65233" c:type="GDK_KEY_Prev_Virtual_Screen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_PreviousCandidate" value="65342" c:type="GDK_KEY_PreviousCandidate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Print" value="65377" c:type="GDK_KEY_Print">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Prior" value="65365" c:type="GDK_KEY_Prior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Q" value="81" c:type="GDK_KEY_Q">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R" value="82" c:type="GDK_KEY_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R1" value="65490" c:type="GDK_KEY_R1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R10" value="65499" c:type="GDK_KEY_R10">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R11" value="65500" c:type="GDK_KEY_R11">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R12" value="65501" c:type="GDK_KEY_R12">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R13" value="65502" c:type="GDK_KEY_R13">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R14" value="65503" c:type="GDK_KEY_R14">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R15" value="65504" c:type="GDK_KEY_R15">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R2" value="65491" c:type="GDK_KEY_R2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R3" value="65492" c:type="GDK_KEY_R3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R4" value="65493" c:type="GDK_KEY_R4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R5" value="65494" c:type="GDK_KEY_R5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R6" value="65495" c:type="GDK_KEY_R6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R7" value="65496" c:type="GDK_KEY_R7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R8" value="65497" c:type="GDK_KEY_R8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_R9" value="65498" c:type="GDK_KEY_R9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Racute" value="448" c:type="GDK_KEY_Racute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Rcaron" value="472" c:type="GDK_KEY_Rcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Rcedilla" value="931" c:type="GDK_KEY_Rcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Red" value="269025187" c:type="GDK_KEY_Red">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Redo" value="65382" c:type="GDK_KEY_Redo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Refresh" value="269025065" c:type="GDK_KEY_Refresh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Reload" value="269025139" c:type="GDK_KEY_Reload">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RepeatKeys_Enable" value="65138" c:type="GDK_KEY_RepeatKeys_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Reply" value="269025138" c:type="GDK_KEY_Reply">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Return" value="65293" c:type="GDK_KEY_Return">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Right" value="65363" c:type="GDK_KEY_Right">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RockerDown" value="269025060" c:type="GDK_KEY_RockerDown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RockerEnter" value="269025061" c:type="GDK_KEY_RockerEnter">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RockerUp" value="269025059" c:type="GDK_KEY_RockerUp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Romaji" value="65316" c:type="GDK_KEY_Romaji">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RotateWindows" value="269025140" c:type="GDK_KEY_RotateWindows">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RotationKB" value="269025142" c:type="GDK_KEY_RotationKB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RotationPB" value="269025141" c:type="GDK_KEY_RotationPB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_RupeeSign" value="16785576" c:type="GDK_KEY_RupeeSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_S" value="83" c:type="GDK_KEY_S">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_SCHWA" value="16777615" c:type="GDK_KEY_SCHWA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sabovedot" value="16784992" c:type="GDK_KEY_Sabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sacute" value="422" c:type="GDK_KEY_Sacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Save" value="269025143" c:type="GDK_KEY_Save">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Scaron" value="425" c:type="GDK_KEY_Scaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Scedilla" value="426" c:type="GDK_KEY_Scedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Scircumflex" value="734" c:type="GDK_KEY_Scircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ScreenSaver" value="269025069" c:type="GDK_KEY_ScreenSaver">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ScrollClick" value="269025146" c:type="GDK_KEY_ScrollClick">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ScrollDown" value="269025145" c:type="GDK_KEY_ScrollDown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ScrollUp" value="269025144" c:type="GDK_KEY_ScrollUp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Scroll_Lock" value="65300" c:type="GDK_KEY_Scroll_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Search" value="269025051" c:type="GDK_KEY_Search">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Select" value="65376" c:type="GDK_KEY_Select">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_SelectButton" value="269025184" c:type="GDK_KEY_SelectButton">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Send" value="269025147" c:type="GDK_KEY_Send">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_DJE" value="1713" c:type="GDK_KEY_Serbian_DJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_DZE" value="1727" c:type="GDK_KEY_Serbian_DZE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_JE" value="1720" c:type="GDK_KEY_Serbian_JE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_LJE" value="1721" c:type="GDK_KEY_Serbian_LJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_NJE" value="1722" c:type="GDK_KEY_Serbian_NJE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_TSHE" value="1723" c:type="GDK_KEY_Serbian_TSHE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_dje" value="1697" c:type="GDK_KEY_Serbian_dje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_dze" value="1711" c:type="GDK_KEY_Serbian_dze">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_je" value="1704" c:type="GDK_KEY_Serbian_je">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_lje" value="1705" c:type="GDK_KEY_Serbian_lje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_nje" value="1706" c:type="GDK_KEY_Serbian_nje">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Serbian_tshe" value="1707" c:type="GDK_KEY_Serbian_tshe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Shift_L" value="65505" c:type="GDK_KEY_Shift_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Shift_Lock" value="65510" c:type="GDK_KEY_Shift_Lock">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Shift_R" value="65506" c:type="GDK_KEY_Shift_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Shop" value="269025078" c:type="GDK_KEY_Shop">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_SingleCandidate" value="65340" c:type="GDK_KEY_SingleCandidate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_a" value="16780677" c:type="GDK_KEY_Sinh_a">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_aa" value="16780678" c:type="GDK_KEY_Sinh_aa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_aa2" value="16780751" c:type="GDK_KEY_Sinh_aa2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ae" value="16780679" c:type="GDK_KEY_Sinh_ae">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ae2" value="16780752" c:type="GDK_KEY_Sinh_ae2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_aee" value="16780680" c:type="GDK_KEY_Sinh_aee">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_aee2" value="16780753" c:type="GDK_KEY_Sinh_aee2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ai" value="16780691" c:type="GDK_KEY_Sinh_ai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ai2" value="16780763" c:type="GDK_KEY_Sinh_ai2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_al" value="16780746" c:type="GDK_KEY_Sinh_al">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_au" value="16780694" c:type="GDK_KEY_Sinh_au">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_au2" value="16780766" c:type="GDK_KEY_Sinh_au2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ba" value="16780726" c:type="GDK_KEY_Sinh_ba">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_bha" value="16780727" c:type="GDK_KEY_Sinh_bha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ca" value="16780704" c:type="GDK_KEY_Sinh_ca">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_cha" value="16780705" c:type="GDK_KEY_Sinh_cha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_dda" value="16780713" c:type="GDK_KEY_Sinh_dda">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ddha" value="16780714" c:type="GDK_KEY_Sinh_ddha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_dha" value="16780719" c:type="GDK_KEY_Sinh_dha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_dhha" value="16780720" c:type="GDK_KEY_Sinh_dhha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_e" value="16780689" c:type="GDK_KEY_Sinh_e">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_e2" value="16780761" c:type="GDK_KEY_Sinh_e2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ee" value="16780690" c:type="GDK_KEY_Sinh_ee">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ee2" value="16780762" c:type="GDK_KEY_Sinh_ee2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_fa" value="16780742" c:type="GDK_KEY_Sinh_fa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ga" value="16780700" c:type="GDK_KEY_Sinh_ga">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_gha" value="16780701" c:type="GDK_KEY_Sinh_gha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_h2" value="16780675" c:type="GDK_KEY_Sinh_h2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ha" value="16780740" c:type="GDK_KEY_Sinh_ha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_i" value="16780681" c:type="GDK_KEY_Sinh_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_i2" value="16780754" c:type="GDK_KEY_Sinh_i2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ii" value="16780682" c:type="GDK_KEY_Sinh_ii">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ii2" value="16780755" c:type="GDK_KEY_Sinh_ii2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ja" value="16780706" c:type="GDK_KEY_Sinh_ja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_jha" value="16780707" c:type="GDK_KEY_Sinh_jha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_jnya" value="16780709" c:type="GDK_KEY_Sinh_jnya">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ka" value="16780698" c:type="GDK_KEY_Sinh_ka">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_kha" value="16780699" c:type="GDK_KEY_Sinh_kha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_kunddaliya" value="16780788" c:type="GDK_KEY_Sinh_kunddaliya">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_la" value="16780733" c:type="GDK_KEY_Sinh_la">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_lla" value="16780741" c:type="GDK_KEY_Sinh_lla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_lu" value="16780687" c:type="GDK_KEY_Sinh_lu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_lu2" value="16780767" c:type="GDK_KEY_Sinh_lu2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_luu" value="16780688" c:type="GDK_KEY_Sinh_luu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_luu2" value="16780787" c:type="GDK_KEY_Sinh_luu2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ma" value="16780728" c:type="GDK_KEY_Sinh_ma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_mba" value="16780729" c:type="GDK_KEY_Sinh_mba">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_na" value="16780721" c:type="GDK_KEY_Sinh_na">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ndda" value="16780716" c:type="GDK_KEY_Sinh_ndda">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ndha" value="16780723" c:type="GDK_KEY_Sinh_ndha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ng" value="16780674" c:type="GDK_KEY_Sinh_ng">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ng2" value="16780702" c:type="GDK_KEY_Sinh_ng2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_nga" value="16780703" c:type="GDK_KEY_Sinh_nga">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_nja" value="16780710" c:type="GDK_KEY_Sinh_nja">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_nna" value="16780715" c:type="GDK_KEY_Sinh_nna">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_nya" value="16780708" c:type="GDK_KEY_Sinh_nya">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_o" value="16780692" c:type="GDK_KEY_Sinh_o">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_o2" value="16780764" c:type="GDK_KEY_Sinh_o2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_oo" value="16780693" c:type="GDK_KEY_Sinh_oo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_oo2" value="16780765" c:type="GDK_KEY_Sinh_oo2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_pa" value="16780724" c:type="GDK_KEY_Sinh_pa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_pha" value="16780725" c:type="GDK_KEY_Sinh_pha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ra" value="16780731" c:type="GDK_KEY_Sinh_ra">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ri" value="16780685" c:type="GDK_KEY_Sinh_ri">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_rii" value="16780686" c:type="GDK_KEY_Sinh_rii">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ru2" value="16780760" c:type="GDK_KEY_Sinh_ru2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ruu2" value="16780786" c:type="GDK_KEY_Sinh_ruu2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_sa" value="16780739" c:type="GDK_KEY_Sinh_sa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_sha" value="16780737" c:type="GDK_KEY_Sinh_sha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ssha" value="16780738" c:type="GDK_KEY_Sinh_ssha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_tha" value="16780717" c:type="GDK_KEY_Sinh_tha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_thha" value="16780718" c:type="GDK_KEY_Sinh_thha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_tta" value="16780711" c:type="GDK_KEY_Sinh_tta">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ttha" value="16780712" c:type="GDK_KEY_Sinh_ttha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_u" value="16780683" c:type="GDK_KEY_Sinh_u">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_u2" value="16780756" c:type="GDK_KEY_Sinh_u2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_uu" value="16780684" c:type="GDK_KEY_Sinh_uu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_uu2" value="16780758" c:type="GDK_KEY_Sinh_uu2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_va" value="16780736" c:type="GDK_KEY_Sinh_va">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sinh_ya" value="16780730" c:type="GDK_KEY_Sinh_ya">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sleep" value="269025071" c:type="GDK_KEY_Sleep">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_SlowKeys_Enable" value="65139" c:type="GDK_KEY_SlowKeys_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Spell" value="269025148" c:type="GDK_KEY_Spell">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_SplitScreen" value="269025149" c:type="GDK_KEY_SplitScreen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Standby" value="269025040" c:type="GDK_KEY_Standby">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Start" value="269025050" c:type="GDK_KEY_Start">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_StickyKeys_Enable" value="65141" c:type="GDK_KEY_StickyKeys_Enable">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Stop" value="269025064" c:type="GDK_KEY_Stop">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Subtitle" value="269025178" c:type="GDK_KEY_Subtitle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Super_L" value="65515" c:type="GDK_KEY_Super_L">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Super_R" value="65516" c:type="GDK_KEY_Super_R">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Support" value="269025150" c:type="GDK_KEY_Support">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Suspend" value="269025191" c:type="GDK_KEY_Suspend">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_1" value="269024769" c:type="GDK_KEY_Switch_VT_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_10" value="269024778" c:type="GDK_KEY_Switch_VT_10">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_11" value="269024779" c:type="GDK_KEY_Switch_VT_11">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_12" value="269024780" c:type="GDK_KEY_Switch_VT_12">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_2" value="269024770" c:type="GDK_KEY_Switch_VT_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_3" value="269024771" c:type="GDK_KEY_Switch_VT_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_4" value="269024772" c:type="GDK_KEY_Switch_VT_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_5" value="269024773" c:type="GDK_KEY_Switch_VT_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_6" value="269024774" c:type="GDK_KEY_Switch_VT_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_7" value="269024775" c:type="GDK_KEY_Switch_VT_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_8" value="269024776" c:type="GDK_KEY_Switch_VT_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Switch_VT_9" value="269024777" c:type="GDK_KEY_Switch_VT_9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Sys_Req" value="65301" c:type="GDK_KEY_Sys_Req">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_T" value="84" c:type="GDK_KEY_T">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_THORN" value="222" c:type="GDK_KEY_THORN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Tab" value="65289" c:type="GDK_KEY_Tab">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Tabovedot" value="16785002" c:type="GDK_KEY_Tabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_TaskPane" value="269025151" c:type="GDK_KEY_TaskPane">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Tcaron" value="427" c:type="GDK_KEY_Tcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Tcedilla" value="478" c:type="GDK_KEY_Tcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Terminal" value="269025152" c:type="GDK_KEY_Terminal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Terminate_Server" value="65237" c:type="GDK_KEY_Terminate_Server">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_baht" value="3551" c:type="GDK_KEY_Thai_baht">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_bobaimai" value="3514" c:type="GDK_KEY_Thai_bobaimai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_chochan" value="3496" c:type="GDK_KEY_Thai_chochan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_chochang" value="3498" c:type="GDK_KEY_Thai_chochang">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_choching" value="3497" c:type="GDK_KEY_Thai_choching">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_chochoe" value="3500" c:type="GDK_KEY_Thai_chochoe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_dochada" value="3502" c:type="GDK_KEY_Thai_dochada">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_dodek" value="3508" c:type="GDK_KEY_Thai_dodek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_fofa" value="3517" c:type="GDK_KEY_Thai_fofa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_fofan" value="3519" c:type="GDK_KEY_Thai_fofan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_hohip" value="3531" c:type="GDK_KEY_Thai_hohip">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_honokhuk" value="3534" c:type="GDK_KEY_Thai_honokhuk">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_khokhai" value="3490" c:type="GDK_KEY_Thai_khokhai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_khokhon" value="3493" c:type="GDK_KEY_Thai_khokhon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_khokhuat" value="3491" c:type="GDK_KEY_Thai_khokhuat">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_khokhwai" value="3492" c:type="GDK_KEY_Thai_khokhwai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_khorakhang" value="3494" c:type="GDK_KEY_Thai_khorakhang">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_kokai" value="3489" c:type="GDK_KEY_Thai_kokai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lakkhangyao" value="3557" c:type="GDK_KEY_Thai_lakkhangyao">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lekchet" value="3575" c:type="GDK_KEY_Thai_lekchet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lekha" value="3573" c:type="GDK_KEY_Thai_lekha">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lekhok" value="3574" c:type="GDK_KEY_Thai_lekhok">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lekkao" value="3577" c:type="GDK_KEY_Thai_lekkao">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_leknung" value="3569" c:type="GDK_KEY_Thai_leknung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lekpaet" value="3576" c:type="GDK_KEY_Thai_lekpaet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_leksam" value="3571" c:type="GDK_KEY_Thai_leksam">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_leksi" value="3572" c:type="GDK_KEY_Thai_leksi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_leksong" value="3570" c:type="GDK_KEY_Thai_leksong">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_leksun" value="3568" c:type="GDK_KEY_Thai_leksun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lochula" value="3532" c:type="GDK_KEY_Thai_lochula">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_loling" value="3525" c:type="GDK_KEY_Thai_loling">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_lu" value="3526" c:type="GDK_KEY_Thai_lu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maichattawa" value="3563" c:type="GDK_KEY_Thai_maichattawa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maiek" value="3560" c:type="GDK_KEY_Thai_maiek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maihanakat" value="3537" c:type="GDK_KEY_Thai_maihanakat">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maihanakat_maitho" value="3550" c:type="GDK_KEY_Thai_maihanakat_maitho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maitaikhu" value="3559" c:type="GDK_KEY_Thai_maitaikhu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maitho" value="3561" c:type="GDK_KEY_Thai_maitho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maitri" value="3562" c:type="GDK_KEY_Thai_maitri">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_maiyamok" value="3558" c:type="GDK_KEY_Thai_maiyamok">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_moma" value="3521" c:type="GDK_KEY_Thai_moma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_ngongu" value="3495" c:type="GDK_KEY_Thai_ngongu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_nikhahit" value="3565" c:type="GDK_KEY_Thai_nikhahit">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_nonen" value="3507" c:type="GDK_KEY_Thai_nonen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_nonu" value="3513" c:type="GDK_KEY_Thai_nonu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_oang" value="3533" c:type="GDK_KEY_Thai_oang">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_paiyannoi" value="3535" c:type="GDK_KEY_Thai_paiyannoi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_phinthu" value="3546" c:type="GDK_KEY_Thai_phinthu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_phophan" value="3518" c:type="GDK_KEY_Thai_phophan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_phophung" value="3516" c:type="GDK_KEY_Thai_phophung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_phosamphao" value="3520" c:type="GDK_KEY_Thai_phosamphao">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_popla" value="3515" c:type="GDK_KEY_Thai_popla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_rorua" value="3523" c:type="GDK_KEY_Thai_rorua">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_ru" value="3524" c:type="GDK_KEY_Thai_ru">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraa" value="3536" c:type="GDK_KEY_Thai_saraa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraaa" value="3538" c:type="GDK_KEY_Thai_saraaa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraae" value="3553" c:type="GDK_KEY_Thai_saraae">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraaimaimalai" value="3556" c:type="GDK_KEY_Thai_saraaimaimalai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraaimaimuan" value="3555" c:type="GDK_KEY_Thai_saraaimaimuan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraam" value="3539" c:type="GDK_KEY_Thai_saraam">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sarae" value="3552" c:type="GDK_KEY_Thai_sarae">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sarai" value="3540" c:type="GDK_KEY_Thai_sarai">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraii" value="3541" c:type="GDK_KEY_Thai_saraii">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sarao" value="3554" c:type="GDK_KEY_Thai_sarao">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sarau" value="3544" c:type="GDK_KEY_Thai_sarau">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_saraue" value="3542" c:type="GDK_KEY_Thai_saraue">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sarauee" value="3543" c:type="GDK_KEY_Thai_sarauee">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sarauu" value="3545" c:type="GDK_KEY_Thai_sarauu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sorusi" value="3529" c:type="GDK_KEY_Thai_sorusi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sosala" value="3528" c:type="GDK_KEY_Thai_sosala">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_soso" value="3499" c:type="GDK_KEY_Thai_soso">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_sosua" value="3530" c:type="GDK_KEY_Thai_sosua">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thanthakhat" value="3564" c:type="GDK_KEY_Thai_thanthakhat">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thonangmontho" value="3505" c:type="GDK_KEY_Thai_thonangmontho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thophuthao" value="3506" c:type="GDK_KEY_Thai_thophuthao">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thothahan" value="3511" c:type="GDK_KEY_Thai_thothahan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thothan" value="3504" c:type="GDK_KEY_Thai_thothan">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thothong" value="3512" c:type="GDK_KEY_Thai_thothong">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_thothung" value="3510" c:type="GDK_KEY_Thai_thothung">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_topatak" value="3503" c:type="GDK_KEY_Thai_topatak">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_totao" value="3509" c:type="GDK_KEY_Thai_totao">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_wowaen" value="3527" c:type="GDK_KEY_Thai_wowaen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_yoyak" value="3522" c:type="GDK_KEY_Thai_yoyak">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thai_yoying" value="3501" c:type="GDK_KEY_Thai_yoying">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Thorn" value="222" c:type="GDK_KEY_Thorn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Time" value="269025183" c:type="GDK_KEY_Time">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ToDoList" value="269025055" c:type="GDK_KEY_ToDoList">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Tools" value="269025153" c:type="GDK_KEY_Tools">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_TopMenu" value="269025186" c:type="GDK_KEY_TopMenu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_TouchpadOff" value="269025201" c:type="GDK_KEY_TouchpadOff">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_TouchpadOn" value="269025200" c:type="GDK_KEY_TouchpadOn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_TouchpadToggle" value="269025193" c:type="GDK_KEY_TouchpadToggle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Touroku" value="65323" c:type="GDK_KEY_Touroku">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Travel" value="269025154" c:type="GDK_KEY_Travel">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Tslash" value="940" c:type="GDK_KEY_Tslash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_U" value="85" c:type="GDK_KEY_U">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_UWB" value="269025174" c:type="GDK_KEY_UWB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uacute" value="218" c:type="GDK_KEY_Uacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ubelowdot" value="16785124" c:type="GDK_KEY_Ubelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ubreve" value="733" c:type="GDK_KEY_Ubreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ucircumflex" value="219" c:type="GDK_KEY_Ucircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Udiaeresis" value="220" c:type="GDK_KEY_Udiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Udoubleacute" value="475" c:type="GDK_KEY_Udoubleacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ugrave" value="217" c:type="GDK_KEY_Ugrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhook" value="16785126" c:type="GDK_KEY_Uhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhorn" value="16777647" c:type="GDK_KEY_Uhorn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhornacute" value="16785128" c:type="GDK_KEY_Uhornacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhornbelowdot" value="16785136" c:type="GDK_KEY_Uhornbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhorngrave" value="16785130" c:type="GDK_KEY_Uhorngrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhornhook" value="16785132" c:type="GDK_KEY_Uhornhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uhorntilde" value="16785134" c:type="GDK_KEY_Uhorntilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_GHE_WITH_UPTURN" value="1725" c:type="GDK_KEY_Ukrainian_GHE_WITH_UPTURN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_I" value="1718" c:type="GDK_KEY_Ukrainian_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_IE" value="1716" c:type="GDK_KEY_Ukrainian_IE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_YI" value="1719" c:type="GDK_KEY_Ukrainian_YI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_ghe_with_upturn" value="1709" c:type="GDK_KEY_Ukrainian_ghe_with_upturn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_i" value="1702" c:type="GDK_KEY_Ukrainian_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_ie" value="1700" c:type="GDK_KEY_Ukrainian_ie">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukrainian_yi" value="1703" c:type="GDK_KEY_Ukrainian_yi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukranian_I" value="1718" c:type="GDK_KEY_Ukranian_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukranian_JE" value="1716" c:type="GDK_KEY_Ukranian_JE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukranian_YI" value="1719" c:type="GDK_KEY_Ukranian_YI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukranian_i" value="1702" c:type="GDK_KEY_Ukranian_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukranian_je" value="1700" c:type="GDK_KEY_Ukranian_je">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ukranian_yi" value="1703" c:type="GDK_KEY_Ukranian_yi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Umacron" value="990" c:type="GDK_KEY_Umacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Undo" value="65381" c:type="GDK_KEY_Undo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ungrab" value="269024800" c:type="GDK_KEY_Ungrab">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uogonek" value="985" c:type="GDK_KEY_Uogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Up" value="65362" c:type="GDK_KEY_Up">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Uring" value="473" c:type="GDK_KEY_Uring">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_User1KB" value="269025157" c:type="GDK_KEY_User1KB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_User2KB" value="269025158" c:type="GDK_KEY_User2KB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_UserPB" value="269025156" c:type="GDK_KEY_UserPB">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Utilde" value="989" c:type="GDK_KEY_Utilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_V" value="86" c:type="GDK_KEY_V">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_VendorHome" value="269025076" c:type="GDK_KEY_VendorHome">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Video" value="269025159" c:type="GDK_KEY_Video">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_View" value="269025185" c:type="GDK_KEY_View">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_VoidSymbol" value="16777215" c:type="GDK_KEY_VoidSymbol">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_W" value="87" c:type="GDK_KEY_W">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WLAN" value="269025173" c:type="GDK_KEY_WLAN">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WWW" value="269025070" c:type="GDK_KEY_WWW">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Wacute" value="16785026" c:type="GDK_KEY_Wacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WakeUp" value="269025067" c:type="GDK_KEY_WakeUp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Wcircumflex" value="16777588" c:type="GDK_KEY_Wcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Wdiaeresis" value="16785028" c:type="GDK_KEY_Wdiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WebCam" value="269025167" c:type="GDK_KEY_WebCam">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Wgrave" value="16785024" c:type="GDK_KEY_Wgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WheelButton" value="269025160" c:type="GDK_KEY_WheelButton">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WindowClear" value="269025109" c:type="GDK_KEY_WindowClear">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_WonSign" value="16785577" c:type="GDK_KEY_WonSign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Word" value="269025161" c:type="GDK_KEY_Word">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_X" value="88" c:type="GDK_KEY_X">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Xabovedot" value="16785034" c:type="GDK_KEY_Xabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Xfer" value="269025162" c:type="GDK_KEY_Xfer">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Y" value="89" c:type="GDK_KEY_Y">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Yacute" value="221" c:type="GDK_KEY_Yacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ybelowdot" value="16785140" c:type="GDK_KEY_Ybelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ycircumflex" value="16777590" c:type="GDK_KEY_Ycircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ydiaeresis" value="5054" c:type="GDK_KEY_Ydiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Yellow" value="269025189" c:type="GDK_KEY_Yellow">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ygrave" value="16785138" c:type="GDK_KEY_Ygrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Yhook" value="16785142" c:type="GDK_KEY_Yhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Ytilde" value="16785144" c:type="GDK_KEY_Ytilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Z" value="90" c:type="GDK_KEY_Z">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zabovedot" value="431" c:type="GDK_KEY_Zabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zacute" value="428" c:type="GDK_KEY_Zacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zcaron" value="430" c:type="GDK_KEY_Zcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zen_Koho" value="65341" c:type="GDK_KEY_Zen_Koho">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zenkaku" value="65320" c:type="GDK_KEY_Zenkaku">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zenkaku_Hankaku" value="65322" c:type="GDK_KEY_Zenkaku_Hankaku">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ZoomIn" value="269025163" c:type="GDK_KEY_ZoomIn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ZoomOut" value="269025164" c:type="GDK_KEY_ZoomOut">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_Zstroke" value="16777653" c:type="GDK_KEY_Zstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_a" value="97" c:type="GDK_KEY_a">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_aacute" value="225" c:type="GDK_KEY_aacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abelowdot" value="16785057" c:type="GDK_KEY_abelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abovedot" value="511" c:type="GDK_KEY_abovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abreve" value="483" c:type="GDK_KEY_abreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abreveacute" value="16785071" c:type="GDK_KEY_abreveacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abrevebelowdot" value="16785079" c:type="GDK_KEY_abrevebelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abrevegrave" value="16785073" c:type="GDK_KEY_abrevegrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abrevehook" value="16785075" c:type="GDK_KEY_abrevehook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_abrevetilde" value="16785077" c:type="GDK_KEY_abrevetilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acircumflex" value="226" c:type="GDK_KEY_acircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acircumflexacute" value="16785061" c:type="GDK_KEY_acircumflexacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acircumflexbelowdot" value="16785069" c:type="GDK_KEY_acircumflexbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acircumflexgrave" value="16785063" c:type="GDK_KEY_acircumflexgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acircumflexhook" value="16785065" c:type="GDK_KEY_acircumflexhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acircumflextilde" value="16785067" c:type="GDK_KEY_acircumflextilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_acute" value="180" c:type="GDK_KEY_acute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_adiaeresis" value="228" c:type="GDK_KEY_adiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ae" value="230" c:type="GDK_KEY_ae">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_agrave" value="224" c:type="GDK_KEY_agrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ahook" value="16785059" c:type="GDK_KEY_ahook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_amacron" value="992" c:type="GDK_KEY_amacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ampersand" value="38" c:type="GDK_KEY_ampersand">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_aogonek" value="433" c:type="GDK_KEY_aogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_apostrophe" value="39" c:type="GDK_KEY_apostrophe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_approxeq" value="16785992" c:type="GDK_KEY_approxeq">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_approximate" value="2248" c:type="GDK_KEY_approximate">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_aring" value="229" c:type="GDK_KEY_aring">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_asciicircum" value="94" c:type="GDK_KEY_asciicircum">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_asciitilde" value="126" c:type="GDK_KEY_asciitilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_asterisk" value="42" c:type="GDK_KEY_asterisk">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_at" value="64" c:type="GDK_KEY_at">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_atilde" value="227" c:type="GDK_KEY_atilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_b" value="98" c:type="GDK_KEY_b">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_babovedot" value="16784899" c:type="GDK_KEY_babovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_backslash" value="92" c:type="GDK_KEY_backslash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ballotcross" value="2804" c:type="GDK_KEY_ballotcross">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_bar" value="124" c:type="GDK_KEY_bar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_because" value="16785973" c:type="GDK_KEY_because">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_blank" value="2527" c:type="GDK_KEY_blank">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botintegral" value="2213" c:type="GDK_KEY_botintegral">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botleftparens" value="2220" c:type="GDK_KEY_botleftparens">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botleftsqbracket" value="2216" c:type="GDK_KEY_botleftsqbracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botleftsummation" value="2226" c:type="GDK_KEY_botleftsummation">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botrightparens" value="2222" c:type="GDK_KEY_botrightparens">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botrightsqbracket" value="2218" c:type="GDK_KEY_botrightsqbracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botrightsummation" value="2230" c:type="GDK_KEY_botrightsummation">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_bott" value="2550" c:type="GDK_KEY_bott">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_botvertsummationconnector" value="2228" c:type="GDK_KEY_botvertsummationconnector">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braceleft" value="123" c:type="GDK_KEY_braceleft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braceright" value="125" c:type="GDK_KEY_braceright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_bracketleft" value="91" c:type="GDK_KEY_bracketleft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_bracketright" value="93" c:type="GDK_KEY_bracketright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_blank" value="16787456" c:type="GDK_KEY_braille_blank">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_1" value="65521" c:type="GDK_KEY_braille_dot_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_10" value="65530" c:type="GDK_KEY_braille_dot_10">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_2" value="65522" c:type="GDK_KEY_braille_dot_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_3" value="65523" c:type="GDK_KEY_braille_dot_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_4" value="65524" c:type="GDK_KEY_braille_dot_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_5" value="65525" c:type="GDK_KEY_braille_dot_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_6" value="65526" c:type="GDK_KEY_braille_dot_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_7" value="65527" c:type="GDK_KEY_braille_dot_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_8" value="65528" c:type="GDK_KEY_braille_dot_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dot_9" value="65529" c:type="GDK_KEY_braille_dot_9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1" value="16787457" c:type="GDK_KEY_braille_dots_1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12" value="16787459" c:type="GDK_KEY_braille_dots_12">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123" value="16787463" c:type="GDK_KEY_braille_dots_123">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1234" value="16787471" c:type="GDK_KEY_braille_dots_1234">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12345" value="16787487" c:type="GDK_KEY_braille_dots_12345">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123456" value="16787519" c:type="GDK_KEY_braille_dots_123456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1234567" value="16787583" c:type="GDK_KEY_braille_dots_1234567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12345678" value="16787711" c:type="GDK_KEY_braille_dots_12345678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1234568" value="16787647" c:type="GDK_KEY_braille_dots_1234568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123457" value="16787551" c:type="GDK_KEY_braille_dots_123457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1234578" value="16787679" c:type="GDK_KEY_braille_dots_1234578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123458" value="16787615" c:type="GDK_KEY_braille_dots_123458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12346" value="16787503" c:type="GDK_KEY_braille_dots_12346">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123467" value="16787567" c:type="GDK_KEY_braille_dots_123467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1234678" value="16787695" c:type="GDK_KEY_braille_dots_1234678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123468" value="16787631" c:type="GDK_KEY_braille_dots_123468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12347" value="16787535" c:type="GDK_KEY_braille_dots_12347">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123478" value="16787663" c:type="GDK_KEY_braille_dots_123478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12348" value="16787599" c:type="GDK_KEY_braille_dots_12348">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1235" value="16787479" c:type="GDK_KEY_braille_dots_1235">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12356" value="16787511" c:type="GDK_KEY_braille_dots_12356">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123567" value="16787575" c:type="GDK_KEY_braille_dots_123567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1235678" value="16787703" c:type="GDK_KEY_braille_dots_1235678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123568" value="16787639" c:type="GDK_KEY_braille_dots_123568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12357" value="16787543" c:type="GDK_KEY_braille_dots_12357">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123578" value="16787671" c:type="GDK_KEY_braille_dots_123578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12358" value="16787607" c:type="GDK_KEY_braille_dots_12358">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1236" value="16787495" c:type="GDK_KEY_braille_dots_1236">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12367" value="16787559" c:type="GDK_KEY_braille_dots_12367">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_123678" value="16787687" c:type="GDK_KEY_braille_dots_123678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12368" value="16787623" c:type="GDK_KEY_braille_dots_12368">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1237" value="16787527" c:type="GDK_KEY_braille_dots_1237">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12378" value="16787655" c:type="GDK_KEY_braille_dots_12378">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1238" value="16787591" c:type="GDK_KEY_braille_dots_1238">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_124" value="16787467" c:type="GDK_KEY_braille_dots_124">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1245" value="16787483" c:type="GDK_KEY_braille_dots_1245">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12456" value="16787515" c:type="GDK_KEY_braille_dots_12456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_124567" value="16787579" c:type="GDK_KEY_braille_dots_124567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1245678" value="16787707" c:type="GDK_KEY_braille_dots_1245678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_124568" value="16787643" c:type="GDK_KEY_braille_dots_124568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12457" value="16787547" c:type="GDK_KEY_braille_dots_12457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_124578" value="16787675" c:type="GDK_KEY_braille_dots_124578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12458" value="16787611" c:type="GDK_KEY_braille_dots_12458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1246" value="16787499" c:type="GDK_KEY_braille_dots_1246">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12467" value="16787563" c:type="GDK_KEY_braille_dots_12467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_124678" value="16787691" c:type="GDK_KEY_braille_dots_124678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12468" value="16787627" c:type="GDK_KEY_braille_dots_12468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1247" value="16787531" c:type="GDK_KEY_braille_dots_1247">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12478" value="16787659" c:type="GDK_KEY_braille_dots_12478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1248" value="16787595" c:type="GDK_KEY_braille_dots_1248">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_125" value="16787475" c:type="GDK_KEY_braille_dots_125">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1256" value="16787507" c:type="GDK_KEY_braille_dots_1256">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12567" value="16787571" c:type="GDK_KEY_braille_dots_12567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_125678" value="16787699" c:type="GDK_KEY_braille_dots_125678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12568" value="16787635" c:type="GDK_KEY_braille_dots_12568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1257" value="16787539" c:type="GDK_KEY_braille_dots_1257">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12578" value="16787667" c:type="GDK_KEY_braille_dots_12578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1258" value="16787603" c:type="GDK_KEY_braille_dots_1258">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_126" value="16787491" c:type="GDK_KEY_braille_dots_126">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1267" value="16787555" c:type="GDK_KEY_braille_dots_1267">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_12678" value="16787683" c:type="GDK_KEY_braille_dots_12678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1268" value="16787619" c:type="GDK_KEY_braille_dots_1268">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_127" value="16787523" c:type="GDK_KEY_braille_dots_127">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1278" value="16787651" c:type="GDK_KEY_braille_dots_1278">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_128" value="16787587" c:type="GDK_KEY_braille_dots_128">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13" value="16787461" c:type="GDK_KEY_braille_dots_13">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_134" value="16787469" c:type="GDK_KEY_braille_dots_134">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1345" value="16787485" c:type="GDK_KEY_braille_dots_1345">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13456" value="16787517" c:type="GDK_KEY_braille_dots_13456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_134567" value="16787581" c:type="GDK_KEY_braille_dots_134567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1345678" value="16787709" c:type="GDK_KEY_braille_dots_1345678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_134568" value="16787645" c:type="GDK_KEY_braille_dots_134568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13457" value="16787549" c:type="GDK_KEY_braille_dots_13457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_134578" value="16787677" c:type="GDK_KEY_braille_dots_134578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13458" value="16787613" c:type="GDK_KEY_braille_dots_13458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1346" value="16787501" c:type="GDK_KEY_braille_dots_1346">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13467" value="16787565" c:type="GDK_KEY_braille_dots_13467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_134678" value="16787693" c:type="GDK_KEY_braille_dots_134678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13468" value="16787629" c:type="GDK_KEY_braille_dots_13468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1347" value="16787533" c:type="GDK_KEY_braille_dots_1347">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13478" value="16787661" c:type="GDK_KEY_braille_dots_13478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1348" value="16787597" c:type="GDK_KEY_braille_dots_1348">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_135" value="16787477" c:type="GDK_KEY_braille_dots_135">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1356" value="16787509" c:type="GDK_KEY_braille_dots_1356">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13567" value="16787573" c:type="GDK_KEY_braille_dots_13567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_135678" value="16787701" c:type="GDK_KEY_braille_dots_135678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13568" value="16787637" c:type="GDK_KEY_braille_dots_13568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1357" value="16787541" c:type="GDK_KEY_braille_dots_1357">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13578" value="16787669" c:type="GDK_KEY_braille_dots_13578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1358" value="16787605" c:type="GDK_KEY_braille_dots_1358">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_136" value="16787493" c:type="GDK_KEY_braille_dots_136">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1367" value="16787557" c:type="GDK_KEY_braille_dots_1367">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_13678" value="16787685" c:type="GDK_KEY_braille_dots_13678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1368" value="16787621" c:type="GDK_KEY_braille_dots_1368">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_137" value="16787525" c:type="GDK_KEY_braille_dots_137">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1378" value="16787653" c:type="GDK_KEY_braille_dots_1378">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_138" value="16787589" c:type="GDK_KEY_braille_dots_138">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_14" value="16787465" c:type="GDK_KEY_braille_dots_14">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_145" value="16787481" c:type="GDK_KEY_braille_dots_145">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1456" value="16787513" c:type="GDK_KEY_braille_dots_1456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_14567" value="16787577" c:type="GDK_KEY_braille_dots_14567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_145678" value="16787705" c:type="GDK_KEY_braille_dots_145678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_14568" value="16787641" c:type="GDK_KEY_braille_dots_14568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1457" value="16787545" c:type="GDK_KEY_braille_dots_1457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_14578" value="16787673" c:type="GDK_KEY_braille_dots_14578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1458" value="16787609" c:type="GDK_KEY_braille_dots_1458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_146" value="16787497" c:type="GDK_KEY_braille_dots_146">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1467" value="16787561" c:type="GDK_KEY_braille_dots_1467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_14678" value="16787689" c:type="GDK_KEY_braille_dots_14678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1468" value="16787625" c:type="GDK_KEY_braille_dots_1468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_147" value="16787529" c:type="GDK_KEY_braille_dots_147">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1478" value="16787657" c:type="GDK_KEY_braille_dots_1478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_148" value="16787593" c:type="GDK_KEY_braille_dots_148">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_15" value="16787473" c:type="GDK_KEY_braille_dots_15">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_156" value="16787505" c:type="GDK_KEY_braille_dots_156">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1567" value="16787569" c:type="GDK_KEY_braille_dots_1567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_15678" value="16787697" c:type="GDK_KEY_braille_dots_15678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1568" value="16787633" c:type="GDK_KEY_braille_dots_1568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_157" value="16787537" c:type="GDK_KEY_braille_dots_157">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1578" value="16787665" c:type="GDK_KEY_braille_dots_1578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_158" value="16787601" c:type="GDK_KEY_braille_dots_158">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_16" value="16787489" c:type="GDK_KEY_braille_dots_16">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_167" value="16787553" c:type="GDK_KEY_braille_dots_167">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_1678" value="16787681" c:type="GDK_KEY_braille_dots_1678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_168" value="16787617" c:type="GDK_KEY_braille_dots_168">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_17" value="16787521" c:type="GDK_KEY_braille_dots_17">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_178" value="16787649" c:type="GDK_KEY_braille_dots_178">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_18" value="16787585" c:type="GDK_KEY_braille_dots_18">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2" value="16787458" c:type="GDK_KEY_braille_dots_2">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23" value="16787462" c:type="GDK_KEY_braille_dots_23">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_234" value="16787470" c:type="GDK_KEY_braille_dots_234">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2345" value="16787486" c:type="GDK_KEY_braille_dots_2345">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23456" value="16787518" c:type="GDK_KEY_braille_dots_23456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_234567" value="16787582" c:type="GDK_KEY_braille_dots_234567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2345678" value="16787710" c:type="GDK_KEY_braille_dots_2345678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_234568" value="16787646" c:type="GDK_KEY_braille_dots_234568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23457" value="16787550" c:type="GDK_KEY_braille_dots_23457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_234578" value="16787678" c:type="GDK_KEY_braille_dots_234578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23458" value="16787614" c:type="GDK_KEY_braille_dots_23458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2346" value="16787502" c:type="GDK_KEY_braille_dots_2346">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23467" value="16787566" c:type="GDK_KEY_braille_dots_23467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_234678" value="16787694" c:type="GDK_KEY_braille_dots_234678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23468" value="16787630" c:type="GDK_KEY_braille_dots_23468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2347" value="16787534" c:type="GDK_KEY_braille_dots_2347">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23478" value="16787662" c:type="GDK_KEY_braille_dots_23478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2348" value="16787598" c:type="GDK_KEY_braille_dots_2348">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_235" value="16787478" c:type="GDK_KEY_braille_dots_235">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2356" value="16787510" c:type="GDK_KEY_braille_dots_2356">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23567" value="16787574" c:type="GDK_KEY_braille_dots_23567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_235678" value="16787702" c:type="GDK_KEY_braille_dots_235678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23568" value="16787638" c:type="GDK_KEY_braille_dots_23568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2357" value="16787542" c:type="GDK_KEY_braille_dots_2357">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23578" value="16787670" c:type="GDK_KEY_braille_dots_23578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2358" value="16787606" c:type="GDK_KEY_braille_dots_2358">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_236" value="16787494" c:type="GDK_KEY_braille_dots_236">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2367" value="16787558" c:type="GDK_KEY_braille_dots_2367">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_23678" value="16787686" c:type="GDK_KEY_braille_dots_23678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2368" value="16787622" c:type="GDK_KEY_braille_dots_2368">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_237" value="16787526" c:type="GDK_KEY_braille_dots_237">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2378" value="16787654" c:type="GDK_KEY_braille_dots_2378">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_238" value="16787590" c:type="GDK_KEY_braille_dots_238">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_24" value="16787466" c:type="GDK_KEY_braille_dots_24">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_245" value="16787482" c:type="GDK_KEY_braille_dots_245">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2456" value="16787514" c:type="GDK_KEY_braille_dots_2456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_24567" value="16787578" c:type="GDK_KEY_braille_dots_24567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_245678" value="16787706" c:type="GDK_KEY_braille_dots_245678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_24568" value="16787642" c:type="GDK_KEY_braille_dots_24568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2457" value="16787546" c:type="GDK_KEY_braille_dots_2457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_24578" value="16787674" c:type="GDK_KEY_braille_dots_24578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2458" value="16787610" c:type="GDK_KEY_braille_dots_2458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_246" value="16787498" c:type="GDK_KEY_braille_dots_246">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2467" value="16787562" c:type="GDK_KEY_braille_dots_2467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_24678" value="16787690" c:type="GDK_KEY_braille_dots_24678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2468" value="16787626" c:type="GDK_KEY_braille_dots_2468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_247" value="16787530" c:type="GDK_KEY_braille_dots_247">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2478" value="16787658" c:type="GDK_KEY_braille_dots_2478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_248" value="16787594" c:type="GDK_KEY_braille_dots_248">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_25" value="16787474" c:type="GDK_KEY_braille_dots_25">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_256" value="16787506" c:type="GDK_KEY_braille_dots_256">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2567" value="16787570" c:type="GDK_KEY_braille_dots_2567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_25678" value="16787698" c:type="GDK_KEY_braille_dots_25678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2568" value="16787634" c:type="GDK_KEY_braille_dots_2568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_257" value="16787538" c:type="GDK_KEY_braille_dots_257">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2578" value="16787666" c:type="GDK_KEY_braille_dots_2578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_258" value="16787602" c:type="GDK_KEY_braille_dots_258">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_26" value="16787490" c:type="GDK_KEY_braille_dots_26">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_267" value="16787554" c:type="GDK_KEY_braille_dots_267">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_2678" value="16787682" c:type="GDK_KEY_braille_dots_2678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_268" value="16787618" c:type="GDK_KEY_braille_dots_268">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_27" value="16787522" c:type="GDK_KEY_braille_dots_27">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_278" value="16787650" c:type="GDK_KEY_braille_dots_278">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_28" value="16787586" c:type="GDK_KEY_braille_dots_28">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3" value="16787460" c:type="GDK_KEY_braille_dots_3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_34" value="16787468" c:type="GDK_KEY_braille_dots_34">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_345" value="16787484" c:type="GDK_KEY_braille_dots_345">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3456" value="16787516" c:type="GDK_KEY_braille_dots_3456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_34567" value="16787580" c:type="GDK_KEY_braille_dots_34567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_345678" value="16787708" c:type="GDK_KEY_braille_dots_345678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_34568" value="16787644" c:type="GDK_KEY_braille_dots_34568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3457" value="16787548" c:type="GDK_KEY_braille_dots_3457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_34578" value="16787676" c:type="GDK_KEY_braille_dots_34578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3458" value="16787612" c:type="GDK_KEY_braille_dots_3458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_346" value="16787500" c:type="GDK_KEY_braille_dots_346">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3467" value="16787564" c:type="GDK_KEY_braille_dots_3467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_34678" value="16787692" c:type="GDK_KEY_braille_dots_34678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3468" value="16787628" c:type="GDK_KEY_braille_dots_3468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_347" value="16787532" c:type="GDK_KEY_braille_dots_347">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3478" value="16787660" c:type="GDK_KEY_braille_dots_3478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_348" value="16787596" c:type="GDK_KEY_braille_dots_348">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_35" value="16787476" c:type="GDK_KEY_braille_dots_35">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_356" value="16787508" c:type="GDK_KEY_braille_dots_356">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3567" value="16787572" c:type="GDK_KEY_braille_dots_3567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_35678" value="16787700" c:type="GDK_KEY_braille_dots_35678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3568" value="16787636" c:type="GDK_KEY_braille_dots_3568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_357" value="16787540" c:type="GDK_KEY_braille_dots_357">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3578" value="16787668" c:type="GDK_KEY_braille_dots_3578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_358" value="16787604" c:type="GDK_KEY_braille_dots_358">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_36" value="16787492" c:type="GDK_KEY_braille_dots_36">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_367" value="16787556" c:type="GDK_KEY_braille_dots_367">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_3678" value="16787684" c:type="GDK_KEY_braille_dots_3678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_368" value="16787620" c:type="GDK_KEY_braille_dots_368">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_37" value="16787524" c:type="GDK_KEY_braille_dots_37">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_378" value="16787652" c:type="GDK_KEY_braille_dots_378">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_38" value="16787588" c:type="GDK_KEY_braille_dots_38">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_4" value="16787464" c:type="GDK_KEY_braille_dots_4">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_45" value="16787480" c:type="GDK_KEY_braille_dots_45">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_456" value="16787512" c:type="GDK_KEY_braille_dots_456">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_4567" value="16787576" c:type="GDK_KEY_braille_dots_4567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_45678" value="16787704" c:type="GDK_KEY_braille_dots_45678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_4568" value="16787640" c:type="GDK_KEY_braille_dots_4568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_457" value="16787544" c:type="GDK_KEY_braille_dots_457">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_4578" value="16787672" c:type="GDK_KEY_braille_dots_4578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_458" value="16787608" c:type="GDK_KEY_braille_dots_458">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_46" value="16787496" c:type="GDK_KEY_braille_dots_46">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_467" value="16787560" c:type="GDK_KEY_braille_dots_467">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_4678" value="16787688" c:type="GDK_KEY_braille_dots_4678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_468" value="16787624" c:type="GDK_KEY_braille_dots_468">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_47" value="16787528" c:type="GDK_KEY_braille_dots_47">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_478" value="16787656" c:type="GDK_KEY_braille_dots_478">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_48" value="16787592" c:type="GDK_KEY_braille_dots_48">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_5" value="16787472" c:type="GDK_KEY_braille_dots_5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_56" value="16787504" c:type="GDK_KEY_braille_dots_56">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_567" value="16787568" c:type="GDK_KEY_braille_dots_567">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_5678" value="16787696" c:type="GDK_KEY_braille_dots_5678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_568" value="16787632" c:type="GDK_KEY_braille_dots_568">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_57" value="16787536" c:type="GDK_KEY_braille_dots_57">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_578" value="16787664" c:type="GDK_KEY_braille_dots_578">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_58" value="16787600" c:type="GDK_KEY_braille_dots_58">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_6" value="16787488" c:type="GDK_KEY_braille_dots_6">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_67" value="16787552" c:type="GDK_KEY_braille_dots_67">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_678" value="16787680" c:type="GDK_KEY_braille_dots_678">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_68" value="16787616" c:type="GDK_KEY_braille_dots_68">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_7" value="16787520" c:type="GDK_KEY_braille_dots_7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_78" value="16787648" c:type="GDK_KEY_braille_dots_78">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_braille_dots_8" value="16787584" c:type="GDK_KEY_braille_dots_8">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_breve" value="418" c:type="GDK_KEY_breve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_brokenbar" value="166" c:type="GDK_KEY_brokenbar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_c" value="99" c:type="GDK_KEY_c">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_c_h" value="65187" c:type="GDK_KEY_c_h">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cabovedot" value="741" c:type="GDK_KEY_cabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cacute" value="486" c:type="GDK_KEY_cacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_careof" value="2744" c:type="GDK_KEY_careof">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_caret" value="2812" c:type="GDK_KEY_caret">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_caron" value="439" c:type="GDK_KEY_caron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ccaron" value="488" c:type="GDK_KEY_ccaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ccedilla" value="231" c:type="GDK_KEY_ccedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ccircumflex" value="742" c:type="GDK_KEY_ccircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cedilla" value="184" c:type="GDK_KEY_cedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cent" value="162" c:type="GDK_KEY_cent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ch" value="65184" c:type="GDK_KEY_ch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_checkerboard" value="2529" c:type="GDK_KEY_checkerboard">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_checkmark" value="2803" c:type="GDK_KEY_checkmark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_circle" value="3023" c:type="GDK_KEY_circle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_club" value="2796" c:type="GDK_KEY_club">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_colon" value="58" c:type="GDK_KEY_colon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_comma" value="44" c:type="GDK_KEY_comma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_containsas" value="16785931" c:type="GDK_KEY_containsas">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_copyright" value="169" c:type="GDK_KEY_copyright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cr" value="2532" c:type="GDK_KEY_cr">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_crossinglines" value="2542" c:type="GDK_KEY_crossinglines">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cuberoot" value="16785947" c:type="GDK_KEY_cuberoot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_currency" value="164" c:type="GDK_KEY_currency">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_cursor" value="2815" c:type="GDK_KEY_cursor">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_d" value="100" c:type="GDK_KEY_d">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dabovedot" value="16784907" c:type="GDK_KEY_dabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dagger" value="2801" c:type="GDK_KEY_dagger">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dcaron" value="495" c:type="GDK_KEY_dcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_A" value="65153" c:type="GDK_KEY_dead_A">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_E" value="65155" c:type="GDK_KEY_dead_E">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_I" value="65157" c:type="GDK_KEY_dead_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_O" value="65159" c:type="GDK_KEY_dead_O">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_U" value="65161" c:type="GDK_KEY_dead_U">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_a" value="65152" c:type="GDK_KEY_dead_a">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_abovecomma" value="65124" c:type="GDK_KEY_dead_abovecomma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_abovedot" value="65110" c:type="GDK_KEY_dead_abovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_abovereversedcomma" value="65125" c:type="GDK_KEY_dead_abovereversedcomma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_abovering" value="65112" c:type="GDK_KEY_dead_abovering">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_acute" value="65105" c:type="GDK_KEY_dead_acute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowbreve" value="65131" c:type="GDK_KEY_dead_belowbreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowcircumflex" value="65129" c:type="GDK_KEY_dead_belowcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowcomma" value="65134" c:type="GDK_KEY_dead_belowcomma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowdiaeresis" value="65132" c:type="GDK_KEY_dead_belowdiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowdot" value="65120" c:type="GDK_KEY_dead_belowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowmacron" value="65128" c:type="GDK_KEY_dead_belowmacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowring" value="65127" c:type="GDK_KEY_dead_belowring">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_belowtilde" value="65130" c:type="GDK_KEY_dead_belowtilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_breve" value="65109" c:type="GDK_KEY_dead_breve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_capital_schwa" value="65163" c:type="GDK_KEY_dead_capital_schwa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_caron" value="65114" c:type="GDK_KEY_dead_caron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_cedilla" value="65115" c:type="GDK_KEY_dead_cedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_circumflex" value="65106" c:type="GDK_KEY_dead_circumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_currency" value="65135" c:type="GDK_KEY_dead_currency">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_dasia" value="65125" c:type="GDK_KEY_dead_dasia">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_diaeresis" value="65111" c:type="GDK_KEY_dead_diaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_doubleacute" value="65113" c:type="GDK_KEY_dead_doubleacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_doublegrave" value="65126" c:type="GDK_KEY_dead_doublegrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_e" value="65154" c:type="GDK_KEY_dead_e">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_grave" value="65104" c:type="GDK_KEY_dead_grave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_greek" value="65164" c:type="GDK_KEY_dead_greek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_hook" value="65121" c:type="GDK_KEY_dead_hook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_horn" value="65122" c:type="GDK_KEY_dead_horn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_i" value="65156" c:type="GDK_KEY_dead_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_invertedbreve" value="65133" c:type="GDK_KEY_dead_invertedbreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_iota" value="65117" c:type="GDK_KEY_dead_iota">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_macron" value="65108" c:type="GDK_KEY_dead_macron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_o" value="65158" c:type="GDK_KEY_dead_o">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_ogonek" value="65116" c:type="GDK_KEY_dead_ogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_perispomeni" value="65107" c:type="GDK_KEY_dead_perispomeni">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_psili" value="65124" c:type="GDK_KEY_dead_psili">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_semivoiced_sound" value="65119" c:type="GDK_KEY_dead_semivoiced_sound">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_small_schwa" value="65162" c:type="GDK_KEY_dead_small_schwa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_stroke" value="65123" c:type="GDK_KEY_dead_stroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_tilde" value="65107" c:type="GDK_KEY_dead_tilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_u" value="65160" c:type="GDK_KEY_dead_u">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dead_voiced_sound" value="65118" c:type="GDK_KEY_dead_voiced_sound">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_decimalpoint" value="2749" c:type="GDK_KEY_decimalpoint">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_degree" value="176" c:type="GDK_KEY_degree">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_diaeresis" value="168" c:type="GDK_KEY_diaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_diamond" value="2797" c:type="GDK_KEY_diamond">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_digitspace" value="2725" c:type="GDK_KEY_digitspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dintegral" value="16785964" c:type="GDK_KEY_dintegral">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_division" value="247" c:type="GDK_KEY_division">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dollar" value="36" c:type="GDK_KEY_dollar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_doubbaselinedot" value="2735" c:type="GDK_KEY_doubbaselinedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_doubleacute" value="445" c:type="GDK_KEY_doubleacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_doubledagger" value="2802" c:type="GDK_KEY_doubledagger">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_doublelowquotemark" value="2814" c:type="GDK_KEY_doublelowquotemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_downarrow" value="2302" c:type="GDK_KEY_downarrow">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_downcaret" value="2984" c:type="GDK_KEY_downcaret">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_downshoe" value="3030" c:type="GDK_KEY_downshoe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_downstile" value="3012" c:type="GDK_KEY_downstile">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_downtack" value="3010" c:type="GDK_KEY_downtack">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_dstroke" value="496" c:type="GDK_KEY_dstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_e" value="101" c:type="GDK_KEY_e">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eabovedot" value="1004" c:type="GDK_KEY_eabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eacute" value="233" c:type="GDK_KEY_eacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ebelowdot" value="16785081" c:type="GDK_KEY_ebelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecaron" value="492" c:type="GDK_KEY_ecaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecircumflex" value="234" c:type="GDK_KEY_ecircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecircumflexacute" value="16785087" c:type="GDK_KEY_ecircumflexacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecircumflexbelowdot" value="16785095" c:type="GDK_KEY_ecircumflexbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecircumflexgrave" value="16785089" c:type="GDK_KEY_ecircumflexgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecircumflexhook" value="16785091" c:type="GDK_KEY_ecircumflexhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ecircumflextilde" value="16785093" c:type="GDK_KEY_ecircumflextilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ediaeresis" value="235" c:type="GDK_KEY_ediaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_egrave" value="232" c:type="GDK_KEY_egrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ehook" value="16785083" c:type="GDK_KEY_ehook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eightsubscript" value="16785544" c:type="GDK_KEY_eightsubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eightsuperior" value="16785528" c:type="GDK_KEY_eightsuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_elementof" value="16785928" c:type="GDK_KEY_elementof">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ellipsis" value="2734" c:type="GDK_KEY_ellipsis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_em3space" value="2723" c:type="GDK_KEY_em3space">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_em4space" value="2724" c:type="GDK_KEY_em4space">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emacron" value="954" c:type="GDK_KEY_emacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emdash" value="2729" c:type="GDK_KEY_emdash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emfilledcircle" value="2782" c:type="GDK_KEY_emfilledcircle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emfilledrect" value="2783" c:type="GDK_KEY_emfilledrect">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emopencircle" value="2766" c:type="GDK_KEY_emopencircle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emopenrectangle" value="2767" c:type="GDK_KEY_emopenrectangle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emptyset" value="16785925" c:type="GDK_KEY_emptyset">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_emspace" value="2721" c:type="GDK_KEY_emspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_endash" value="2730" c:type="GDK_KEY_endash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_enfilledcircbullet" value="2790" c:type="GDK_KEY_enfilledcircbullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_enfilledsqbullet" value="2791" c:type="GDK_KEY_enfilledsqbullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eng" value="959" c:type="GDK_KEY_eng">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_enopencircbullet" value="2784" c:type="GDK_KEY_enopencircbullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_enopensquarebullet" value="2785" c:type="GDK_KEY_enopensquarebullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_enspace" value="2722" c:type="GDK_KEY_enspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eogonek" value="490" c:type="GDK_KEY_eogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_equal" value="61" c:type="GDK_KEY_equal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_eth" value="240" c:type="GDK_KEY_eth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_etilde" value="16785085" c:type="GDK_KEY_etilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_exclam" value="33" c:type="GDK_KEY_exclam">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_exclamdown" value="161" c:type="GDK_KEY_exclamdown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ezh" value="16777874" c:type="GDK_KEY_ezh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_f" value="102" c:type="GDK_KEY_f">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fabovedot" value="16784927" c:type="GDK_KEY_fabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_femalesymbol" value="2808" c:type="GDK_KEY_femalesymbol">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ff" value="2531" c:type="GDK_KEY_ff">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_figdash" value="2747" c:type="GDK_KEY_figdash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_filledlefttribullet" value="2780" c:type="GDK_KEY_filledlefttribullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_filledrectbullet" value="2779" c:type="GDK_KEY_filledrectbullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_filledrighttribullet" value="2781" c:type="GDK_KEY_filledrighttribullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_filledtribulletdown" value="2793" c:type="GDK_KEY_filledtribulletdown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_filledtribulletup" value="2792" c:type="GDK_KEY_filledtribulletup">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fiveeighths" value="2757" c:type="GDK_KEY_fiveeighths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fivesixths" value="2743" c:type="GDK_KEY_fivesixths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fivesubscript" value="16785541" c:type="GDK_KEY_fivesubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fivesuperior" value="16785525" c:type="GDK_KEY_fivesuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fourfifths" value="2741" c:type="GDK_KEY_fourfifths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_foursubscript" value="16785540" c:type="GDK_KEY_foursubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_foursuperior" value="16785524" c:type="GDK_KEY_foursuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_fourthroot" value="16785948" c:type="GDK_KEY_fourthroot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_function" value="2294" c:type="GDK_KEY_function">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_g" value="103" c:type="GDK_KEY_g">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_gabovedot" value="757" c:type="GDK_KEY_gabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_gbreve" value="699" c:type="GDK_KEY_gbreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_gcaron" value="16777703" c:type="GDK_KEY_gcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_gcedilla" value="955" c:type="GDK_KEY_gcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_gcircumflex" value="760" c:type="GDK_KEY_gcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_grave" value="96" c:type="GDK_KEY_grave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_greater" value="62" c:type="GDK_KEY_greater">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_greaterthanequal" value="2238" c:type="GDK_KEY_greaterthanequal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_guillemotleft" value="171" c:type="GDK_KEY_guillemotleft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_guillemotright" value="187" c:type="GDK_KEY_guillemotright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_h" value="104" c:type="GDK_KEY_h">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hairspace" value="2728" c:type="GDK_KEY_hairspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hcircumflex" value="694" c:type="GDK_KEY_hcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_heart" value="2798" c:type="GDK_KEY_heart">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_aleph" value="3296" c:type="GDK_KEY_hebrew_aleph">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_ayin" value="3314" c:type="GDK_KEY_hebrew_ayin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_bet" value="3297" c:type="GDK_KEY_hebrew_bet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_beth" value="3297" c:type="GDK_KEY_hebrew_beth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_chet" value="3303" c:type="GDK_KEY_hebrew_chet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_dalet" value="3299" c:type="GDK_KEY_hebrew_dalet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_daleth" value="3299" c:type="GDK_KEY_hebrew_daleth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_doublelowline" value="3295" c:type="GDK_KEY_hebrew_doublelowline">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_finalkaph" value="3306" c:type="GDK_KEY_hebrew_finalkaph">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_finalmem" value="3309" c:type="GDK_KEY_hebrew_finalmem">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_finalnun" value="3311" c:type="GDK_KEY_hebrew_finalnun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_finalpe" value="3315" c:type="GDK_KEY_hebrew_finalpe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_finalzade" value="3317" c:type="GDK_KEY_hebrew_finalzade">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_finalzadi" value="3317" c:type="GDK_KEY_hebrew_finalzadi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_gimel" value="3298" c:type="GDK_KEY_hebrew_gimel">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_gimmel" value="3298" c:type="GDK_KEY_hebrew_gimmel">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_he" value="3300" c:type="GDK_KEY_hebrew_he">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_het" value="3303" c:type="GDK_KEY_hebrew_het">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_kaph" value="3307" c:type="GDK_KEY_hebrew_kaph">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_kuf" value="3319" c:type="GDK_KEY_hebrew_kuf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_lamed" value="3308" c:type="GDK_KEY_hebrew_lamed">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_mem" value="3310" c:type="GDK_KEY_hebrew_mem">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_nun" value="3312" c:type="GDK_KEY_hebrew_nun">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_pe" value="3316" c:type="GDK_KEY_hebrew_pe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_qoph" value="3319" c:type="GDK_KEY_hebrew_qoph">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_resh" value="3320" c:type="GDK_KEY_hebrew_resh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_samech" value="3313" c:type="GDK_KEY_hebrew_samech">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_samekh" value="3313" c:type="GDK_KEY_hebrew_samekh">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_shin" value="3321" c:type="GDK_KEY_hebrew_shin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_taf" value="3322" c:type="GDK_KEY_hebrew_taf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_taw" value="3322" c:type="GDK_KEY_hebrew_taw">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_tet" value="3304" c:type="GDK_KEY_hebrew_tet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_teth" value="3304" c:type="GDK_KEY_hebrew_teth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_waw" value="3301" c:type="GDK_KEY_hebrew_waw">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_yod" value="3305" c:type="GDK_KEY_hebrew_yod">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_zade" value="3318" c:type="GDK_KEY_hebrew_zade">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_zadi" value="3318" c:type="GDK_KEY_hebrew_zadi">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_zain" value="3302" c:type="GDK_KEY_hebrew_zain">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hebrew_zayin" value="3302" c:type="GDK_KEY_hebrew_zayin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hexagram" value="2778" c:type="GDK_KEY_hexagram">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_horizconnector" value="2211" c:type="GDK_KEY_horizconnector">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_horizlinescan1" value="2543" c:type="GDK_KEY_horizlinescan1">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_horizlinescan3" value="2544" c:type="GDK_KEY_horizlinescan3">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_horizlinescan5" value="2545" c:type="GDK_KEY_horizlinescan5">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_horizlinescan7" value="2546" c:type="GDK_KEY_horizlinescan7">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_horizlinescan9" value="2547" c:type="GDK_KEY_horizlinescan9">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hstroke" value="689" c:type="GDK_KEY_hstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ht" value="2530" c:type="GDK_KEY_ht">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_hyphen" value="173" c:type="GDK_KEY_hyphen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_i" value="105" c:type="GDK_KEY_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_iTouch" value="269025120" c:type="GDK_KEY_iTouch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_iacute" value="237" c:type="GDK_KEY_iacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ibelowdot" value="16785099" c:type="GDK_KEY_ibelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ibreve" value="16777517" c:type="GDK_KEY_ibreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_icircumflex" value="238" c:type="GDK_KEY_icircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_identical" value="2255" c:type="GDK_KEY_identical">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_idiaeresis" value="239" c:type="GDK_KEY_idiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_idotless" value="697" c:type="GDK_KEY_idotless">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ifonlyif" value="2253" c:type="GDK_KEY_ifonlyif">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_igrave" value="236" c:type="GDK_KEY_igrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ihook" value="16785097" c:type="GDK_KEY_ihook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_imacron" value="1007" c:type="GDK_KEY_imacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_implies" value="2254" c:type="GDK_KEY_implies">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_includedin" value="2266" c:type="GDK_KEY_includedin">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_includes" value="2267" c:type="GDK_KEY_includes">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_infinity" value="2242" c:type="GDK_KEY_infinity">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_integral" value="2239" c:type="GDK_KEY_integral">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_intersection" value="2268" c:type="GDK_KEY_intersection">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_iogonek" value="999" c:type="GDK_KEY_iogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_itilde" value="949" c:type="GDK_KEY_itilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_j" value="106" c:type="GDK_KEY_j">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_jcircumflex" value="700" c:type="GDK_KEY_jcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_jot" value="3018" c:type="GDK_KEY_jot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_k" value="107" c:type="GDK_KEY_k">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_A" value="1201" c:type="GDK_KEY_kana_A">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_CHI" value="1217" c:type="GDK_KEY_kana_CHI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_E" value="1204" c:type="GDK_KEY_kana_E">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_FU" value="1228" c:type="GDK_KEY_kana_FU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_HA" value="1226" c:type="GDK_KEY_kana_HA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_HE" value="1229" c:type="GDK_KEY_kana_HE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_HI" value="1227" c:type="GDK_KEY_kana_HI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_HO" value="1230" c:type="GDK_KEY_kana_HO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_HU" value="1228" c:type="GDK_KEY_kana_HU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_I" value="1202" c:type="GDK_KEY_kana_I">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_KA" value="1206" c:type="GDK_KEY_kana_KA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_KE" value="1209" c:type="GDK_KEY_kana_KE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_KI" value="1207" c:type="GDK_KEY_kana_KI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_KO" value="1210" c:type="GDK_KEY_kana_KO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_KU" value="1208" c:type="GDK_KEY_kana_KU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_MA" value="1231" c:type="GDK_KEY_kana_MA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_ME" value="1234" c:type="GDK_KEY_kana_ME">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_MI" value="1232" c:type="GDK_KEY_kana_MI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_MO" value="1235" c:type="GDK_KEY_kana_MO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_MU" value="1233" c:type="GDK_KEY_kana_MU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_N" value="1245" c:type="GDK_KEY_kana_N">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_NA" value="1221" c:type="GDK_KEY_kana_NA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_NE" value="1224" c:type="GDK_KEY_kana_NE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_NI" value="1222" c:type="GDK_KEY_kana_NI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_NO" value="1225" c:type="GDK_KEY_kana_NO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_NU" value="1223" c:type="GDK_KEY_kana_NU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_O" value="1205" c:type="GDK_KEY_kana_O">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_RA" value="1239" c:type="GDK_KEY_kana_RA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_RE" value="1242" c:type="GDK_KEY_kana_RE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_RI" value="1240" c:type="GDK_KEY_kana_RI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_RO" value="1243" c:type="GDK_KEY_kana_RO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_RU" value="1241" c:type="GDK_KEY_kana_RU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_SA" value="1211" c:type="GDK_KEY_kana_SA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_SE" value="1214" c:type="GDK_KEY_kana_SE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_SHI" value="1212" c:type="GDK_KEY_kana_SHI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_SO" value="1215" c:type="GDK_KEY_kana_SO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_SU" value="1213" c:type="GDK_KEY_kana_SU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_TA" value="1216" c:type="GDK_KEY_kana_TA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_TE" value="1219" c:type="GDK_KEY_kana_TE">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_TI" value="1217" c:type="GDK_KEY_kana_TI">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_TO" value="1220" c:type="GDK_KEY_kana_TO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_TSU" value="1218" c:type="GDK_KEY_kana_TSU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_TU" value="1218" c:type="GDK_KEY_kana_TU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_U" value="1203" c:type="GDK_KEY_kana_U">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_WA" value="1244" c:type="GDK_KEY_kana_WA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_WO" value="1190" c:type="GDK_KEY_kana_WO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_YA" value="1236" c:type="GDK_KEY_kana_YA">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_YO" value="1238" c:type="GDK_KEY_kana_YO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_YU" value="1237" c:type="GDK_KEY_kana_YU">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_a" value="1191" c:type="GDK_KEY_kana_a">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_closingbracket" value="1187" c:type="GDK_KEY_kana_closingbracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_comma" value="1188" c:type="GDK_KEY_kana_comma">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_conjunctive" value="1189" c:type="GDK_KEY_kana_conjunctive">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_e" value="1194" c:type="GDK_KEY_kana_e">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_fullstop" value="1185" c:type="GDK_KEY_kana_fullstop">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_i" value="1192" c:type="GDK_KEY_kana_i">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_middledot" value="1189" c:type="GDK_KEY_kana_middledot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_o" value="1195" c:type="GDK_KEY_kana_o">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_openingbracket" value="1186" c:type="GDK_KEY_kana_openingbracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_switch" value="65406" c:type="GDK_KEY_kana_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_tsu" value="1199" c:type="GDK_KEY_kana_tsu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_tu" value="1199" c:type="GDK_KEY_kana_tu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_u" value="1193" c:type="GDK_KEY_kana_u">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_ya" value="1196" c:type="GDK_KEY_kana_ya">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_yo" value="1198" c:type="GDK_KEY_kana_yo">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kana_yu" value="1197" c:type="GDK_KEY_kana_yu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kappa" value="930" c:type="GDK_KEY_kappa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kcedilla" value="1011" c:type="GDK_KEY_kcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_kra" value="930" c:type="GDK_KEY_kra">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_l" value="108" c:type="GDK_KEY_l">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lacute" value="485" c:type="GDK_KEY_lacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_latincross" value="2777" c:type="GDK_KEY_latincross">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lbelowdot" value="16784951" c:type="GDK_KEY_lbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lcaron" value="437" c:type="GDK_KEY_lcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lcedilla" value="950" c:type="GDK_KEY_lcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftanglebracket" value="2748" c:type="GDK_KEY_leftanglebracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftarrow" value="2299" c:type="GDK_KEY_leftarrow">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftcaret" value="2979" c:type="GDK_KEY_leftcaret">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftdoublequotemark" value="2770" c:type="GDK_KEY_leftdoublequotemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftmiddlecurlybrace" value="2223" c:type="GDK_KEY_leftmiddlecurlybrace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftopentriangle" value="2764" c:type="GDK_KEY_leftopentriangle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftpointer" value="2794" c:type="GDK_KEY_leftpointer">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftradical" value="2209" c:type="GDK_KEY_leftradical">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftshoe" value="3034" c:type="GDK_KEY_leftshoe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftsinglequotemark" value="2768" c:type="GDK_KEY_leftsinglequotemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_leftt" value="2548" c:type="GDK_KEY_leftt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lefttack" value="3036" c:type="GDK_KEY_lefttack">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_less" value="60" c:type="GDK_KEY_less">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lessthanequal" value="2236" c:type="GDK_KEY_lessthanequal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lf" value="2533" c:type="GDK_KEY_lf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_logicaland" value="2270" c:type="GDK_KEY_logicaland">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_logicalor" value="2271" c:type="GDK_KEY_logicalor">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lowleftcorner" value="2541" c:type="GDK_KEY_lowleftcorner">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lowrightcorner" value="2538" c:type="GDK_KEY_lowrightcorner">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_lstroke" value="435" c:type="GDK_KEY_lstroke">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_m" value="109" c:type="GDK_KEY_m">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_mabovedot" value="16784961" c:type="GDK_KEY_mabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_macron" value="175" c:type="GDK_KEY_macron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_malesymbol" value="2807" c:type="GDK_KEY_malesymbol">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_maltesecross" value="2800" c:type="GDK_KEY_maltesecross">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_marker" value="2751" c:type="GDK_KEY_marker">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_masculine" value="186" c:type="GDK_KEY_masculine">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_minus" value="45" c:type="GDK_KEY_minus">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_minutes" value="2774" c:type="GDK_KEY_minutes">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_mu" value="181" c:type="GDK_KEY_mu">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_multiply" value="215" c:type="GDK_KEY_multiply">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_musicalflat" value="2806" c:type="GDK_KEY_musicalflat">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_musicalsharp" value="2805" c:type="GDK_KEY_musicalsharp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_n" value="110" c:type="GDK_KEY_n">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_nabla" value="2245" c:type="GDK_KEY_nabla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_nacute" value="497" c:type="GDK_KEY_nacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ncaron" value="498" c:type="GDK_KEY_ncaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ncedilla" value="1009" c:type="GDK_KEY_ncedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ninesubscript" value="16785545" c:type="GDK_KEY_ninesubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ninesuperior" value="16785529" c:type="GDK_KEY_ninesuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_nl" value="2536" c:type="GDK_KEY_nl">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_nobreakspace" value="160" c:type="GDK_KEY_nobreakspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_notapproxeq" value="16785991" c:type="GDK_KEY_notapproxeq">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_notelementof" value="16785929" c:type="GDK_KEY_notelementof">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_notequal" value="2237" c:type="GDK_KEY_notequal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_notidentical" value="16786018" c:type="GDK_KEY_notidentical">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_notsign" value="172" c:type="GDK_KEY_notsign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ntilde" value="241" c:type="GDK_KEY_ntilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_numbersign" value="35" c:type="GDK_KEY_numbersign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_numerosign" value="1712" c:type="GDK_KEY_numerosign">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_o" value="111" c:type="GDK_KEY_o">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_oacute" value="243" c:type="GDK_KEY_oacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_obarred" value="16777845" c:type="GDK_KEY_obarred">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_obelowdot" value="16785101" c:type="GDK_KEY_obelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocaron" value="16777682" c:type="GDK_KEY_ocaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocircumflex" value="244" c:type="GDK_KEY_ocircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocircumflexacute" value="16785105" c:type="GDK_KEY_ocircumflexacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocircumflexbelowdot" value="16785113" c:type="GDK_KEY_ocircumflexbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocircumflexgrave" value="16785107" c:type="GDK_KEY_ocircumflexgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocircumflexhook" value="16785109" c:type="GDK_KEY_ocircumflexhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ocircumflextilde" value="16785111" c:type="GDK_KEY_ocircumflextilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_odiaeresis" value="246" c:type="GDK_KEY_odiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_odoubleacute" value="501" c:type="GDK_KEY_odoubleacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_oe" value="5053" c:type="GDK_KEY_oe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ogonek" value="434" c:type="GDK_KEY_ogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ograve" value="242" c:type="GDK_KEY_ograve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohook" value="16785103" c:type="GDK_KEY_ohook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohorn" value="16777633" c:type="GDK_KEY_ohorn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohornacute" value="16785115" c:type="GDK_KEY_ohornacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohornbelowdot" value="16785123" c:type="GDK_KEY_ohornbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohorngrave" value="16785117" c:type="GDK_KEY_ohorngrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohornhook" value="16785119" c:type="GDK_KEY_ohornhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ohorntilde" value="16785121" c:type="GDK_KEY_ohorntilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_omacron" value="1010" c:type="GDK_KEY_omacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_oneeighth" value="2755" c:type="GDK_KEY_oneeighth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onefifth" value="2738" c:type="GDK_KEY_onefifth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onehalf" value="189" c:type="GDK_KEY_onehalf">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onequarter" value="188" c:type="GDK_KEY_onequarter">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onesixth" value="2742" c:type="GDK_KEY_onesixth">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onesubscript" value="16785537" c:type="GDK_KEY_onesubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onesuperior" value="185" c:type="GDK_KEY_onesuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_onethird" value="2736" c:type="GDK_KEY_onethird">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ooblique" value="248" c:type="GDK_KEY_ooblique">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_openrectbullet" value="2786" c:type="GDK_KEY_openrectbullet">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_openstar" value="2789" c:type="GDK_KEY_openstar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_opentribulletdown" value="2788" c:type="GDK_KEY_opentribulletdown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_opentribulletup" value="2787" c:type="GDK_KEY_opentribulletup">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ordfeminine" value="170" c:type="GDK_KEY_ordfeminine">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_oslash" value="248" c:type="GDK_KEY_oslash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_otilde" value="245" c:type="GDK_KEY_otilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_overbar" value="3008" c:type="GDK_KEY_overbar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_overline" value="1150" c:type="GDK_KEY_overline">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_p" value="112" c:type="GDK_KEY_p">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_pabovedot" value="16784983" c:type="GDK_KEY_pabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_paragraph" value="182" c:type="GDK_KEY_paragraph">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_parenleft" value="40" c:type="GDK_KEY_parenleft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_parenright" value="41" c:type="GDK_KEY_parenright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_partdifferential" value="16785922" c:type="GDK_KEY_partdifferential">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_partialderivative" value="2287" c:type="GDK_KEY_partialderivative">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_percent" value="37" c:type="GDK_KEY_percent">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_period" value="46" c:type="GDK_KEY_period">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_periodcentered" value="183" c:type="GDK_KEY_periodcentered">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_permille" value="2773" c:type="GDK_KEY_permille">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_phonographcopyright" value="2811" c:type="GDK_KEY_phonographcopyright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_plus" value="43" c:type="GDK_KEY_plus">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_plusminus" value="177" c:type="GDK_KEY_plusminus">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_prescription" value="2772" c:type="GDK_KEY_prescription">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_prolongedsound" value="1200" c:type="GDK_KEY_prolongedsound">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_punctspace" value="2726" c:type="GDK_KEY_punctspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_q" value="113" c:type="GDK_KEY_q">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_quad" value="3020" c:type="GDK_KEY_quad">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_question" value="63" c:type="GDK_KEY_question">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_questiondown" value="191" c:type="GDK_KEY_questiondown">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_quotedbl" value="34" c:type="GDK_KEY_quotedbl">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_quoteleft" value="96" c:type="GDK_KEY_quoteleft">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_quoteright" value="39" c:type="GDK_KEY_quoteright">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_r" value="114" c:type="GDK_KEY_r">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_racute" value="480" c:type="GDK_KEY_racute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_radical" value="2262" c:type="GDK_KEY_radical">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rcaron" value="504" c:type="GDK_KEY_rcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rcedilla" value="947" c:type="GDK_KEY_rcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_registered" value="174" c:type="GDK_KEY_registered">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightanglebracket" value="2750" c:type="GDK_KEY_rightanglebracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightarrow" value="2301" c:type="GDK_KEY_rightarrow">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightcaret" value="2982" c:type="GDK_KEY_rightcaret">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightdoublequotemark" value="2771" c:type="GDK_KEY_rightdoublequotemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightmiddlecurlybrace" value="2224" c:type="GDK_KEY_rightmiddlecurlybrace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightmiddlesummation" value="2231" c:type="GDK_KEY_rightmiddlesummation">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightopentriangle" value="2765" c:type="GDK_KEY_rightopentriangle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightpointer" value="2795" c:type="GDK_KEY_rightpointer">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightshoe" value="3032" c:type="GDK_KEY_rightshoe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightsinglequotemark" value="2769" c:type="GDK_KEY_rightsinglequotemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_rightt" value="2549" c:type="GDK_KEY_rightt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_righttack" value="3068" c:type="GDK_KEY_righttack">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_s" value="115" c:type="GDK_KEY_s">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sabovedot" value="16784993" c:type="GDK_KEY_sabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sacute" value="438" c:type="GDK_KEY_sacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_scaron" value="441" c:type="GDK_KEY_scaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_scedilla" value="442" c:type="GDK_KEY_scedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_schwa" value="16777817" c:type="GDK_KEY_schwa">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_scircumflex" value="766" c:type="GDK_KEY_scircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_script_switch" value="65406" c:type="GDK_KEY_script_switch">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_seconds" value="2775" c:type="GDK_KEY_seconds">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_section" value="167" c:type="GDK_KEY_section">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_semicolon" value="59" c:type="GDK_KEY_semicolon">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_semivoicedsound" value="1247" c:type="GDK_KEY_semivoicedsound">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_seveneighths" value="2758" c:type="GDK_KEY_seveneighths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sevensubscript" value="16785543" c:type="GDK_KEY_sevensubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sevensuperior" value="16785527" c:type="GDK_KEY_sevensuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_signaturemark" value="2762" c:type="GDK_KEY_signaturemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_signifblank" value="2732" c:type="GDK_KEY_signifblank">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_similarequal" value="2249" c:type="GDK_KEY_similarequal">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_singlelowquotemark" value="2813" c:type="GDK_KEY_singlelowquotemark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sixsubscript" value="16785542" c:type="GDK_KEY_sixsubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sixsuperior" value="16785526" c:type="GDK_KEY_sixsuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_slash" value="47" c:type="GDK_KEY_slash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_soliddiamond" value="2528" c:type="GDK_KEY_soliddiamond">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_space" value="32" c:type="GDK_KEY_space">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_squareroot" value="16785946" c:type="GDK_KEY_squareroot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ssharp" value="223" c:type="GDK_KEY_ssharp">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_sterling" value="163" c:type="GDK_KEY_sterling">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_stricteq" value="16786019" c:type="GDK_KEY_stricteq">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_t" value="116" c:type="GDK_KEY_t">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_tabovedot" value="16785003" c:type="GDK_KEY_tabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_tcaron" value="443" c:type="GDK_KEY_tcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_tcedilla" value="510" c:type="GDK_KEY_tcedilla">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_telephone" value="2809" c:type="GDK_KEY_telephone">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_telephonerecorder" value="2810" c:type="GDK_KEY_telephonerecorder">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_therefore" value="2240" c:type="GDK_KEY_therefore">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_thinspace" value="2727" c:type="GDK_KEY_thinspace">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_thorn" value="254" c:type="GDK_KEY_thorn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_threeeighths" value="2756" c:type="GDK_KEY_threeeighths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_threefifths" value="2740" c:type="GDK_KEY_threefifths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_threequarters" value="190" c:type="GDK_KEY_threequarters">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_threesubscript" value="16785539" c:type="GDK_KEY_threesubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_threesuperior" value="179" c:type="GDK_KEY_threesuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_tintegral" value="16785965" c:type="GDK_KEY_tintegral">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topintegral" value="2212" c:type="GDK_KEY_topintegral">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topleftparens" value="2219" c:type="GDK_KEY_topleftparens">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topleftradical" value="2210" c:type="GDK_KEY_topleftradical">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topleftsqbracket" value="2215" c:type="GDK_KEY_topleftsqbracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topleftsummation" value="2225" c:type="GDK_KEY_topleftsummation">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_toprightparens" value="2221" c:type="GDK_KEY_toprightparens">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_toprightsqbracket" value="2217" c:type="GDK_KEY_toprightsqbracket">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_toprightsummation" value="2229" c:type="GDK_KEY_toprightsummation">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topt" value="2551" c:type="GDK_KEY_topt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_topvertsummationconnector" value="2227" c:type="GDK_KEY_topvertsummationconnector">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_trademark" value="2761" c:type="GDK_KEY_trademark">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_trademarkincircle" value="2763" c:type="GDK_KEY_trademarkincircle">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_tslash" value="956" c:type="GDK_KEY_tslash">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_twofifths" value="2739" c:type="GDK_KEY_twofifths">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_twosubscript" value="16785538" c:type="GDK_KEY_twosubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_twosuperior" value="178" c:type="GDK_KEY_twosuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_twothirds" value="2737" c:type="GDK_KEY_twothirds">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_u" value="117" c:type="GDK_KEY_u">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uacute" value="250" c:type="GDK_KEY_uacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ubelowdot" value="16785125" c:type="GDK_KEY_ubelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ubreve" value="765" c:type="GDK_KEY_ubreve">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ucircumflex" value="251" c:type="GDK_KEY_ucircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_udiaeresis" value="252" c:type="GDK_KEY_udiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_udoubleacute" value="507" c:type="GDK_KEY_udoubleacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ugrave" value="249" c:type="GDK_KEY_ugrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhook" value="16785127" c:type="GDK_KEY_uhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhorn" value="16777648" c:type="GDK_KEY_uhorn">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhornacute" value="16785129" c:type="GDK_KEY_uhornacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhornbelowdot" value="16785137" c:type="GDK_KEY_uhornbelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhorngrave" value="16785131" c:type="GDK_KEY_uhorngrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhornhook" value="16785133" c:type="GDK_KEY_uhornhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uhorntilde" value="16785135" c:type="GDK_KEY_uhorntilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_umacron" value="1022" c:type="GDK_KEY_umacron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_underbar" value="3014" c:type="GDK_KEY_underbar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_underscore" value="95" c:type="GDK_KEY_underscore">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_union" value="2269" c:type="GDK_KEY_union">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uogonek" value="1017" c:type="GDK_KEY_uogonek">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uparrow" value="2300" c:type="GDK_KEY_uparrow">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_upcaret" value="2985" c:type="GDK_KEY_upcaret">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_upleftcorner" value="2540" c:type="GDK_KEY_upleftcorner">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uprightcorner" value="2539" c:type="GDK_KEY_uprightcorner">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_upshoe" value="3011" c:type="GDK_KEY_upshoe">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_upstile" value="3027" c:type="GDK_KEY_upstile">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uptack" value="3022" c:type="GDK_KEY_uptack">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_uring" value="505" c:type="GDK_KEY_uring">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_utilde" value="1021" c:type="GDK_KEY_utilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_v" value="118" c:type="GDK_KEY_v">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_variation" value="2241" c:type="GDK_KEY_variation">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_vertbar" value="2552" c:type="GDK_KEY_vertbar">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_vertconnector" value="2214" c:type="GDK_KEY_vertconnector">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_voicedsound" value="1246" c:type="GDK_KEY_voicedsound">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_vt" value="2537" c:type="GDK_KEY_vt">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_w" value="119" c:type="GDK_KEY_w">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_wacute" value="16785027" c:type="GDK_KEY_wacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_wcircumflex" value="16777589" c:type="GDK_KEY_wcircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_wdiaeresis" value="16785029" c:type="GDK_KEY_wdiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_wgrave" value="16785025" c:type="GDK_KEY_wgrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_x" value="120" c:type="GDK_KEY_x">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_xabovedot" value="16785035" c:type="GDK_KEY_xabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_y" value="121" c:type="GDK_KEY_y">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_yacute" value="253" c:type="GDK_KEY_yacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ybelowdot" value="16785141" c:type="GDK_KEY_ybelowdot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ycircumflex" value="16777591" c:type="GDK_KEY_ycircumflex">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ydiaeresis" value="255" c:type="GDK_KEY_ydiaeresis">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_yen" value="165" c:type="GDK_KEY_yen">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ygrave" value="16785139" c:type="GDK_KEY_ygrave">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_yhook" value="16785143" c:type="GDK_KEY_yhook">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_ytilde" value="16785145" c:type="GDK_KEY_ytilde">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_z" value="122" c:type="GDK_KEY_z">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_zabovedot" value="447" c:type="GDK_KEY_zabovedot">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_zacute" value="444" c:type="GDK_KEY_zacute">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_zcaron" value="446" c:type="GDK_KEY_zcaron">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_zerosubscript" value="16785536" c:type="GDK_KEY_zerosubscript">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_zerosuperior" value="16785520" c:type="GDK_KEY_zerosuperior">
<type name="gint" c:type="gint"/>
</constant>
<constant name="KEY_zstroke" value="16777654" c:type="GDK_KEY_zstroke">
<type name="gint" c:type="gint"/>
</constant>
<class name="Keymap" c:symbol-prefix="keymap" c:type="GdkKeymap" parent="GObject.Object" glib:type-name="GdkKeymap" glib:get-type="gdk_keymap_get_type">
<doc xml:space="preserve" filename="../gdk/gdkkeys.h" line="69">A #GdkKeymap defines the translation from keyboard state
(including a hardware key, a modifier mask, and active keyboard group)
to a keyval. This translation has two phases. The first phase is
to determine the effective keyboard group and level for the keyboard
state; the second phase is to look up the keycode/group/level triplet
in the keymap and see what keyval it corresponds to.</doc>
<method name="add_virtual_modifiers" c:identifier="gdk_keymap_add_virtual_modifiers">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="615">Maps the non-virtual modifiers (i.e Mod2, Mod3, ...) which are set
in @state to the virtual modifiers (i.e. Super, Hyper and Meta) 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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="617">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="state" direction="inout" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="618">pointer to the modifier mask to change</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<method name="get_caps_lock_state" c:identifier="gdk_keymap_get_caps_lock_state">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="370">Returns whether the Caps Lock modifer is locked.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="376">%TRUE if Caps Lock is on</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="372">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_direction" c:identifier="gdk_keymap_get_direction">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="333">Returns the direction of effective layout of the keymap.
The direction of a layout is the direction of the majority of its
symbols. See pango_unichar_direction().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="341">%PANGO_DIRECTION_LTR or %PANGO_DIRECTION_RTL
if it can determine the direction. %PANGO_DIRECTION_NEUTRAL
otherwise.</doc>
<type name="Pango.Direction" c:type="PangoDirection"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="335">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_keymap_get_display">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="232">Retrieves the #GdkDisplay associated to the @keymap.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="238">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="234">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_entries_for_keycode" c:identifier="gdk_keymap_get_entries_for_keycode">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="474">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().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="491">%TRUE if there were any entries</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="476">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="hardware_keycode" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="477">a keycode</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="keys" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="478">return
location for array of #GdkKeymapKey, or %NULL</doc>
<array length="3" zero-terminated="0" c:type="GdkKeymapKey**">
<type name="KeymapKey" c:type="GdkKeymapKey*"/>
</array>
</parameter>
<parameter name="keyvals" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="480">return
location for array of keyvals, or %NULL</doc>
<array length="3" zero-terminated="0" c:type="guint**">
<type name="guint" c:type="guint*"/>
</array>
</parameter>
<parameter name="n_entries" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="482">length of @keys and @keyvals</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_entries_for_keyval" c:identifier="gdk_keymap_get_entries_for_keyval">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="437">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().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="457">%TRUE if keys were found and returned</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="439">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="440">a keyval, such as %GDK_KEY_a, %GDK_KEY_Up, %GDK_KEY_Return, etc.</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="keys" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="441">return location
for an array of #GdkKeymapKey</doc>
<array length="2" zero-terminated="0" c:type="GdkKeymapKey**">
<type name="KeymapKey" c:type="GdkKeymapKey*"/>
</array>
</parameter>
<parameter name="n_keys" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="443">return location for number of elements in returned array</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_modifier_mask" c:identifier="gdk_keymap_get_modifier_mask">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="699">Returns the modifier mask the @keymap&#x2019;s windowing system backend
uses for a particular purpose.
Note that this function always returns real hardware modifiers, not
virtual ones (e.g. it will return #GDK_MOD1_MASK rather than
#GDK_META_MASK if the backend maps MOD1 to META), so there are use
cases where the return value of this function has to be transformed
by gdk_keymap_add_virtual_modifiers() in order to contain the
expected result.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="714">the modifier mask used for @intent.</doc>
<type name="ModifierType" c:type="GdkModifierType"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="701">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="intent" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="702">the use case for the modifier mask</doc>
<type name="ModifierIntent" c:type="GdkModifierIntent"/>
</parameter>
</parameters>
</method>
<method name="get_modifier_state" c:identifier="gdk_keymap_get_modifier_state">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="418">Returns the current modifier state.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="424">the current modifier state.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="420">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_num_lock_state" c:identifier="gdk_keymap_get_num_lock_state">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="386">Returns whether the Num Lock modifer is locked.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="392">%TRUE if Num Lock is on</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="388">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_scroll_lock_state" c:identifier="gdk_keymap_get_scroll_lock_state">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="402">Returns whether the Scroll Lock modifer is locked.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="408">%TRUE if Scroll Lock is on</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="404">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="have_bidi_layouts" c:identifier="gdk_keymap_have_bidi_layouts">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="353">Determines if keyboard layouts for both right-to-left and left-to-right
languages are in use.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="360">%TRUE if there are layouts in both directions, %FALSE otherwise</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="355">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
</parameters>
</method>
<method name="lookup_key" c:identifier="gdk_keymap_lookup_key">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="507">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.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="518">a keyval, or 0 if none was mapped to the given @key</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="509">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="510">a #GdkKeymapKey with keycode, group, and level initialized</doc>
<type name="KeymapKey" c:type="const GdkKeymapKey*"/>
</parameter>
</parameters>
</method>
<method name="map_virtual_modifiers" c:identifier="gdk_keymap_map_virtual_modifiers">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="640">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.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="652">%FALSE if two virtual modifiers were mapped to the
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.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="642">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="state" direction="inout" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="643">pointer to the modifier state to map</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<method name="translate_keyboard_state" c:identifier="gdk_keymap_translate_keyboard_state">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="530">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
@consumed_modifiers.
See [Groups][key-group-explanation] for an explanation of
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
@state. For convenience, #GdkEventKey already contains the translated
keyval, so this function isn&#x2019;t as useful as you might think.
@consumed_modifiers gives modifiers that should be masked outfrom @state
when comparing this key press to a hot key. For instance, on a US keyboard,
the `plus` symbol is shifted, so when comparing a key press to a
`&lt;Control&gt;plus` accelerator `&lt;Shift&gt;` should be masked out.
|[&lt;!-- language="C" --&gt;
// We want to ignore irrelevant modifiers like ScrollLock
#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;keyval, NULL, NULL, &amp;consumed);
if (keyval == GDK_PLUS &amp;&amp;
(event-&gt;state &amp; ~consumed &amp; ALL_ACCELS_MASK) == GDK_CONTROL_MASK)
// Control was pressed
]|
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;!-- language="C" --&gt;
// XXX Don&#x2019;t do this XXX
if (keyval == accel_keyval &amp;&amp;
(event-&gt;state &amp; ~consumed &amp; ALL_ACCELS_MASK) == (accel_mods &amp; ~consumed))
// Accelerator was pressed
]|
However, this did not work if multi-modifier combinations were
used in the keymap, since, for instance, `&lt;Control&gt;` would be
masked out even if only `&lt;Control&gt;&lt;Alt&gt;` was used in the keymap.
To support this usage as well as well as possible, all single
modifier 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;Control&gt;plus`, not `&lt;Control&gt;&lt;Shift&gt;plus`,</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="591">%TRUE if there was a keyval bound to the keycode/state/group</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="keymap" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="532">a #GdkKeymap</doc>
<type name="Keymap" c:type="GdkKeymap*"/>
</instance-parameter>
<parameter name="hardware_keycode" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="533">a keycode</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="state" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="534">a modifier state</doc>
<type name="ModifierType" c:type="GdkModifierType"/>
</parameter>
<parameter name="group" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="535">active keyboard group</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="keyval" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="536">return location for keyval, or %NULL</doc>
<type name="guint" c:type="guint*"/>
</parameter>
<parameter name="effective_group" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="537">return location for effective
group, or %NULL</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="level" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="539">return location for level, or %NULL</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="consumed_modifiers" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="540">return location for modifiers
that were used to determine the group or level, or %NULL</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<type name="Display"/>
</property>
<glib:signal name="direction-changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="175">The ::direction-changed signal gets emitted when the direction
of the keymap changes. See gdk_keymap_get_direction().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="keys-changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="191">The ::keys-changed signal is emitted when the mapping represented by
@keymap changes.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="state-changed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="208">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().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<record name="KeymapKey" c:type="GdkKeymapKey">
<doc xml:space="preserve" filename="../gdk/gdkkeys.h" line="40">A #GdkKeymapKey is a hardware key that can be mapped to a keyval.</doc>
<field name="keycode" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.h" line="42">the hardware keycode. This is an identifying number for a
physical key.</doc>
<type name="guint" c:type="guint"/>
</field>
<field name="group" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.h" line="44">indicates movement in a horizontal direction. Usually groups are used
for two different languages. In group 0, a key might have two English
characters, and in group 1 it might have two Hebrew characters. The Hebrew
characters will be printed on the key next to the English characters.</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="level" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.h" line="48">indicates which symbol on the key will be used, in a vertical direction.
So on a standard US keyboard, the key with the number &#x201C;1&#x201D; on it also has the
exclamation point ("!") character on it. The level indicates whether to use
the &#x201C;1&#x201D; or the &#x201C;!&#x201D; symbol. The letter keys are considered to have a lowercase
letter at level 0, and an uppercase letter at level 1, though only the
uppercase letter is printed.</doc>
<type name="gint" c:type="gint"/>
</field>
</record>
<constant name="MAX_TIMECOORD_AXES" value="128" c:type="GDK_MAX_TIMECOORD_AXES">
<type name="gint" c:type="gint"/>
</constant>
<enumeration name="MemoryFormat" glib:type-name="GdkMemoryFormat" glib:get-type="gdk_memory_format_get_type" c:type="GdkMemoryFormat">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="31">#GdkMemoryFormat describes a format that bytes can have in memory.
It describes formats by listing the contents of the memory passed to it.
So GDK_MEMORY_A8R8G8B8 will be 1 byte (8 bits) of alpha, followed by a
byte each of red, green and blue. It is not endian-dependent, so
CAIRO_FORMAT_ARGB32 is represented by different #GdkMemoryFormats on
architectures with different endiannesses.
Its naming is modelled after VkFormat (see
https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VkFormat
for details).</doc>
<member name="b8g8r8a8_premultiplied" value="0" c:identifier="GDK_MEMORY_B8G8R8A8_PREMULTIPLIED" glib:nick="b8g8r8a8-premultiplied">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="33">4 bytes; for blue, green, red, alpha.
The color values are premultiplied with the alpha value.</doc>
</member>
<member name="a8r8g8b8_premultiplied" value="1" c:identifier="GDK_MEMORY_A8R8G8B8_PREMULTIPLIED" glib:nick="a8r8g8b8-premultiplied">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="35">4 bytes; for alpha, red, green, blue.
The color values are premultiplied with the alpha value.</doc>
</member>
<member name="b8g8r8a8" value="2" c:identifier="GDK_MEMORY_B8G8R8A8" glib:nick="b8g8r8a8">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="37">4 bytes; for blue, green, red, alpha.</doc>
</member>
<member name="a8r8g8b8" value="3" c:identifier="GDK_MEMORY_A8R8G8B8" glib:nick="a8r8g8b8">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="38">4 bytes; for alpha, red, green, blue.</doc>
</member>
<member name="r8g8b8a8" value="4" c:identifier="GDK_MEMORY_R8G8B8A8" glib:nick="r8g8b8a8">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="39">4 bytes; for red, green, blue, alpha.</doc>
</member>
<member name="a8b8g8r8" value="5" c:identifier="GDK_MEMORY_A8B8G8R8" glib:nick="a8b8g8r8">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="40">4 bytes; for alpha, blue, green, red.</doc>
</member>
<member name="r8g8b8" value="6" c:identifier="GDK_MEMORY_R8G8B8" glib:nick="r8g8b8">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="41">3 bytes; for red, green, blue. The data is opaque.</doc>
</member>
<member name="b8g8r8" value="7" c:identifier="GDK_MEMORY_B8G8R8" glib:nick="b8g8r8">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="42">3 bytes; for blue, green, red. The data is opaque.</doc>
</member>
<member name="n_formats" value="8" c:identifier="GDK_MEMORY_N_FORMATS" glib:nick="n-formats">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.h" line="43">The number of formats. This value will change as
more formats get added, so do not rely on its concrete integer.</doc>
</member>
</enumeration>
<class name="MemoryTexture" c:symbol-prefix="memory_texture" c:type="GdkMemoryTexture" parent="Texture" glib:type-name="GdkMemoryTexture" glib:get-type="gdk_memory_texture_get_type" glib:type-struct="MemoryTextureClass">
<implements name="Paintable"/>
<constructor name="new" c:identifier="gdk_memory_texture_new">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="108">Creates a new texture for a blob of image data.
The #GBytes must contain @stride x @height pixels
in the given format.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="120">A newly-created #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="110">the width of the texture</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="111">the height of the texture</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="format" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="112">the format of the data</doc>
<type name="MemoryFormat" c:type="GdkMemoryFormat"/>
</parameter>
<parameter name="bytes" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="113">the #GBytes containing the pixel data</doc>
<type name="GLib.Bytes" c:type="GBytes*"/>
</parameter>
<parameter name="stride" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmemorytexture.c" line="114">rowstride for the data</doc>
<type name="gsize" c:type="gsize"/>
</parameter>
</parameters>
</constructor>
</class>
<record name="MemoryTextureClass" c:type="GdkMemoryTextureClass" disguised="1" glib:is-gtype-struct-for="MemoryTexture">
</record>
<enumeration name="ModifierIntent" glib:type-name="GdkModifierIntent" glib:get-type="gdk_modifier_intent_get_type" c:type="GdkModifierIntent">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="273">This enum is used with gdk_keymap_get_modifier_mask()
in order to determine what modifiers the
currently used windowing system backend uses for particular
purposes. For example, on X11/Windows, the Control key is used for
invoking menu shortcuts (accelerators), whereas on Apple computers
it&#x2019;s the Command key (which correspond to %GDK_CONTROL_MASK and
%GDK_MOD2_MASK, respectively).</doc>
<member name="primary_accelerator" value="0" c:identifier="GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR" glib:nick="primary-accelerator">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="275">the primary modifier used to invoke
menu accelerators.</doc>
</member>
<member name="context_menu" value="1" c:identifier="GDK_MODIFIER_INTENT_CONTEXT_MENU" glib:nick="context-menu">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="277">the modifier used to invoke context menus.
Note that mouse button 3 always triggers context menus. When this modifier
is not 0, it additionally triggers context menus when used with mouse button 1.</doc>
</member>
<member name="extend_selection" value="2" c:identifier="GDK_MODIFIER_INTENT_EXTEND_SELECTION" glib:nick="extend-selection">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="280">the modifier used to extend selections
using `modifier`-click or `modifier`-cursor-key</doc>
</member>
<member name="modify_selection" value="3" c:identifier="GDK_MODIFIER_INTENT_MODIFY_SELECTION" glib:nick="modify-selection">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="282">the modifier used to modify selections,
which in most cases means toggling the clicked item into or out of the selection.</doc>
</member>
<member name="no_text_input" value="4" c:identifier="GDK_MODIFIER_INTENT_NO_TEXT_INPUT" glib:nick="no-text-input">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="284">when any of these modifiers is pressed, the
key event cannot produce a symbol directly. This is meant to be used for
input methods, and for use cases like typeahead search.</doc>
</member>
<member name="shift_group" value="5" c:identifier="GDK_MODIFIER_INTENT_SHIFT_GROUP" glib:nick="shift-group">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="287">the modifier that switches between keyboard
groups (AltGr on X11/Windows and Option/Alt on OS X).</doc>
</member>
<member name="default_mod_mask" value="6" c:identifier="GDK_MODIFIER_INTENT_DEFAULT_MOD_MASK" glib:nick="default-mod-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="289">The set of modifier masks accepted
as modifiers in accelerators. Needed because Command is mapped to MOD2 on
OSX, which is widely used, but on X11 MOD2 is NumLock and using that for a
mod key is problematic at best.
Ref: https://bugzilla.gnome.org/show_bug.cgi?id=736125.</doc>
</member>
</enumeration>
<bitfield name="ModifierType" glib:type-name="GdkModifierType" glib:get-type="gdk_modifier_type_get_type" c:type="GdkModifierType">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="164">A set of bit-flags to indicate the state of modifier keys and mouse buttons
in various event types. Typical modifier keys are Shift, Control, Meta,
Super, Hyper, Alt, Compose, Apple, CapsLock or ShiftLock.
Like the X Window System, GDK supports 8 modifier keys and 5 mouse buttons.
GDK recognizes which of the Meta, Super or Hyper keys are mapped
to Mod2 - Mod5, and indicates this by setting %GDK_SUPER_MASK,
%GDK_HYPER_MASK or %GDK_META_MASK in the state field of key events.
Note that GDK may add internal values to events which include
reserved values such as %GDK_MODIFIER_RESERVED_13_MASK. Your code
should preserve and ignore them. You can use %GDK_MODIFIER_MASK to
remove all reserved values.
Also note that the GDK X backend interprets button press events for button
4-7 as scroll events, so %GDK_BUTTON4_MASK and %GDK_BUTTON5_MASK will never
be set.</doc>
<member name="shift_mask" value="1" c:identifier="GDK_SHIFT_MASK" glib:nick="shift-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="166">the Shift key.</doc>
</member>
<member name="lock_mask" value="2" c:identifier="GDK_LOCK_MASK" glib:nick="lock-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="167">a Lock key (depending on the modifier mapping of the
X server this may either be CapsLock or ShiftLock).</doc>
</member>
<member name="control_mask" value="4" c:identifier="GDK_CONTROL_MASK" glib:nick="control-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="169">the Control key.</doc>
</member>
<member name="mod1_mask" value="8" c:identifier="GDK_MOD1_MASK" glib:nick="mod1-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="170">the fourth modifier key (it depends on the modifier
mapping of the X server which key is interpreted as this modifier, but
normally it is the Alt key).</doc>
</member>
<member name="mod2_mask" value="16" c:identifier="GDK_MOD2_MASK" glib:nick="mod2-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="173">the fifth modifier key (it depends on the modifier
mapping of the X server which key is interpreted as this modifier).</doc>
</member>
<member name="mod3_mask" value="32" c:identifier="GDK_MOD3_MASK" glib:nick="mod3-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="175">the sixth modifier key (it depends on the modifier
mapping of the X server which key is interpreted as this modifier).</doc>
</member>
<member name="mod4_mask" value="64" c:identifier="GDK_MOD4_MASK" glib:nick="mod4-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="177">the seventh modifier key (it depends on the modifier
mapping of the X server which key is interpreted as this modifier).</doc>
</member>
<member name="mod5_mask" value="128" c:identifier="GDK_MOD5_MASK" glib:nick="mod5-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="179">the eighth modifier key (it depends on the modifier
mapping of the X server which key is interpreted as this modifier).</doc>
</member>
<member name="button1_mask" value="256" c:identifier="GDK_BUTTON1_MASK" glib:nick="button1-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="181">the first mouse button.</doc>
</member>
<member name="button2_mask" value="512" c:identifier="GDK_BUTTON2_MASK" glib:nick="button2-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="182">the second mouse button.</doc>
</member>
<member name="button3_mask" value="1024" c:identifier="GDK_BUTTON3_MASK" glib:nick="button3-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="183">the third mouse button.</doc>
</member>
<member name="button4_mask" value="2048" c:identifier="GDK_BUTTON4_MASK" glib:nick="button4-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="184">the fourth mouse button.</doc>
</member>
<member name="button5_mask" value="4096" c:identifier="GDK_BUTTON5_MASK" glib:nick="button5-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="185">the fifth mouse button.</doc>
</member>
<member name="modifier_reserved_13_mask" value="8192" c:identifier="GDK_MODIFIER_RESERVED_13_MASK" glib:nick="modifier-reserved-13-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="186">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_14_mask" value="16384" c:identifier="GDK_MODIFIER_RESERVED_14_MASK" glib:nick="modifier-reserved-14-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="187">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_15_mask" value="32768" c:identifier="GDK_MODIFIER_RESERVED_15_MASK" glib:nick="modifier-reserved-15-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="188">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_16_mask" value="65536" c:identifier="GDK_MODIFIER_RESERVED_16_MASK" glib:nick="modifier-reserved-16-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="189">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_17_mask" value="131072" c:identifier="GDK_MODIFIER_RESERVED_17_MASK" glib:nick="modifier-reserved-17-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="190">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_18_mask" value="262144" c:identifier="GDK_MODIFIER_RESERVED_18_MASK" glib:nick="modifier-reserved-18-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="191">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_19_mask" value="524288" c:identifier="GDK_MODIFIER_RESERVED_19_MASK" glib:nick="modifier-reserved-19-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="192">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_20_mask" value="1048576" c:identifier="GDK_MODIFIER_RESERVED_20_MASK" glib:nick="modifier-reserved-20-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="193">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_21_mask" value="2097152" c:identifier="GDK_MODIFIER_RESERVED_21_MASK" glib:nick="modifier-reserved-21-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="194">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_22_mask" value="4194304" c:identifier="GDK_MODIFIER_RESERVED_22_MASK" glib:nick="modifier-reserved-22-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="195">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_23_mask" value="8388608" c:identifier="GDK_MODIFIER_RESERVED_23_MASK" glib:nick="modifier-reserved-23-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="196">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_24_mask" value="16777216" c:identifier="GDK_MODIFIER_RESERVED_24_MASK" glib:nick="modifier-reserved-24-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="197">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="modifier_reserved_25_mask" value="33554432" c:identifier="GDK_MODIFIER_RESERVED_25_MASK" glib:nick="modifier-reserved-25-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="198">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="super_mask" value="67108864" c:identifier="GDK_SUPER_MASK" glib:nick="super-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="199">the Super modifier</doc>
</member>
<member name="hyper_mask" value="134217728" c:identifier="GDK_HYPER_MASK" glib:nick="hyper-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="200">the Hyper modifier</doc>
</member>
<member name="meta_mask" value="268435456" c:identifier="GDK_META_MASK" glib:nick="meta-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="201">the Meta modifier</doc>
</member>
<member name="modifier_reserved_29_mask" value="536870912" c:identifier="GDK_MODIFIER_RESERVED_29_MASK" glib:nick="modifier-reserved-29-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="202">A reserved bit flag; do not use in your own code</doc>
</member>
<member name="release_mask" value="1073741824" c:identifier="GDK_RELEASE_MASK" glib:nick="release-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="203">not used in GDK itself. GTK uses it to differentiate
between (keyval, modifiers) pairs from key press and release events.</doc>
</member>
<member name="modifier_mask" value="1543512063" c:identifier="GDK_MODIFIER_MASK" glib:nick="modifier-mask">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="205">a mask covering all modifier types.</doc>
</member>
</bitfield>
<class name="Monitor" c:symbol-prefix="monitor" c:type="GdkMonitor" parent="GObject.Object" glib:type-name="GdkMonitor" glib:get-type="gdk_monitor_get_type" glib:type-struct="MonitorClass">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="28">GdkMonitor objects represent the individual outputs that are
associated with a #GdkDisplay. GdkDisplay has APIs to enumerate
monitors with gdk_display_get_n_monitors() and gdk_display_get_monitor(), and
to find particular monitors with gdk_display_get_primary_monitor() or
gdk_display_get_monitor_at_surface().</doc>
<method name="get_display" c:identifier="gdk_monitor_get_display">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="273">Gets the display that this monitor belongs to.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="279">the display</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="275">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_geometry" c:identifier="gdk_monitor_get_geometry">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="289">Retrieves the size and position of an individual monitor within the
display coordinate space. The returned geometry is in &#x201D;application pixels&#x201D;,
not in &#x201D;device pixels&#x201D; (see gdk_monitor_get_scale_factor()).</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="291">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
<parameter name="geometry" direction="out" caller-allocates="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="292">a #GdkRectangle to be filled with the monitor geometry</doc>
<type name="Rectangle" c:type="GdkRectangle*"/>
</parameter>
</parameters>
</method>
<method name="get_height_mm" c:identifier="gdk_monitor_get_height_mm">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="356">Gets the height in millimeters of the monitor.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="362">the physical height of the monitor</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="358">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_manufacturer" c:identifier="gdk_monitor_get_manufacturer">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="372">Gets the name of the monitor's manufacturer, if available.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="378">the name of the manufacturer, or %NULL</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="374">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_model" c:identifier="gdk_monitor_get_model">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="388">Gets the a string identifying the monitor model, if available.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="394">the monitor model, or %NULL</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="390">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_refresh_rate" c:identifier="gdk_monitor_get_refresh_rate">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="426">Gets the refresh rate of the monitor, if available.
The value is in milli-Hertz, so a refresh rate of 60Hz
is returned as 60000.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="435">the refresh rate in milli-Hertz, or 0</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="428">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_scale_factor" c:identifier="gdk_monitor_get_scale_factor">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="404">Gets the internal scale factor that maps from monitor coordinates
to the actual device pixels. On traditional systems this is 1, but
on very high density outputs this can be a higher value (often 2).
This can be used if you want to create pixel based data for a
particular monitor, but most of the time you&#x2019;re drawing to a surface
where it is better to use gdk_surface_get_scale_factor() instead.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="416">the scale factor</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="406">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_subpixel_layout" c:identifier="gdk_monitor_get_subpixel_layout">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="445">Gets information about the layout of red, green and blue
primaries for each pixel in this monitor, if available.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="452">the subpixel layout</doc>
<type name="SubpixelLayout" c:type="GdkSubpixelLayout"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="447">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_width_mm" c:identifier="gdk_monitor_get_width_mm">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="340">Gets the width in millimeters of the monitor.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="346">the physical width of the monitor</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="342">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_workarea" c:identifier="gdk_monitor_get_workarea">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="308">Retrieves the size and position of the &#x201C;work area&#x201D; on a monitor
within the display coordinate space. The returned geometry is in
&#x201D;application pixels&#x201D;, not in &#x201D;device pixels&#x201D; (see
gdk_monitor_get_scale_factor()).
The work area should be considered when positioning menus and
similar popups, to avoid placing them below panels, docks or other
desktop components.
Note that not all backends may have a concept of workarea. This
function will return the monitor geometry if a workarea is not
available, or does not apply.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="310">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
<parameter name="workarea" direction="out" caller-allocates="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="311">a #GdkRectangle to be filled with
the monitor workarea</doc>
<type name="Rectangle" c:type="GdkRectangle*"/>
</parameter>
</parameters>
</method>
<method name="is_primary" c:identifier="gdk_monitor_is_primary">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="462">Gets whether this monitor should be considered primary
(see gdk_display_get_primary_monitor()).</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="469">%TRUE if @monitor is primary</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="464">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_valid" c:identifier="gdk_monitor_is_valid">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="617">Returns %TRUE if the @monitor object corresponds to a
physical monitor. The @monitor becomes invalid when the
physical monitor is unplugged or removed.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="625">%TRUE if the object corresponds to a physical monitor</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="619">a #GdkMonitor</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</instance-parameter>
</parameters>
</method>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<type name="Display"/>
</property>
<property name="geometry" transfer-ownership="none">
<type name="Rectangle"/>
</property>
<property name="height-mm" transfer-ownership="none">
<type name="gint" c:type="gint"/>
</property>
<property name="manufacturer" transfer-ownership="none">
<type name="utf8" c:type="gchar*"/>
</property>
<property name="model" transfer-ownership="none">
<type name="utf8" c:type="gchar*"/>
</property>
<property name="refresh-rate" transfer-ownership="none">
<type name="gint" c:type="gint"/>
</property>
<property name="scale-factor" transfer-ownership="none">
<type name="gint" c:type="gint"/>
</property>
<property name="subpixel-layout" transfer-ownership="none">
<type name="SubpixelLayout"/>
</property>
<property name="valid" transfer-ownership="none">
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="width-mm" transfer-ownership="none">
<type name="gint" c:type="gint"/>
</property>
<property name="workarea" transfer-ownership="none">
<type name="Rectangle"/>
</property>
<glib:signal name="invalidate" when="first">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.c" line="257">The ::invalidate signal gets emitted when the output represented
by @monitor gets disconnected.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<record name="MonitorClass" c:type="GdkMonitorClass" disguised="1" glib:is-gtype-struct-for="Monitor">
</record>
<enumeration name="NotifyType" glib:type-name="GdkNotifyType" glib:get-type="gdk_notify_type_get_type" c:type="GdkNotifyType">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="277">Specifies the kind of crossing for enter and leave events.
See the X11 protocol specification of LeaveNotify for
full details of crossing event generation.</doc>
<member name="ancestor" value="0" c:identifier="GDK_NOTIFY_ANCESTOR" glib:nick="ancestor">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="279">the surface is entered from an ancestor or
left towards an ancestor.</doc>
</member>
<member name="virtual" value="1" c:identifier="GDK_NOTIFY_VIRTUAL" glib:nick="virtual">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="281">the pointer moves between an ancestor and an
inferior of the surface.</doc>
</member>
<member name="inferior" value="2" c:identifier="GDK_NOTIFY_INFERIOR" glib:nick="inferior">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="283">the surface is entered from an inferior or
left towards an inferior.</doc>
</member>
<member name="nonlinear" value="3" c:identifier="GDK_NOTIFY_NONLINEAR" glib:nick="nonlinear">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="285">the surface is entered from or left towards
a surface which is neither an ancestor nor an inferior.</doc>
</member>
<member name="nonlinear_virtual" value="4" c:identifier="GDK_NOTIFY_NONLINEAR_VIRTUAL" glib:nick="nonlinear-virtual">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="287">the pointer moves between two surfaces
which are not ancestors of each other and the surface is part of
the ancestor chain between one of these surfaces and their least
common ancestor.</doc>
</member>
<member name="unknown" value="5" c:identifier="GDK_NOTIFY_UNKNOWN" glib:nick="unknown">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="291">an unknown type of enter/leave event occurred.</doc>
</member>
</enumeration>
<constant name="PARENT_RELATIVE" value="1" c:type="GDK_PARENT_RELATIVE">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="56">A special value, indicating that the background
for a surface should be inherited from the parent surface.</doc>
<type name="gint" c:type="gint"/>
</constant>
<constant name="PRIORITY_REDRAW" value="120" c:type="GDK_PRIORITY_REDRAW">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="56">This is the priority that the idle handler processing surface updates
is given in the
[GLib Main Loop][glib-The-Main-Event-Loop].</doc>
<type name="gint" c:type="gint"/>
</constant>
<interface name="Paintable" c:symbol-prefix="paintable" c:type="GdkPaintable" glib:type-name="GdkPaintable" glib:get-type="gdk_paintable_get_type" glib:type-struct="PaintableInterface">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="32">#GdkPaintable is a simple interface used by GDK and GDK to represent
objects that can be painted anywhere at any size without requiring any
sort of layout. The interface is inspired by similar concepts elsewhere,
such as [ClutterContent](https://developer.gnome.org/clutter/stable/ClutterContent.html),
[HTML/CSS Paint Sources](https://www.w3.org/TR/css-images-4/#paint-source),
or [SVG Paint Servers](https://www.w3.org/TR/SVG2/pservers.html).
A #GdkPaintable can be snapshot at any time and size using
gdk_paintable_snapshot(). How the paintable interprets that size and if it
scales or centers itself into the given rectangle is implementation defined,
though if you are implementing a #GdkPaintable and don't know what to do, it
is suggested that you scale your paintable ignoring any potential aspect ratio.
The contents that a #GdkPaintable produces may depend on the #GdkSnapshot passed
to it. For example, paintables may decide to use more detailed images on higher
resolution screens or when OpenGL is available. A #GdkPaintable will however
always produce the same output for the same snapshot.
A #GdkPaintable may change its contents, meaning that it will now produce a
different output with the same snpashot. Once that happens, it will call
gdk_paintable_invalidate_contents() which will emit the
#GdkPaintable::invalidate-contents signal.
If a paintable is known to never change its contents, it will set the
%GDK_PAINTABLE_STATIC_CONTENT flag. If a consumer cannot deal with changing
contents, it may call gdk_paintable_get_static_image() which will return a
static paintable and use that.
A paintable can report an intrinsic (or preferred) size or aspect ratio it
wishes to be rendered at, though it doesn't have to. Consumers of the interface
can use this information to layout thepaintable appropriately.
Just like the contents, the size of a paintable can change. A paintable will
indicate this by calling gdk_paintable_invalidate_size() which will emit the
#GdkPaintable::invalidate-size signal.
And just like for contents, if a paintable is known to never change its size,
it will set the %GDK_PAINTABLE_STATIC_SIZE flag.
Besides API for applications, there are some functions that are only
useful for implementing subclasses and should not be used by applications:
gdk_paintable_invalidate_contents(),
gdk_paintable_invalidate_size(),
gdk_paintable_new_empty().</doc>
<function name="new_empty" c:identifier="gdk_paintable_new_empty">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="627">Returns a paintable that has the given intrinsic size and draws nothing.
This is often useful for implementing the GdkPaintableClass:get_current_image()
virtual function when the paintable is in an incomplete state (like a
#GtkMediaStream before receiving the first frame).</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="637">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</return-value>
<parameters>
<parameter name="intrinsic_width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="629">The intrinsic width to report. Can be 0 for no width.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="intrinsic_height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="630">The intrinsic height to report. Can be 0 for no height.</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</function>
<virtual-method name="get_current_image" invoker="get_current_image">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="229">Gets an immutable paintable for the current contents displayed by @paintable.
This is useful when you want to retain the current state of an animation, for
example to take a screenshot of a running animation.
If the @paintable is already immutable, it will return itself.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="240">An immutable paintable for the current
contents of @paintable.</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="231">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="get_flags" invoker="get_flags">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="257">Get flags for the paintable. This is oftentimes useful for optimizations.
See #GdkPaintableFlags for the flags and what they mean.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="265">The #GdkPaintableFlags for this paintable.</doc>
<type name="PaintableFlags" c:type="GdkPaintableFlags"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="259">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="get_intrinsic_aspect_ratio" invoker="get_intrinsic_aspect_ratio">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="332">Gets the preferred aspect ratio the @paintable would like to be displayed at.
The aspect ration is the width divided by the height, so a value of 0.5 means
that the @paintable prefers to be displayed twice as high as it is wide.
Consumers of this interface can use this to preserve aspect ratio when displaying
this paintable.
This is a purely informational value and does not in any way limit the values
that may be passed to gdk_paintable_snapshot().
Usually when a @paintable returns non-0 values from
gdk_paintable_get_intrinsic_width() and gdk_paintable_get_intrinsic_height()
the aspect ratio should conform to those values, though that is not required.
If the @paintable does not have a preferred aspect ratio, it returns 0.0.
Negative values are never returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="352">the intrinsic aspect ratio of @paintable or 0.0 if none.</doc>
<type name="gdouble" c:type="double"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="334">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="get_intrinsic_height" invoker="get_intrinsic_height">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="305">Gets the preferred height the @paintable would like to be displayed at.
Consumers of this interface can use this to reserve enough space to draw
the paintable.
This is a purely informational value and does not in any way limit the values
that may be passed to gdk_paintable_snapshot().
If the @paintable does not have a preferred height, it returns 0. Negative
values are never returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="319">the intrinsic height of @paintable or 0 if none.</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="307">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="get_intrinsic_width" invoker="get_intrinsic_width">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="278">Gets the preferred width the @paintable would like to be displayed at.
Consumers of this interface can use this to reserve enough space to draw
the paintable.
This is a purely informational value and does not in any way limit the values
that may be passed to gdk_paintable_snapshot().
If the @paintable does not have a preferred width, it returns 0. Negative
values are never returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="292">the intrinsic width of @paintable or 0 if none.</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="280">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="snapshot" invoker="snapshot">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="189">Snapshots the given paintable with the given @width and @height at the
current (0,0) offset of the @snapshot. If @width and @height are not larger
than zero, this function will do nothing.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="191">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
<parameter name="snapshot" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="192">a #GdkSnapshot to snapshot to</doc>
<type name="Snapshot" c:type="GdkSnapshot*"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="193">width to snapshot in</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="194">height to snapshot in</doc>
<type name="gdouble" c:type="double"/>
</parameter>
</parameters>
</virtual-method>
<method name="compute_concrete_size" c:identifier="gdk_paintable_compute_concrete_size">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="409">Applies the sizing algorithm outlined in
https://drafts.csswg.org/css-images-3/#default-sizing
to the given @paintable. See that link for more details.
It is not necessary to call this function when both @specified_width
and @specified_height are known, but it is useful to call this
function in GtkWidget:measure implementations to compute the
other dimension when only one dimension is given.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="411">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
<parameter name="specified_width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="412">the width @paintable could be drawn into or
0.0 if unknown</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="specified_height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="414">the height @paintable could be drawn into or
0.0 if unknown</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="default_width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="416">the width @paintable would be drawn into if
no other constraints were given</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="default_height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="418">the height @paintable would be drawn into if
no other constraints were given</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="concrete_width" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="420">will be set to the concrete width
computed.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
<parameter name="concrete_height" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="422">will be set to the concrete height
computed.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
</parameters>
</method>
<method name="get_current_image" c:identifier="gdk_paintable_get_current_image">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="229">Gets an immutable paintable for the current contents displayed by @paintable.
This is useful when you want to retain the current state of an animation, for
example to take a screenshot of a running animation.
If the @paintable is already immutable, it will return itself.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="240">An immutable paintable for the current
contents of @paintable.</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="231">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_flags" c:identifier="gdk_paintable_get_flags">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="257">Get flags for the paintable. This is oftentimes useful for optimizations.
See #GdkPaintableFlags for the flags and what they mean.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="265">The #GdkPaintableFlags for this paintable.</doc>
<type name="PaintableFlags" c:type="GdkPaintableFlags"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="259">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_intrinsic_aspect_ratio" c:identifier="gdk_paintable_get_intrinsic_aspect_ratio">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="332">Gets the preferred aspect ratio the @paintable would like to be displayed at.
The aspect ration is the width divided by the height, so a value of 0.5 means
that the @paintable prefers to be displayed twice as high as it is wide.
Consumers of this interface can use this to preserve aspect ratio when displaying
this paintable.
This is a purely informational value and does not in any way limit the values
that may be passed to gdk_paintable_snapshot().
Usually when a @paintable returns non-0 values from
gdk_paintable_get_intrinsic_width() and gdk_paintable_get_intrinsic_height()
the aspect ratio should conform to those values, though that is not required.
If the @paintable does not have a preferred aspect ratio, it returns 0.0.
Negative values are never returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="352">the intrinsic aspect ratio of @paintable or 0.0 if none.</doc>
<type name="gdouble" c:type="double"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="334">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_intrinsic_height" c:identifier="gdk_paintable_get_intrinsic_height">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="305">Gets the preferred height the @paintable would like to be displayed at.
Consumers of this interface can use this to reserve enough space to draw
the paintable.
This is a purely informational value and does not in any way limit the values
that may be passed to gdk_paintable_snapshot().
If the @paintable does not have a preferred height, it returns 0. Negative
values are never returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="319">the intrinsic height of @paintable or 0 if none.</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="307">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_intrinsic_width" c:identifier="gdk_paintable_get_intrinsic_width">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="278">Gets the preferred width the @paintable would like to be displayed at.
Consumers of this interface can use this to reserve enough space to draw
the paintable.
This is a purely informational value and does not in any way limit the values
that may be passed to gdk_paintable_snapshot().
If the @paintable does not have a preferred width, it returns 0. Negative
values are never returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="292">the intrinsic width of @paintable or 0 if none.</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="280">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="invalidate_contents" c:identifier="gdk_paintable_invalidate_contents">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="365">Called by implementations of #GdkPaintable to invalidate their contents.
Unless the contents are invalidated, implementations must guarantee that
multiple calls to GdkPaintable::snapshot produce the same output.
This function will emit the GdkPaintable::invalidate-contents signal.
If a @paintable reports the %GDK_PAINTABLE_STATIC_CONTENTS flag,
it must not call this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="367">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="invalidate_size" c:identifier="gdk_paintable_invalidate_size">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="387">Called by implementations of #GdkPaintable to invalidate their size.
As long as the size is not invalidated, @paintable must return the same values
for its width, height and intrinsic height.
This function will emit the GdkPaintable::invalidate-size signal.
If a @paintable reports the %GDK_PAINTABLE_STATIC_SIZE flag,
it must not call this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="389">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
</parameters>
</method>
<method name="snapshot" c:identifier="gdk_paintable_snapshot">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="189">Snapshots the given paintable with the given @width and @height at the
current (0,0) offset of the @snapshot. If @width and @height are not larger
than zero, this function will do nothing.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="191">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</instance-parameter>
<parameter name="snapshot" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="192">a #GdkSnapshot to snapshot to</doc>
<type name="Snapshot" c:type="GdkSnapshot*"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="193">width to snapshot in</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="194">height to snapshot in</doc>
<type name="gdouble" c:type="double"/>
</parameter>
</parameters>
</method>
<glib:signal name="invalidate-contents" when="last">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="149">Emitted when the contents of the @paintable change.
Examples for such an event would be videos changing to the next frame or
the icon theme for an icon changing.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
<glib:signal name="invalidate-size" when="last">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="167">Emitted when the intrinsic size of the @paintable changes. This means the values
reported by at least one of gdk_paintable_get_intrinsic_width(),
gdk_paintable_get_intrinsic_height() or gdk_paintable_get_intrinsic_aspect_ratio()
has changed.
Examples for such an event would be a paintable displaying the contents of a toplevel
surface being resized.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</interface>
<bitfield name="PaintableFlags" glib:type-name="GdkPaintableFlags" glib:get-type="gdk_paintable_flags_get_type" c:type="GdkPaintableFlags">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.h" line="37">Flags about this object. Implementations use these for optimizations
such as caching.</doc>
<member name="size" value="1" c:identifier="GDK_PAINTABLE_STATIC_SIZE" glib:nick="size">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.h" line="39">The size is immutable.
The GdkPaintable::invalidate-size signal will never be
emitted.</doc>
</member>
<member name="contents" value="2" c:identifier="GDK_PAINTABLE_STATIC_CONTENTS" glib:nick="contents">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.h" line="42">The content is immutable.
The GdkPaintable::invalidate-content signal will never be
emitted.</doc>
</member>
</bitfield>
<record name="PaintableInterface" c:type="GdkPaintableInterface" glib:is-gtype-struct-for="Paintable">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.h" line="54">The list of functions that can be implemented for the #GdkPaintable interface.
Note that apart from the first function, no function is mandatory to implement,
though it is a good idea to implement GdkPaintable:get_current_image() for
non-static paintables and GdkPaintable:get_flags() if the image is not dynamic
as the default implementation returns no flags and that will make the
implementation likely quite slow.</doc>
<field name="g_iface" readable="0" private="1">
<type name="GObject.TypeInterface" c:type="GTypeInterface"/>
</field>
<field name="snapshot">
<callback name="snapshot">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="191">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</parameter>
<parameter name="snapshot" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="192">a #GdkSnapshot to snapshot to</doc>
<type name="Snapshot" c:type="GdkSnapshot*"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="193">width to snapshot in</doc>
<type name="gdouble" c:type="double"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="194">height to snapshot in</doc>
<type name="gdouble" c:type="double"/>
</parameter>
</parameters>
</callback>
</field>
<field name="get_current_image">
<callback name="get_current_image">
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="240">An immutable paintable for the current
contents of @paintable.</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</return-value>
<parameters>
<parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="231">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="get_flags">
<callback name="get_flags">
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="265">The #GdkPaintableFlags for this paintable.</doc>
<type name="PaintableFlags" c:type="GdkPaintableFlags"/>
</return-value>
<parameters>
<parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="259">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="get_intrinsic_width">
<callback name="get_intrinsic_width">
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="292">the intrinsic width of @paintable or 0 if none.</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="280">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="get_intrinsic_height">
<callback name="get_intrinsic_height">
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="319">the intrinsic height of @paintable or 0 if none.</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="307">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="get_intrinsic_aspect_ratio">
<callback name="get_intrinsic_aspect_ratio">
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="352">the intrinsic aspect ratio of @paintable or 0.0 if none.</doc>
<type name="gdouble" c:type="double"/>
</return-value>
<parameters>
<parameter name="paintable" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="334">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</parameter>
</parameters>
</callback>
</field>
</record>
<record name="Point" c:type="GdkPoint">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="69">Defines the x and y coordinates of a point.</doc>
<field name="x" writable="1">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="71">the x coordinate of the point</doc>
<type name="gint" c:type="gint"/>
</field>
<field name="y" writable="1">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="72">the y coordinate of the point</doc>
<type name="gint" c:type="gint"/>
</field>
</record>
<record name="RGBA" c:type="GdkRGBA" glib:type-name="GdkRGBA" glib:get-type="gdk_rgba_get_type" c:symbol-prefix="rgba">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="51">A #GdkRGBA is used to represent a (possibly translucent)
color, in a way that is compatible with cairo&#x2019;s notion of color.</doc>
<field name="red" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="53">The intensity of the red channel from 0.0 to 1.0 inclusive</doc>
<type name="gdouble" c:type="gdouble"/>
</field>
<field name="green" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="54">The intensity of the green channel from 0.0 to 1.0 inclusive</doc>
<type name="gdouble" c:type="gdouble"/>
</field>
<field name="blue" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="55">The intensity of the blue channel from 0.0 to 1.0 inclusive</doc>
<type name="gdouble" c:type="gdouble"/>
</field>
<field name="alpha" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="56">The opacity of the color from 0.0 for completely translucent to
1.0 for opaque</doc>
<type name="gdouble" c:type="gdouble"/>
</field>
<method name="copy" c:identifier="gdk_rgba_copy">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="63">Makes a copy of a #GdkRGBA.
The result must be freed through gdk_rgba_free().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="71">A newly allocated #GdkRGBA, with the same contents as @rgba</doc>
<type name="RGBA" c:type="GdkRGBA*"/>
</return-value>
<parameters>
<instance-parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="65">a #GdkRGBA</doc>
<type name="RGBA" c:type="const GdkRGBA*"/>
</instance-parameter>
</parameters>
</method>
<method name="equal" c:identifier="gdk_rgba_equal">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="326">Compares two RGBA colors.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="333">%TRUE if the two colors compare equal</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="p1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="328">a #GdkRGBA pointer</doc>
<type name="RGBA" c:type="gconstpointer"/>
</instance-parameter>
<parameter name="p2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="329">another #GdkRGBA pointer</doc>
<type name="RGBA" c:type="gconstpointer"/>
</parameter>
</parameters>
</method>
<method name="free" c:identifier="gdk_rgba_free">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="79">Frees a #GdkRGBA created with gdk_rgba_copy()</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="81">a #GdkRGBA</doc>
<type name="RGBA" c:type="GdkRGBA*"/>
</instance-parameter>
</parameters>
</method>
<method name="hash" c:identifier="gdk_rgba_hash">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="306">A hash function suitable for using for a hash
table that stores #GdkRGBAs.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="313">The hash value for @p</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="p" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="308">a #GdkRGBA pointer</doc>
<type name="RGBA" c:type="gconstpointer"/>
</instance-parameter>
</parameters>
</method>
<method name="is_clear" c:identifier="gdk_rgba_is_clear">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="91">Checks if an @rgba value is transparent. That is, drawing with the value
would not produce any change.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="98">%TRUE if the @rgba is clear</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="93">a #GdkRGBA</doc>
<type name="RGBA" c:type="const GdkRGBA*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_opaque" c:identifier="gdk_rgba_is_opaque">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="106">Checks if an @rgba value is opaque. That is, drawing with the value
will not retain any results from previous contents.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="113">%TRUE if the @rgba is opaque</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="108">a #GdkRGBA</doc>
<type name="RGBA" c:type="const GdkRGBA*"/>
</instance-parameter>
</parameters>
</method>
<method name="parse" c:identifier="gdk_rgba_parse">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="163">Parses a textual representation of a color, filling in
the @red, @green, @blue and @alpha fields of the @rgba #GdkRGBA.
The string can be either one of:
- A standard name (Taken from the X11 rgb.txt file).
- A hexadecimal value in the form &#x201C;\#rgb&#x201D;, &#x201C;\#rrggbb&#x201D;,
&#x201C;\#rrrgggbbb&#x201D; or &#x201D;\#rrrrggggbbbb&#x201D;
- A RGB color in the form &#x201C;rgb(r,g,b)&#x201D; (In this case the color will
have full opacity)
- A RGBA color in the form &#x201C;rgba(r,g,b,a)&#x201D;
Where &#x201C;r&#x201D;, &#x201C;g&#x201D;, &#x201C;b&#x201D; and &#x201C;a&#x201D; are respectively the red, green, blue and
alpha color values. In the last two cases, &#x201C;r&#x201D;, &#x201C;g&#x201D;, and &#x201C;b&#x201D; are either integers
in the range 0 to 255 or percentage values in the range 0% to 100%, and
a is a floating point value in the range 0 to 1.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="184">%TRUE if the parsing succeeded</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="165">the #GdkRGBA to fill in</doc>
<type name="RGBA" c:type="GdkRGBA*"/>
</instance-parameter>
<parameter name="spec" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="166">the string specifying the color</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="to_string" c:identifier="gdk_rgba_to_string">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="353">Returns a textual specification of @rgba in the form
`rgb(r,g,b)` or
`rgba(r g,b,a)`,
where &#x201C;r&#x201D;, &#x201C;g&#x201D;, &#x201C;b&#x201D; and &#x201C;a&#x201D; represent the red, green,
blue and alpha values respectively. &#x201C;r&#x201D;, &#x201C;g&#x201D;, and &#x201C;b&#x201D; are
represented as integers in the range 0 to 255, and &#x201C;a&#x201D;
is represented as a floating point value in the range 0 to 1.
These string forms are string forms that are supported by
the CSS3 colors module, and can be parsed by gdk_rgba_parse().
Note that this string representation may lose some
precision, since &#x201C;r&#x201D;, &#x201C;g&#x201D; and &#x201C;b&#x201D; are represented as 8-bit
integers. If this is a concern, you should use a
different representation.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="373">A newly allocated text string</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<instance-parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrgba.c" line="355">a #GdkRGBA</doc>
<type name="RGBA" c:type="const GdkRGBA*"/>
</instance-parameter>
</parameters>
</method>
</record>
<record name="Rectangle" c:type="GdkRectangle" glib:type-name="GdkRectangle" glib:get-type="gdk_rectangle_get_type" c:symbol-prefix="rectangle">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="83">Defines the position and size of a rectangle. It is identical to
#cairo_rectangle_int_t.</doc>
<field name="x" writable="1">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="85">the x coordinate of the top left corner</doc>
<type name="gint" c:type="int"/>
</field>
<field name="y" writable="1">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="86">the y coordinate of the top left corner</doc>
<type name="gint" c:type="int"/>
</field>
<field name="width" writable="1">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="87">the width of the rectangle</doc>
<type name="gint" c:type="int"/>
</field>
<field name="height" writable="1">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="88">the height of the rectangle</doc>
<type name="gint" c:type="int"/>
</field>
<method name="contains_point" c:identifier="gdk_rectangle_contains_point">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="139">Returns #TRUE if @rect contains the point described by @x and @y.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="147">#TRUE if @rect contains the point</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="rect" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="141">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="142">X coordinate</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="143">Y coordinate</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</method>
<method name="equal" c:identifier="gdk_rectangle_equal">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="162">Checks if the two given rectangles are equal.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="169">%TRUE if the rectangles are equal.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="rect1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="164">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</instance-parameter>
<parameter name="rect2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="165">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
</parameters>
</method>
<method name="intersect" c:identifier="gdk_rectangle_intersect">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="84">Calculates the intersection of two rectangles. It is allowed for
@dest to be the same as either @src1 or @src2. If the rectangles
do not intersect, @dest&#x2019;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.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="98">%TRUE if the rectangles intersect.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="src1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="86">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</instance-parameter>
<parameter name="src2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="87">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
<parameter name="dest" direction="out" caller-allocates="1" transfer-ownership="none" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="88">return location for the
intersection of @src1 and @src2, or %NULL</doc>
<type name="Rectangle" c:type="GdkRectangle*"/>
</parameter>
</parameters>
</method>
<method name="union" c:identifier="gdk_rectangle_union">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="51">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.
Note that this function does not ignore 'empty' rectangles (ie. with
zero width or height).</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="src1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="53">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</instance-parameter>
<parameter name="src2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="54">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
<parameter name="dest" direction="out" caller-allocates="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkrectangle.c" line="55">return location for the union of @src1 and @src2</doc>
<type name="Rectangle" c:type="GdkRectangle*"/>
</parameter>
</parameters>
</method>
</record>
<enumeration name="ScrollDirection" glib:type-name="GdkScrollDirection" glib:get-type="gdk_scroll_direction_get_type" c:type="GdkScrollDirection">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="257">Specifies the direction for scroll events.</doc>
<member name="up" value="0" c:identifier="GDK_SCROLL_UP" glib:nick="up">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="259">the surface is scrolled up.</doc>
</member>
<member name="down" value="1" c:identifier="GDK_SCROLL_DOWN" glib:nick="down">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="260">the surface is scrolled down.</doc>
</member>
<member name="left" value="2" c:identifier="GDK_SCROLL_LEFT" glib:nick="left">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="261">the surface is scrolled to the left.</doc>
</member>
<member name="right" value="3" c:identifier="GDK_SCROLL_RIGHT" glib:nick="right">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="262">the surface is scrolled to the right.</doc>
</member>
<member name="smooth" value="4" c:identifier="GDK_SCROLL_SMOOTH" glib:nick="smooth">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="263">the scrolling is determined by the delta values
in scroll events. See gdk_event_get_scroll_deltas()</doc>
</member>
</enumeration>
<class name="Seat" c:symbol-prefix="seat" c:type="GdkSeat" parent="GObject.Object" abstract="1" glib:type-name="GdkSeat" glib:get-type="gdk_seat_get_type">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="29">The #GdkSeat object represents a collection of input devices
that belong to a user.</doc>
<method name="get_capabilities" c:identifier="gdk_seat_get_capabilities">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="214">Returns the capabilities this #GdkSeat currently has.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="220">the seat capabilities</doc>
<type name="SeatCapabilities" c:type="GdkSeatCapabilities"/>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="216">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_seat_get_display">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="403">Returns the #GdkDisplay this seat belongs to.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="409">a #GdkDisplay. This object is owned by GTK
and must not be freed.</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="405">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_keyboard" c:identifier="gdk_seat_get_keyboard">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="367">Returns the master device that routes keyboard events.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="373">a master #GdkDevice with keyboard
capabilities. This object is owned by GTK and must not be freed.</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="369">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_master_pointers" c:identifier="gdk_seat_get_master_pointers">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="449">Returns all master pointers with the given capabilities driven by this @seat.
On most backends this function will return a list with a single element (meaning
that all input devices drive the same onscreen cursor).
In other backends where there can possibly be multiple foci (eg. wayland),
this function will return all master #GdkDevices that represent these.</doc>
<return-value transfer-ownership="container">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="461">A list
of master pointing devices</doc>
<type name="GLib.List" c:type="GList*">
<type name="Device"/>
</type>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="451">The #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
<parameter name="capabilities" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="452">Queried capabilities</doc>
<type name="SeatCapabilities" c:type="GdkSeatCapabilities"/>
</parameter>
</parameters>
</method>
<method name="get_pointer" c:identifier="gdk_seat_get_pointer">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="347">Returns the master device that routes pointer events.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="353">a master #GdkDevice with pointer
capabilities. This object is owned by GTK and must not be freed.</doc>
<type name="Device" c:type="GdkDevice*"/>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="349">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_slaves" c:identifier="gdk_seat_get_slaves">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="324">Returns the slave devices that match the given capabilities.</doc>
<return-value transfer-ownership="container">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="331">A list of #GdkDevices.
The list must be freed with g_list_free(), the elements are owned
by GDK and must not be freed.</doc>
<type name="GLib.List" c:type="GList*">
<type name="Device"/>
</type>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="326">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
<parameter name="capabilities" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="327">capabilities to get devices for</doc>
<type name="SeatCapabilities" c:type="GdkSeatCapabilities"/>
</parameter>
</parameters>
</method>
<method name="grab" c:identifier="gdk_seat_grab">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="233">Grabs the seat so that all events corresponding to the given @capabilities
are passed to this application until the seat is ungrabbed with gdk_seat_ungrab(),
or the surface becomes hidden. This overrides any previous grab on the
seat by this client.
As a rule of thumb, if a grab is desired over %GDK_SEAT_CAPABILITY_POINTER,
all other "pointing" capabilities (eg. %GDK_SEAT_CAPABILITY_TOUCH) should
be grabbed too, so the user is able to interact with all of those while
the grab holds, you should thus use %GDK_SEAT_CAPABILITY_ALL_POINTING most
commonly.
Grabs are used for operations which need complete control over the
events corresponding to the given capabilities. For example in GTK this
is used for Drag and Drop operations, popup menus and such.
Note that if the event mask of a #GdkSurface has selected both button press
and button release events, or touch begin and touch end, then a press event
will cause an automatic grab until the button is released, equivalent to a
grab on the surface with @owner_events set to %TRUE. This is done because most
applications expect to receive paired press and release events.
If you set up anything at the time you take the grab that needs to be
cleaned up when the grab ends, you should handle the #GdkEventGrabBroken
events that are emitted when the grab ends unvoluntarily.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="280">%GDK_GRAB_SUCCESS if the grab was successful.</doc>
<type name="GrabStatus" c:type="GdkGrabStatus"/>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="235">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="236">the #GdkSurface which will own the grab</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="capabilities" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="237">capabilities that will be grabbed</doc>
<type name="SeatCapabilities" c:type="GdkSeatCapabilities"/>
</parameter>
<parameter name="owner_events" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="238">if %FALSE then all device events are reported with respect to
@surface and are only reported if selected by @event_mask. If
%TRUE then pointer events for this application are reported
as normal, but pointer events outside this application are
reported with respect to @surface and only if selected by
@event_mask. In either mode, unreported events are discarded.</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
<parameter name="cursor" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="244">the cursor to display while the grab is active. If
this is %NULL then the normal cursors are used for
@surface and its descendants, and the cursor for @surface is used
elsewhere.</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</parameter>
<parameter name="event" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="248">the event that is triggering the grab, or %NULL if none
is available.</doc>
<type name="Event" c:type="const GdkEvent*"/>
</parameter>
<parameter name="prepare_func" transfer-ownership="none" nullable="1" allow-none="1" scope="call" closure="6">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="250">function to
prepare the surface to be grabbed, it can be %NULL if @surface is
visible before this call.</doc>
<type name="SeatGrabPrepareFunc" c:type="GdkSeatGrabPrepareFunc"/>
</parameter>
<parameter name="prepare_func_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="253">user data to pass to @prepare_func</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</method>
<method name="ungrab" c:identifier="gdk_seat_ungrab">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="307">Releases a grab added through gdk_seat_grab().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="309">a #GdkSeat</doc>
<type name="Seat" c:type="GdkSeat*"/>
</instance-parameter>
</parameters>
</method>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="192">#GdkDisplay of this seat.</doc>
<type name="Display"/>
</property>
<field name="parent_instance">
<type name="GObject.Object" c:type="GObject"/>
</field>
<glib:signal name="device-added" when="last">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="118">The ::device-added signal is emitted when a new input
device is related to this seat.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="121">the newly added #GdkDevice.</doc>
<type name="Device"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="device-removed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="136">The ::device-removed signal is emitted when an
input device is removed (e.g. unplugged).</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="139">the just removed #GdkDevice.</doc>
<type name="Device"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="tool-added" when="last">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="154">The ::tool-added signal is emitted whenever a new tool
is made known to the seat. The tool may later be assigned
to a device (i.e. on proximity with a tablet). The device
will emit the #GdkDevice::tool-changed signal accordingly.
A same tool may be used by several devices.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="tool" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="157">the new #GdkDeviceTool known to the seat</doc>
<type name="DeviceTool"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="tool-removed" when="last">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="175">This signal is emitted whenever a tool is no longer known
to this @seat.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="tool" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.c" line="178">the just removed #GdkDeviceTool</doc>
<type name="DeviceTool"/>
</parameter>
</parameters>
</glib:signal>
</class>
<bitfield name="SeatCapabilities" glib:type-name="GdkSeatCapabilities" glib:get-type="gdk_seat_capabilities_get_type" c:type="GdkSeatCapabilities">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="38">Flags describing the seat capabilities.</doc>
<member name="none" value="0" c:identifier="GDK_SEAT_CAPABILITY_NONE" glib:nick="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="40">No input capabilities</doc>
</member>
<member name="pointer" value="1" c:identifier="GDK_SEAT_CAPABILITY_POINTER" glib:nick="pointer">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="41">The seat has a pointer (e.g. mouse)</doc>
</member>
<member name="touch" value="2" c:identifier="GDK_SEAT_CAPABILITY_TOUCH" glib:nick="touch">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="42">The seat has touchscreen(s) attached</doc>
</member>
<member name="tablet_stylus" value="4" c:identifier="GDK_SEAT_CAPABILITY_TABLET_STYLUS" glib:nick="tablet-stylus">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="43">The seat has drawing tablet(s) attached</doc>
</member>
<member name="keyboard" value="8" c:identifier="GDK_SEAT_CAPABILITY_KEYBOARD" glib:nick="keyboard">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="44">The seat has keyboard(s) attached</doc>
</member>
<member name="tablet_pad" value="16" c:identifier="GDK_SEAT_CAPABILITY_TABLET_PAD" glib:nick="tablet-pad">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="45">The seat has drawing tablet pad(s) attached</doc>
</member>
<member name="all_pointing" value="7" c:identifier="GDK_SEAT_CAPABILITY_ALL_POINTING" glib:nick="all-pointing">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="46">The union of all pointing capabilities</doc>
</member>
<member name="all" value="15" c:identifier="GDK_SEAT_CAPABILITY_ALL" glib:nick="all">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="47">The union of all capabilities</doc>
</member>
</bitfield>
<callback name="SeatGrabPrepareFunc" c:type="GdkSeatGrabPrepareFunc">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="62">Type of the callback used to set up @surface so it can be
grabbed. A typical action would be ensuring the surface is
visible, although there's room for other initialization
actions.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="seat" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="64">the #GdkSeat being grabbed</doc>
<type name="Seat" c:type="GdkSeat*"/>
</parameter>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="65">the #GdkSurface being grabbed</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1" closure="2">
<doc xml:space="preserve" filename="../gdk/gdkseat.h" line="66">user data passed in gdk_seat_grab()</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</callback>
<class name="Snapshot" c:symbol-prefix="snapshot" c:type="GdkSnapshot" parent="GObject.Object" abstract="1" glib:type-name="GdkSnapshot" glib:get-type="gdk_snapshot_get_type" glib:type-struct="SnapshotClass">
</class>
<record name="SnapshotClass" c:type="GdkSnapshotClass" disguised="1" glib:is-gtype-struct-for="Snapshot">
</record>
<enumeration name="SubpixelLayout" glib:type-name="GdkSubpixelLayout" glib:get-type="gdk_subpixel_layout_get_type" c:type="GdkSubpixelLayout">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="42">This enumeration describes how the red, green and blue components
of physical pixels on an output device are laid out.</doc>
<member name="unknown" value="0" c:identifier="GDK_SUBPIXEL_LAYOUT_UNKNOWN" glib:nick="unknown">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="44">The layout is not known</doc>
</member>
<member name="none" value="1" c:identifier="GDK_SUBPIXEL_LAYOUT_NONE" glib:nick="none">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="45">Not organized in this way</doc>
</member>
<member name="horizontal_rgb" value="2" c:identifier="GDK_SUBPIXEL_LAYOUT_HORIZONTAL_RGB" glib:nick="horizontal-rgb">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="46">The layout is horizontal, the order is RGB</doc>
</member>
<member name="horizontal_bgr" value="3" c:identifier="GDK_SUBPIXEL_LAYOUT_HORIZONTAL_BGR" glib:nick="horizontal-bgr">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="47">The layout is horizontal, the order is BGR</doc>
</member>
<member name="vertical_rgb" value="4" c:identifier="GDK_SUBPIXEL_LAYOUT_VERTICAL_RGB" glib:nick="vertical-rgb">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="48">The layout is vertical, the order is RGB</doc>
</member>
<member name="vertical_bgr" value="5" c:identifier="GDK_SUBPIXEL_LAYOUT_VERTICAL_BGR" glib:nick="vertical-bgr">
<doc xml:space="preserve" filename="../gdk/gdkmonitor.h" line="49">The layout is vertical, the order is BGR</doc>
</member>
</enumeration>
<class name="Surface" c:symbol-prefix="surface" c:type="GdkSurface" parent="GObject.Object" abstract="1" glib:type-name="GdkSurface" glib:get-type="gdk_surface_get_type" glib:type-struct="SurfaceClass">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="57">A #GdkSurface is a (usually) rectangular region on the screen.
It&#x2019;s a low-level object, used to implement high-level objects such as
#GtkWidget and #GtkWindow on the GTK level. A #GtkWindow is a toplevel
surface, the thing a user might think of as a &#x201C;window&#x201D; with a titlebar
and so on; a #GtkWindow may contain many sub-GdkSurfaces.</doc>
<constructor name="new_child" c:identifier="gdk_surface_new_child">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="861">Creates a new client-side child surface.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="868">the new #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<parameter name="parent" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="863">the parent surface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="position" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="864">placement of the surface inside @parent</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_popup" c:identifier="gdk_surface_new_popup">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="804">Creates a new toplevel popup surface. The surface will bypass surface
management.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="812">the new #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="806">the display to create the surface on</doc>
<type name="Display" c:type="GdkDisplay*"/>
</parameter>
<parameter name="position" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="807">position of the surface on screen</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_temp" c:identifier="gdk_surface_new_temp">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="833">Creates a new toplevel temporary surface. The surface will be
situated off-screen and not handle output.
You most likely do not want to use this function.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="842">the new #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="835">the display to create the surface on</doc>
<type name="Display" c:type="GdkDisplay*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_toplevel" c:identifier="gdk_surface_new_toplevel">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="774">Creates a new toplevel surface. The surface will be managed by the surface
manager.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="783">the new #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="776">the display to create the surface on</doc>
<type name="Display" c:type="GdkDisplay*"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="777">width of new surface</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="778">height of new surface</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</constructor>
<function name="constrain_size" c:identifier="gdk_surface_constrain_size">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1928">Constrains a desired width and height according to a
set of geometry hints (such as minimum and maximum size).</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="geometry" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1930">a #GdkGeometry structure</doc>
<type name="Geometry" c:type="GdkGeometry*"/>
</parameter>
<parameter name="flags" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1931">a mask indicating what portions of @geometry are set</doc>
<type name="SurfaceHints" c:type="GdkSurfaceHints"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1932">desired width of surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1933">desired height of the surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="new_width" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1934">location to store resulting width</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="new_height" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1935">location to store resulting height</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</function>
<method name="beep" c:identifier="gdk_surface_beep">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3638">Emits a short beep associated to @surface in the appropriate
display, if supported. Otherwise, emits a short beep on
the display just as gdk_display_beep().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3640">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="begin_move_drag" c:identifier="gdk_surface_begin_move_drag">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4802">Begins a surface move operation (for a toplevel surface).
This function assumes that the drag is controlled by the
client pointer device, use gdk_surface_begin_move_drag_for_device()
to begin a drag with a different device.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4804">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="button" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4805">the button being used to drag, or 0 for a keyboard-initiated drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4806">surface X coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4807">surface Y coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="timestamp" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4808">timestamp of mouse click that began the drag</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<method name="begin_move_drag_for_device" c:identifier="gdk_surface_begin_move_drag_for_device">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4779">Begins a surface move operation (for a toplevel surface).</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4781">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4782">the device used for the operation</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
<parameter name="button" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4783">the button being used to drag, or 0 for a keyboard-initiated drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4784">surface X coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4785">surface Y coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="timestamp" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4786">timestamp of mouse click that began the drag</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<method name="begin_resize_drag" c:identifier="gdk_surface_begin_resize_drag">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4747">Begins a surface resize operation (for a toplevel surface).
This function assumes that the drag is controlled by the
client pointer device, use gdk_surface_begin_resize_drag_for_device()
to begin a drag with a different device.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4749">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="edge" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4750">the edge or corner from which the drag is started</doc>
<type name="SurfaceEdge" c:type="GdkSurfaceEdge"/>
</parameter>
<parameter name="button" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4751">the button being used to drag, or 0 for a keyboard-initiated drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4752">surface X coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4753">surface Y coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="timestamp" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4754">timestamp of mouse click that began the drag (use gdk_event_get_time())</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<method name="begin_resize_drag_for_device" c:identifier="gdk_surface_begin_resize_drag_for_device">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4722">Begins a surface resize operation (for a toplevel surface).
You might use this function to implement a &#x201C;window resize grip,&#x201D;</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4724">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="edge" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4725">the edge or corner from which the drag is started</doc>
<type name="SurfaceEdge" c:type="GdkSurfaceEdge"/>
</parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4726">the device used for the operation</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
<parameter name="button" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4727">the button being used to drag, or 0 for a keyboard-initiated drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4728">surface X coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4729">surface Y coordinate of mouse click that began the drag</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="timestamp" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4730">timestamp of mouse click that began the drag (use gdk_event_get_time())</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<method name="coords_from_parent" c:identifier="gdk_surface_coords_from_parent">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3134">Transforms surface coordinates from a parent surface to a child
surface.
Calling this function is equivalent to subtracting the return
values of gdk_surface_get_position() from the parent coordinates.
See also: gdk_surface_coords_to_parent()</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3136">a child surface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="parent_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3137">X coordinate in parent&#x2019;s coordinate system</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
<parameter name="parent_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3138">Y coordinate in parent&#x2019;s coordinate system</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3139">return location for X coordinate in child&#x2019;s coordinate system</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3140">return location for Y coordinate in child&#x2019;s coordinate system</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="coords_to_parent" c:identifier="gdk_surface_coords_to_parent">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3102">Transforms surface coordinates from a child surface to its parent
surface. Calling this function is equivalent to adding the return
values of gdk_surface_get_position() to the child coordinates.
See also: gdk_surface_coords_from_parent()</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3104">a child surface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3105">X coordinate in child&#x2019;s coordinate system</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3106">Y coordinate in child&#x2019;s coordinate system</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
<parameter name="parent_x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3107">return location for X coordinate
in parent&#x2019;s coordinate system, or %NULL</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="parent_y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3109">return location for Y coordinate
in parent&#x2019;s coordinate system, or %NULL</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</method>
<method name="create_cairo_context" c:identifier="gdk_surface_create_cairo_context">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1400">Creates a new #GdkCairoContext for rendering on @surface.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1406">the newly created #GdkCairoContext</doc>
<type name="CairoContext" c:type="GdkCairoContext*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1402">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="create_gl_context" c:identifier="gdk_surface_create_gl_context" throws="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1364">Creates a new #GdkGLContext matching the
framebuffer format to the visual of the #GdkSurface. The context
is disconnected from any particular surface or surface.
If the creation of the #GdkGLContext failed, @error will be set.
Before using the returned #GdkGLContext, you will need to
call gdk_gl_context_make_current() or gdk_gl_context_realize().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1378">the newly created #GdkGLContext, or
%NULL on error</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1366">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="create_similar_surface" c:identifier="gdk_surface_create_similar_surface">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4022">Create a new surface that is as compatible as possible with the
given @surface. For example the new surface will have the same
fallback resolution and font options as @surface. Generally, the new
surface will also use the same backend as @surface, unless that is
not possible for some reason. The type of the returned surface may
be examined with cairo_surface_get_type().
Initially the surface contents are all 0 (transparent if contents
have transparency, black otherwise.)</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4039">a pointer to the newly allocated surface. The caller
owns the surface and should call cairo_surface_destroy() when done
with it.
This function always returns a valid pointer, but it will return a
pointer to a &#x201C;nil&#x201D; surface if @other is already in an error state
or any other error occurs.</doc>
<type name="cairo.Surface" c:type="cairo_surface_t*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4024">surface to make new surface similar to</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="content" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4025">the content for the new surface</doc>
<type name="cairo.Content" c:type="cairo_content_t"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4026">width of the new surface</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4027">height of the new surface</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</method>
<method name="create_vulkan_context" c:identifier="gdk_surface_create_vulkan_context" throws="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1422">Creates a new #GdkVulkanContext for rendering on @surface.
If the creation of the #GdkVulkanContext failed, @error will be set.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1431">the newly created #GdkVulkanContext, or
%NULL on error</doc>
<type name="VulkanContext" c:type="GdkVulkanContext*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1424">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="deiconify" c:identifier="gdk_surface_deiconify">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4381">Attempt to deiconify (unminimize) @surface. On X11 the window manager may
choose to ignore the request to deiconify. When using GTK,
use gtk_window_deiconify() instead of the #GdkSurface variant. Or better yet,
you probably want to use gtk_window_present_with_time(), which raises the surface, focuses it,
unminimizes it, and puts it on the current desktop.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4383">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="destroy" c:identifier="gdk_surface_destroy">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1042">Destroys the window system resources associated with @surface and decrements @surface's
reference count. The window system resources for all children of @surface are also
destroyed, but the children&#x2019;s reference counts are not decremented.
Note that a surface will not be destroyed automatically when its reference count
reaches zero. You must call this function yourself before that happens.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1044">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="focus" c:identifier="gdk_surface_focus">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4068">Sets keyboard focus to @surface. In most cases, gtk_window_present_with_time()
should be used on a #GtkWindow, rather than calling this function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4070">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="timestamp" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4071">timestamp of the event triggering the surface focus</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<method name="freeze_updates" c:identifier="gdk_surface_freeze_updates">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1863">Temporarily freezes a surface such that it won&#x2019;t receive expose
events. The surface will begin receiving expose events again when
gdk_surface_thaw_updates() is called. If gdk_surface_freeze_updates()
has been called more than once, gdk_surface_thaw_updates() must be called
an equal number of times to begin processing exposes.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1865">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="fullscreen" c:identifier="gdk_surface_fullscreen">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4479">Moves the surface into fullscreen mode. This means the
surface covers the entire screen and is above any panels
or task bars.
If the surface was already fullscreen, then this function does nothing.
On X11, asks the window manager to put @surface in a fullscreen
state, if the window manager supports this operation. Not all
window managers support this, and some deliberately ignore it or
don&#x2019;t have a concept of &#x201C;fullscreen&#x201D;; so you can&#x2019;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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4481">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="fullscreen_on_monitor" c:identifier="gdk_surface_fullscreen_on_monitor">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4503">Moves the surface into fullscreen mode on the given monitor. This means
the surface covers the entire screen and is above any panels or task bars.
If the surface was already fullscreen, then this function does nothing.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4505">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="monitor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4506">Which monitor to display fullscreen on.</doc>
<type name="Monitor" c:type="GdkMonitor*"/>
</parameter>
</parameters>
</method>
<method name="get_accept_focus" c:identifier="gdk_surface_get_accept_focus">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3351">Determines whether or not the desktop environment shuld be hinted that
the surface does not want to receive input focus.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3358">whether or not the surface should receive input focus.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3353">a toplevel #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_children" c:identifier="gdk_surface_get_children">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1211">Gets the list of children of @surface known to GDK.
This function only returns children created via GDK,
so for example it&#x2019;s useless when used with the root window;
it only returns surfaces an application created itself.
The returned list must be freed, but the elements in the
list need not be.</doc>
<return-value transfer-ownership="container">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1223">
list of child surfaces inside @surface</doc>
<type name="GLib.List" c:type="GList*">
<type name="Surface"/>
</type>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1213">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_cursor" c:identifier="gdk_surface_get_cursor">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2779">Retrieves a #GdkCursor pointer for the cursor currently set on the
specified #GdkSurface, or %NULL. If the return value is %NULL then
there is no custom cursor set on the specified surface, and it is
using the cursor for its parent surface.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2788">a #GdkCursor, or %NULL. The
returned object is owned by the #GdkSurface and should not be
unreferenced directly. Use gdk_surface_set_cursor() to unset the
cursor of the surface</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2781">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_decorations" c:identifier="gdk_surface_get_decorations">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4678">Returns the decorations set on the GdkSurface with
gdk_surface_set_decorations().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4686">%TRUE if the surface has decorations set, %FALSE otherwise.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4680">The toplevel #GdkSurface to get the decorations from</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="decorations" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4681">The surface decorations will be written here</doc>
<type name="WMDecoration" c:type="GdkWMDecoration*"/>
</parameter>
</parameters>
</method>
<method name="get_device_cursor" c:identifier="gdk_surface_get_device_cursor">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2863">Retrieves a #GdkCursor pointer for the @device currently set on the
specified #GdkSurface, or %NULL. If the return value is %NULL then
there is no custom cursor set on the specified surface, and it is
using the cursor for its parent surface.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2873">a #GdkCursor, or %NULL. The
returned object is owned by the #GdkSurface and should not be
unreferenced directly. Use gdk_surface_set_cursor() to unset the
cursor of the surface</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2865">a #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2866">a master, pointer #GdkDevice.</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
</parameters>
</method>
<method name="get_device_position" c:identifier="gdk_surface_get_device_position">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2057">Obtains the current device position in doubles and modifier state.
The position is given in coordinates relative to the upper left
corner of @surface.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2069">The surface underneath @device
(as with gdk_device_get_surface_at_position()), or %NULL if the
surface is not known to GDK.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2059">a #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2060">pointer #GdkDevice to query to.</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2061">return location for the X coordinate of @device, or %NULL.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2062">return location for the Y coordinate of @device, or %NULL.</doc>
<type name="gdouble" c:type="double*"/>
</parameter>
<parameter name="mask" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2063">return location for the modifier mask, or %NULL.</doc>
<type name="ModifierType" c:type="GdkModifierType*"/>
</parameter>
</parameters>
</method>
<method name="get_display" c:identifier="gdk_surface_get_display">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1090">Gets the #GdkDisplay associated with a #GdkSurface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1096">the #GdkDisplay associated with @surface</doc>
<type name="Display" c:type="GdkDisplay*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1092">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_focus_on_map" c:identifier="gdk_surface_get_focus_on_map">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3368">Determines whether or not the desktop environment should be hinted that the
surface does not want to receive input focus when it is mapped.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3375">whether or not the surface wants to receive input focus when
it is mapped.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3370">a toplevel #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_clock" c:identifier="gdk_surface_get_frame_clock">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5007">Gets the frame clock for the surface. The frame clock for a surface
never changes unless the surface is reparented to a new toplevel
surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5015">the frame clock</doc>
<type name="FrameClock" c:type="GdkFrameClock*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5009">surface to get frame clock for</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_frame_extents" c:identifier="gdk_surface_get_frame_extents">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4259">Obtains the bounding box of the surface, including window manager
titlebar/borders if any. The frame position is given in root window
coordinates. To get the position of the surface itself (rather than
the frame) in root window coordinates, use gdk_surface_get_origin().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4261">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="rect" direction="out" caller-allocates="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4262">rectangle to fill with bounding box of the surface frame</doc>
<type name="Rectangle" c:type="GdkRectangle*"/>
</parameter>
</parameters>
</method>
<method name="get_fullscreen_mode" c:identifier="gdk_surface_get_fullscreen_mode">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4569">Obtains the #GdkFullscreenMode of the @surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4575">The #GdkFullscreenMode applied to the surface when fullscreen.</doc>
<type name="FullscreenMode" c:type="GdkFullscreenMode"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4571">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_geometry" c:identifier="gdk_surface_get_geometry">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2921">Any of the return location arguments to this function may be %NULL,
if you aren&#x2019;t interested in getting the value of that field.
The X and Y coordinates returned are relative to the parent surface
of @surface, which for toplevels usually means relative to the
surface 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 @surface; this may be out-of-sync
with the position of @surface delivered in the most-recently-processed
#GdkEventConfigure. gdk_surface_get_position() in contrast gets the
position from the most recent configure event.
Note: If @surface is not a toplevel, it is much better
to call gdk_surface_get_position(), gdk_surface_get_width() and
gdk_surface_get_height() instead, because it avoids the roundtrip to
the X server and because these functions support the full 32-bit
coordinate space, whereas gdk_surface_get_geometry() is restricted to
the 16-bit coordinates of X11.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2923">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2924">return location for X coordinate of surface (relative to its parent)</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2925">return location for Y coordinate of surface (relative to its parent)</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="width" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2926">return location for width of surface</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="height" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2927">return location for height of surface</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_height" c:identifier="gdk_surface_get_height">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3014">Returns the height of the given @surface.
On the X11 platform the returned size is the size reported in the
most-recently-processed configure event, rather than the current
size on the X server.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3024">The height of @surface</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3016">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_modal_hint" c:identifier="gdk_surface_get_modal_hint">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3334">Determines whether or not the window manager is hinted that @surface
has modal behaviour.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3341">whether or not the surface has the modal hint set.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3336">A toplevel #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_origin" c:identifier="gdk_surface_get_origin">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3034">Obtains the position of a surface in root window coordinates.
(Compare with gdk_surface_get_position() and
gdk_surface_get_geometry() which return the position of a surface
relative to its parent surface.)</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3045">not meaningful, ignore</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3036">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3037">return location for X coordinate</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3038">return location for Y coordinate</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_parent" c:identifier="gdk_surface_get_parent">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1163">Obtains the parent of @surface, as known to GDK. Does not query the
X server; thus this returns the parent as passed to gdk_surface_new(),
not the actual parent. This should never matter unless you&#x2019;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.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1174">parent of @surface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1165">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_pass_through" c:identifier="gdk_surface_get_pass_through">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3295">Returns whether input to the surface is passed through to the surface
below.
See gdk_surface_set_pass_through() for details</doc>
<return-value transfer-ownership="none">
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3297">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_position" c:identifier="gdk_surface_get_position">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1135">Obtains the position of the surface as reported in the
most-recently-processed #GdkEventConfigure. Contrast with
gdk_surface_get_geometry() which queries the X server for the
current surface position, regardless of which events have been
received or processed.
The position coordinates are relative to the surface&#x2019;s parent surface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1137">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1138">X coordinate of surface</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1139">Y coordinate of surface</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_root_coords" c:identifier="gdk_surface_get_root_coords">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3064">Obtains the position of a surface position in root
window coordinates. This is similar to
gdk_surface_get_origin() but allows you to pass
in any position in the surface, not just the origin.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3066">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3067">X coordinate in surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3068">Y coordinate in surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="root_x" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3069">return location for X coordinate</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="root_y" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3070">return location for Y coordinate</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_root_origin" c:identifier="gdk_surface_get_root_origin">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4233">Obtains the top-left corner of the window manager frame in root
surface coordinates.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4235">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4236">return location for X position of surface frame</doc>
<type name="gint" c:type="gint*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4237">return location for Y position of surface frame</doc>
<type name="gint" c:type="gint*"/>
</parameter>
</parameters>
</method>
<method name="get_scale_factor" c:identifier="gdk_surface_get_scale_factor">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5029">Returns the internal scale factor that maps from surface coordiantes
to the actual device pixels. On traditional systems this is 1, but
on very high density outputs this can be a higher value (often 2).
A higher value means that drawing is automatically scaled up to
a higher resolution, so any code doing drawing will automatically look
nicer. However, if you are supplying pixel-based data the scale
value can be used to determine whether to use a pixel resource
with higher resolution data.
The scale of a surface may change during runtime, if this happens
a configure event will be sent to the toplevel surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5046">the scale factor</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5031">surface to get scale factor for</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_state" c:identifier="gdk_surface_get_state">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1297">Gets the bitwise OR of the currently active surface state flags,
from the #GdkSurfaceState enumeration.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1304">surface state bitfield</doc>
<type name="SurfaceState" c:type="GdkSurfaceState"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1299">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_support_multidevice" c:identifier="gdk_surface_get_support_multidevice">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3697">Returns %TRUE if the surface is aware of the existence of multiple
devices.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3704">%TRUE if the surface handles multidevice features.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3699">a #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_surface_type" c:identifier="gdk_surface_get_surface_type">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1074">Gets the type of the surface. See #GdkSurfaceType.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1080">type of surface</doc>
<type name="SurfaceType" c:type="GdkSurfaceType"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1076">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_toplevel" c:identifier="gdk_surface_get_toplevel">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1184">Gets the toplevel surface that&#x2019;s an ancestor of @surface.
Any surface type but %GDK_SURFACE_CHILD is considered a
toplevel surface, as is a %GDK_SURFACE_CHILD surface that
has a root surface as parent.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1194">the toplevel surface containing @surface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1186">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_type_hint" c:identifier="gdk_surface_get_type_hint">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4103">This function returns the type hint set for a surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4109">The type hint set for @surface</doc>
<type name="SurfaceTypeHint" c:type="GdkSurfaceTypeHint"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4105">A toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_width" c:identifier="gdk_surface_get_width">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2994">Returns the width of the given @surface.
On the X11 platform the returned size is the size reported in the
most-recently-processed configure event, rather than the current
size on the X server.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3004">The width of @surface</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2996">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="has_native" c:identifier="gdk_surface_has_native">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1119">Checks whether the surface has a native surface or not.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1125">%TRUE if the @surface has a native surface, %FALSE otherwise.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1121">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="hide" c:identifier="gdk_surface_hide">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2438">For toplevel surfaces, withdraws them, so they will no longer be
known to the window manager; for all surfaces, unmaps them, so
they won&#x2019;t be displayed. Normally done automatically as
part of gtk_widget_hide().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2440">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="iconify" c:identifier="gdk_surface_iconify">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4364">Asks to iconify (minimize) @surface. 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 @surface is a toplevel surface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4366">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="input_shape_combine_region" c:identifier="gdk_surface_input_shape_combine_region">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3166">Like gdk_surface_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 surface below @surface.
An input shape is typically used with RGBA surfaces.
The alpha channel of the surface defines which pixels are
invisible and allows for nicely antialiased borders,
and the input shape controls where the surface is
&#x201C;clickable&#x201D;.
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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3168">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="shape_region" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3169">region of surface to be non-transparent</doc>
<type name="cairo.Region" c:type="const cairo_region_t*"/>
</parameter>
<parameter name="offset_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3170">X position of @shape_region in @surface coordinates</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="offset_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3171">Y position of @shape_region in @surface coordinates</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="is_destroyed" c:identifier="gdk_surface_is_destroyed">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1105">Check to see if a surface is destroyed..</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1111">%TRUE if the surface is destroyed</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1107">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_input_only" c:identifier="gdk_surface_is_input_only">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3386">Determines whether or not the surface is an input only surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3392">%TRUE if @surface is input only</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3388">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_viewable" c:identifier="gdk_surface_is_viewable">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1275">Check if the surface and all ancestors of the surface are
mapped. (This is not necessarily "viewable" in the X sense, since
we only check as far as we have GDK surface parents, not to the root
surface.)</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1284">%TRUE if the surface is viewable</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1277">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="is_visible" c:identifier="gdk_surface_is_visible">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1258">Checks whether the surface has been mapped (with gdk_surface_show() or
gdk_surface_show_unraised()).</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1265">%TRUE if the surface is mapped</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1260">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="lower" c:identifier="gdk_surface_lower">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2317">Lowers @surface to the bottom of the Z-order (stacking order), so that
other surfaces with the same parent surface appear above @surface.
This is true whether or not the other surfaces are visible.
If @surface is a toplevel, the window manager may choose to deny the
request to move the surface in the Z-order, gdk_surface_lower() only
requests the restack, does not guarantee it.
Note that gdk_surface_show() raises the surface again, so don&#x2019;t call this
function before gdk_surface_show(). (Try gdk_surface_show_unraised().)</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2319">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="maximize" c:identifier="gdk_surface_maximize">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4433">Maximizes the surface. If the surface was already maximized, then
this function does nothing.
On X11, asks the window manager to maximize @surface, if the window
manager supports this operation. Not all window managers support
this, and some deliberately ignore it or don&#x2019;t have a concept of
&#x201C;maximized&#x201D;; so you can&#x2019;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 surface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4435">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="merge_child_input_shapes" c:identifier="gdk_surface_merge_child_input_shapes">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3312">Merges the input shape masks for any child surfaces into the
input shape mask for @surface. i.e. the union of all input masks
for @surface and its children will become the new input mask
for @surface. See gdk_surface_input_shape_combine_region().
This function is distinct from gdk_surface_set_child_input_shapes()
because it includes @surface&#x2019;s input shape mask in the set of
shapes to be merged.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3314">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="move" c:identifier="gdk_surface_move">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2637">Repositions a surface relative to its parent surface.
For toplevel surfaces, 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 surfaces,
the move will reliably succeed.
If you&#x2019;re also planning to resize the surface, use gdk_surface_move_resize()
to both move and resize simultaneously, for a nicer visual effect.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2639">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2640">X coordinate relative to surface&#x2019;s parent</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2641">Y coordinate relative to surface&#x2019;s parent</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="move_resize" c:identifier="gdk_surface_move_resize">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2684">Equivalent to calling gdk_surface_move() and gdk_surface_resize(),
except that both operations are performed at once, avoiding strange
visual effects. (i.e. the user may be able to see the surface first
move, then resize, if you don&#x2019;t use gdk_surface_move_resize().)</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2686">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2687">new X position relative to surface&#x2019;s parent</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2688">new Y position relative to surface&#x2019;s parent</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2689">new width</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2690">new height</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="move_to_rect" c:identifier="gdk_surface_move_to_rect">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2707">Moves @surface to @rect, aligning their anchor points.
@rect is relative to the top-left corner of the surface that @surface is
transient for. @rect_anchor and @surface_anchor determine anchor points on
@rect and @surface to pin together. @rect's anchor point can optionally be
offset by @rect_anchor_dx and @rect_anchor_dy, which is equivalent to
offsetting the position of @surface.
@anchor_hints determines how @surface will be moved if the anchor points cause
it to move off-screen. For example, %GDK_ANCHOR_FLIP_X will replace
%GDK_GRAVITY_NORTH_WEST with %GDK_GRAVITY_NORTH_EAST and vice versa if
@surface extends beyond the left or right edges of the monitor.
Connect to the #GdkSurface::moved-to-rect signal to find out how it was
actually positioned.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2709">the #GdkSurface to move</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="rect" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2710">the destination #GdkRectangle to align @surface with</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
<parameter name="rect_anchor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2711">the point on @rect to align with @surface's anchor point</doc>
<type name="Gravity" c:type="GdkGravity"/>
</parameter>
<parameter name="surface_anchor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2712">the point on @surface to align with @rect's anchor point</doc>
<type name="Gravity" c:type="GdkGravity"/>
</parameter>
<parameter name="anchor_hints" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2713">positioning hints to use when limited on space</doc>
<type name="AnchorHints" c:type="GdkAnchorHints"/>
</parameter>
<parameter name="rect_anchor_dx" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2714">horizontal offset to shift @surface, i.e. @rect's anchor
point</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="rect_anchor_dy" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2716">vertical offset to shift @surface, i.e. @rect's anchor point</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="peek_children" c:identifier="gdk_surface_peek_children">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1237">Like gdk_surface_get_children(), but does not copy the list of
children, so the list does not need to be freed.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1244">
a reference to the list of child surfaces in @surface</doc>
<type name="GLib.List" c:type="GList*">
<type name="Surface"/>
</type>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1239">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="queue_expose" c:identifier="gdk_surface_queue_expose">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1753">Forces an expose event for @surface to be scheduled.
If the invalid area of @surface is empty, an expose event will
still be emitted. Its invalid region will be empty.
This function is useful for implementations that track invalid
regions on their own.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1755">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="raise" c:identifier="gdk_surface_raise">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2243">Raises @surface to the top of the Z-order (stacking order), so that
other surfaces with the same parent surface appear below @surface.
This is true whether or not the surfaces are visible.
If @surface is a toplevel, the window manager may choose to deny the
request to move the surface in the Z-order, gdk_surface_raise() only
requests the restack, does not guarantee it.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2245">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="register_dnd" c:identifier="gdk_surface_register_dnd">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4882">Registers a surface as a potential drop destination.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4884">a #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="resize" c:identifier="gdk_surface_resize">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2660">Resizes @surface; for toplevel surfaces, asks the window manager to resize
the surface. The window manager may not allow the resize. When using GTK,
use gtk_window_resize() instead of this low-level GDK function.
Surfaces may not be resized below 1x1.
If you&#x2019;re also planning to move the surface, use gdk_surface_move_resize()
to both move and resize simultaneously, for a nicer visual effect.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2662">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2663">new width of the surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2664">new height of the surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="restack" c:identifier="gdk_surface_restack">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2346">Changes the position of @surface 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 surface.
If @surface is a toplevel, the window manager may choose to deny the
request to move the surface in the Z-order, gdk_surface_restack() only
requests the restack, does not guarantee it.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2348">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="sibling" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2349">a #GdkSurface that is a sibling of @surface, or %NULL</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="above" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2350">a boolean</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_accept_focus" c:identifier="gdk_surface_set_accept_focus">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4277">Setting @accept_focus to %FALSE hints the desktop environment that the
surface doesn&#x2019;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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4279">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="accept_focus" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4280">%TRUE if the surface should receive input focus</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_child_input_shapes" c:identifier="gdk_surface_set_child_input_shapes">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3245">Sets the input shape mask of @surface to the union of input shape masks
for all children of @surface, ignoring the input shape mask of @surface
itself. Contrast with gdk_surface_merge_child_input_shapes() which includes
the input shape mask of @surface in the masks to be merged.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3247">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="set_cursor" c:identifier="gdk_surface_set_cursor">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2801">Sets the default mouse pointer for a #GdkSurface.
Note that @cursor must be for the same display as @surface.
Use gdk_cursor_new_from_name() or gdk_cursor_new_from_texture() to
create the cursor. To make the cursor invisible, use %GDK_BLANK_CURSOR.
Passing %NULL for the @cursor argument to gdk_surface_set_cursor() means
that @surface will use the cursor of its parent surface. Most surfaces
should use this default.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2803">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="cursor" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2804">a cursor</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</parameter>
</parameters>
</method>
<method name="set_decorations" c:identifier="gdk_surface_set_decorations">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4650">&#x201C;Decorations&#x201D; are the features the window manager adds to a toplevel #GdkSurface.
This function sets the traditional Motif window manager hints that tell the
window manager which decorations you would like your surface 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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4652">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="decorations" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4653">decoration hint mask</doc>
<type name="WMDecoration" c:type="GdkWMDecoration"/>
</parameter>
</parameters>
</method>
<method name="set_device_cursor" c:identifier="gdk_surface_set_device_cursor">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2890">Sets a specific #GdkCursor for a given device when it gets inside @surface.
Use gdk_cursor_new_fromm_name() or gdk_cursor_new_from_texture() to create
the cursor. To make the cursor invisible, use %GDK_BLANK_CURSOR. Passing
%NULL for the @cursor argument to gdk_surface_set_cursor() means that
@surface will use the cursor of its parent surface. Most surfaces should
use this default.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2892">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="device" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2893">a master, pointer #GdkDevice</doc>
<type name="Device" c:type="GdkDevice*"/>
</parameter>
<parameter name="cursor" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2894">a #GdkCursor</doc>
<type name="Cursor" c:type="GdkCursor*"/>
</parameter>
</parameters>
</method>
<method name="set_focus_on_map" c:identifier="gdk_surface_set_focus_on_map">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4295">Setting @focus_on_map to %FALSE hints the desktop environment that the
surface doesn&#x2019;t want to receive input focus when it is mapped.
focus_on_map should be turned off for surfaces that aren&#x2019;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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4297">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="focus_on_map" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4298">%TRUE if the surface should receive input focus when mapped</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_fullscreen_mode" c:identifier="gdk_surface_set_fullscreen_mode">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4528">Specifies whether the @surface should span over all monitors (in a multi-head
setup) or only the current monitor when in fullscreen mode.
The @mode argument is from the #GdkFullscreenMode enumeration.
If #GDK_FULLSCREEN_ON_ALL_MONITORS is specified, the fullscreen @surface will
span over all monitors of the display.
On X11, searches through the list of monitors display the ones
which delimit the 4 edges of the entire display and will ask the window
manager to span the @surface over these monitors.
If the XINERAMA extension is not available or not usable, this function
has no effect.
Not all window managers support this, so you can&#x2019;t rely on the fullscreen
surface to span over the multiple monitors when #GDK_FULLSCREEN_ON_ALL_MONITORS
is specified.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4530">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="mode" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4531">fullscreen mode</doc>
<type name="FullscreenMode" c:type="GdkFullscreenMode"/>
</parameter>
</parameters>
</method>
<method name="set_functions" c:identifier="gdk_surface_set_functions">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4695">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&#x2019;t include #GDK_FUNC_ALL, it indicates which functions to
enable.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4697">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="functions" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4698">bitmask of operations to allow on @surface</doc>
<type name="WMFunction" c:type="GdkWMFunction"/>
</parameter>
</parameters>
</method>
<method name="set_geometry_hints" c:identifier="gdk_surface_set_geometry_hints">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4137">Sets the geometry hints for @surface. 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 surfaceing system about
acceptable sizes for a toplevel surface. 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 surface to the provided values and
constrain programatic resizing via gdk_surface_resize() or
gdk_surface_move_resize().
Note that on X11, this effect has no effect on surfaces
of type %GDK_SURFACE_TEMP since these surfaces are not resizable
by the user.
Since you can&#x2019;t count on the windowing system doing the
constraints for programmatic resizes, you should generally
call gdk_surface_constrain_size() yourself to determine
appropriate sizes.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4139">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="geometry" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4140">geometry hints</doc>
<type name="Geometry" c:type="const GdkGeometry*"/>
</parameter>
<parameter name="geom_mask" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4141">bitmask indicating fields of @geometry to pay attention to</doc>
<type name="SurfaceHints" c:type="GdkSurfaceHints"/>
</parameter>
</parameters>
</method>
<method name="set_icon_list" c:identifier="gdk_surface_set_icon_list">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4316">Sets a list of icons for the surface. One of these will be used
to represent the surface 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.
Note that some platforms don't support surface icons.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4318">The #GdkSurface toplevel surface to set the icon of.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="surfaces" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4319">
A list of image surfaces, of different sizes.</doc>
<type name="GLib.List" c:type="GList*">
<type name="Texture"/>
</type>
</parameter>
</parameters>
</method>
<method name="set_icon_name" c:identifier="gdk_surface_set_icon_name">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4339">Surfaces 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_surface_set_title()
will not update the icon title.
Using %NULL for @name unsets the icon title; further calls to
gdk_surface_set_title() will again update the icon title as well.
Note that some platforms don't support surface icons.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4341">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4342">name of surface while iconified (minimized)</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_keep_above" c:identifier="gdk_surface_set_keep_above">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4606">Set if @surface must be kept above other surfaces. If the
surface was already above, then this function does nothing.
On X11, asks the window manager to keep @surface above, if the window
manager supports this operation. Not all window managers support
this, and some deliberately ignore it or don&#x2019;t have a concept of
&#x201C;keep above&#x201D;; so you can&#x2019;t rely on the surface being kept above.
But it will happen with most standard window managers,
and GDK makes a best effort to get it to happen.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4608">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="setting" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4609">whether to keep @surface above other surfaces</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_keep_below" c:identifier="gdk_surface_set_keep_below">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4628">Set if @surface must be kept below other surfaces. If the
surface was already below, then this function does nothing.
On X11, asks the window manager to keep @surface below, if the window
manager supports this operation. Not all window managers support
this, and some deliberately ignore it or don&#x2019;t have a concept of
&#x201C;keep below&#x201D;; so you can&#x2019;t rely on the surface being kept below.
But it will happen with most standard window managers,
and GDK makes a best effort to get it to happen.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4630">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="setting" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4631">whether to keep @surface below other surfaces</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_modal_hint" c:identifier="gdk_surface_set_modal_hint">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4117">The application can use this hint to tell the window manager
that a certain surface has modal behaviour. The window manager
can use this information to handle modal surfaces in a special
way.
You should only use this on surfaces for which you have
previously called gdk_surface_set_transient_for()</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4119">A toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="modal" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4120">%TRUE if the surface is modal, %FALSE otherwise.</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_opacity" c:identifier="gdk_surface_set_opacity">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4831">Set @surface to render as partially transparent,
with opacity 0 being fully transparent and 1 fully opaque. (Values
of the opacity parameter are clamped to the [0,1] range.)
For toplevel surfaces this depends on support from the windowing system
that may not always be there. For instance, On X11, this works only on
X screens with a compositing manager running. On Wayland, there is no
per-surface opacity value that the compositor would apply. Instead, use
`gdk_surface_set_opaque_region (surface, NULL)` to tell the compositor
that the entire surface is (potentially) non-opaque, and draw your content
with alpha, or use gtk_widget_set_opacity() to set an overall opacity
for your widgets.
Support for non-toplevel surfaces was added in 3.8.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4833">a top-level or non-native #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="opacity" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4834">opacity</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
</parameters>
</method>
<method name="set_opaque_region" c:identifier="gdk_surface_set_opaque_region">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5100">For optimisation purposes, compositing window managers may
like to not draw obscured regions of surfaces, or turn off blending
during for these regions. With RGB windows with no transparency,
this is just the shape of the window, but with ARGB32 windows, the
compositor does not know what regions of the window are transparent
or not.
This function only works for toplevel surfaces.
GTK will update this property automatically if
the @surface background is opaque, as we know where the opaque regions
are. If your surface background is not opaque, please update this
property in your #GtkWidget::style-updated handler.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5102">a top-level or non-native #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="region" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5103">a region, or %NULL</doc>
<type name="cairo.Region" c:type="cairo_region_t*"/>
</parameter>
</parameters>
</method>
<method name="set_pass_through" c:identifier="gdk_surface_set_pass_through">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3262">Sets whether input to the surface is passed through to the surface
below.
The default value of this is %FALSE, which means that pointer
events that happen inside the surface are send first to the surface,
but if the event is not selected by the event mask then the event
is sent to the parent surface, and so on up the hierarchy.
If @pass_through is %TRUE then such pointer events happen as if the
surface wasn't there at all, and thus will be sent first to any
surfaces below @surface. This is useful if the surface is used in a
transparent fashion. In the terminology of the web this would be called
"pointer-events: none".
Note that a surface with @pass_through %TRUE can still have a subsurface
without pass through, so you can get events on a subset of a surface. And in
that cases you would get the in-between related events such as the pointer
enter/leave events on its way to the destination surface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3264">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="pass_through" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3265">a boolean</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_shadow_width" c:identifier="gdk_surface_set_shadow_width">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5142">Newer GTK windows using client-side decorations use extra geometry
around their frames for effects like shadows and invisible borders.
Window managers that want to maximize windows or snap to edges need
to know where the extents of the actual frame lie, so that users
don&#x2019;t feel like windows are snapping against random invisible edges.
Note that this property is automatically updated by GTK, so this
function should only be used by applications which do not use GTK
to create toplevel surfaces.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5144">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="left" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5145">The left extent</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="right" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5146">The right extent</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="top" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5147">The top extent</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="bottom" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5148">The bottom extent</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="set_startup_id" c:identifier="gdk_surface_set_startup_id">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4193">When using GTK, typically you should use gtk_window_set_startup_id()
instead of this low-level function.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4195">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="startup_id" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4196">a string with startup-notification identifier</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_support_multidevice" c:identifier="gdk_surface_set_support_multidevice">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3670">This function will enable multidevice features in @surface.
Multidevice aware surfaces will need to handle properly multiple,
per device enter/leave events, device grabs and grab ownerships.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3672">a #GdkSurface.</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="support_multidevice" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="3673">%TRUE to enable multidevice support in @surface.</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</method>
<method name="set_title" c:identifier="gdk_surface_set_title">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4175">Sets the title of a toplevel surface, to be displayed in the titlebar.
If you haven&#x2019;t explicitly set the icon name for the surface
(using gdk_surface_set_icon_name()), the icon name will be set to
@title as well. @title must be in UTF-8 encoding (as with all
user-readable strings in GDK and GTK). @title may not be %NULL.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4177">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="title" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4178">title of @surface</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_transient_for" c:identifier="gdk_surface_set_transient_for">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4211">Indicates to the window manager that @surface is a transient dialog
associated with the application surface @parent. This allows the
window manager to do things like center @surface on @parent and
keep @surface above @parent.
See gtk_window_set_transient_for() if you&#x2019;re using #GtkWindow or
#GtkDialog.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4213">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="parent" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4214">another toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
</parameters>
</method>
<method name="set_type_hint" c:identifier="gdk_surface_set_type_hint">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4084">The application can use this call to provide a hint to the surface
manager about the functionality of a surface. The window manager
can use this information when determining the decoration and behaviour
of the surface.
The hint must be set before the surface is mapped.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4086">A toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="hint" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4087">A hint of the function this surface will have</doc>
<type name="SurfaceTypeHint" c:type="GdkSurfaceTypeHint"/>
</parameter>
</parameters>
</method>
<method name="show" c:identifier="gdk_surface_show">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2418">Like gdk_surface_show_unraised(), but also raises the surface to the
top of the surface stack (moves the surface to the front of the
Z-order).
This function maps a surface so it&#x2019;s visible onscreen. Its opposite
is gdk_surface_hide().
When implementing a #GtkWidget, you should call this function on the widget's
#GdkSurface as part of the &#x201C;map&#x201D; method.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2420">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="show_unraised" c:identifier="gdk_surface_show_unraised">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2225">Shows a #GdkSurface onscreen, but does not modify its stacking
order. In contrast, gdk_surface_show() will raise the surface
to the top of the surface stack.
On the X11 platform, in Xlib terms, this function calls
XMapWindow() (it also updates some internal GDK state, which means
that you can&#x2019;t really use XMapWindow() directly on a GDK surface).</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="2227">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="show_window_menu" c:identifier="gdk_surface_show_window_menu">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5184">Asks the windowing system to show the window menu. The window menu
is the menu shown when right-clicking the titlebar on traditional
windows managed by the window manager. This is useful for windows
using client-side decorations, activating it with a right-click
on the window decorations.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5195">%TRUE if the window menu was shown and %FALSE otherwise.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5186">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
<parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="5187">a #GdkEvent to show the menu for</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
</parameters>
</method>
<method name="stick" c:identifier="gdk_surface_stick">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4398">&#x201C;Pins&#x201D; a surface such that it&#x2019;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 surface. For window managers that don&#x2019;t support this operation,
there&#x2019;s nothing you can do to force it to happen.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4400">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="thaw_updates" c:identifier="gdk_surface_thaw_updates">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1884">Thaws a surface frozen with gdk_surface_freeze_updates().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="1886">a #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="unfullscreen" c:identifier="gdk_surface_unfullscreen">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4585">Moves the surface out of fullscreen mode. If the surface was not
fullscreen, does nothing.
On X11, asks the window manager to move @surface 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&#x2019;t have a concept of &#x201C;fullscreen&#x201D;; so you can&#x2019;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.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4587">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="unmaximize" c:identifier="gdk_surface_unmaximize">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4456">Unmaximizes the surface. If the surface wasn&#x2019;t maximized, then this
function does nothing.
On X11, asks the window manager to unmaximize @surface, if the
window manager supports this operation. Not all window managers
support this, and some deliberately ignore it or don&#x2019;t have a
concept of &#x201C;maximized&#x201D;; so you can&#x2019;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 surface.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4458">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<method name="unstick" c:identifier="gdk_surface_unstick">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4419">Reverse operation for gdk_surface_stick(); see gdk_surface_stick(),
and gtk_window_unstick().</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="4421">a toplevel #GdkSurface</doc>
<type name="Surface" c:type="GdkSurface*"/>
</instance-parameter>
</parameters>
</method>
<property name="cursor" writable="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="246">The mouse pointer for a #GdkSurface. See gdk_surface_set_cursor() and
gdk_surface_get_cursor() for details.</doc>
<type name="Cursor"/>
</property>
<property name="display" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="259">The #GdkDisplay connection of the surface. See gdk_surface_get_display()
for details.</doc>
<type name="Display"/>
</property>
<property name="frame-clock" writable="1" construct-only="1" transfer-ownership="none">
<type name="FrameClock"/>
</property>
<property name="mapped" transfer-ownership="none">
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="state" transfer-ownership="none">
<type name="SurfaceState"/>
</property>
<glib:signal name="event" when="last">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="375">Emitted when GDK receives an input event for @surface.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="382">%TRUE to indicate that the event has been handled</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="event" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="378">an input event</doc>
<type name="Event"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="moved-to-rect" when="first" stability="Private">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="295">Emitted when the position of @surface is finalized after being moved to a
destination rectangle.
@surface might be flipped over the destination rectangle in order to keep
it on-screen, in which case @flipped_x and @flipped_y will be set to %TRUE
accordingly.
@flipped_rect is the ideal position of @surface after any possible
flipping, but before any possible sliding. @final_rect is @flipped_rect,
but possibly translated in the case that flipping is still ineffective in
keeping @surface on-screen.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="flipped_rect" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="298">the position of @surface after any possible
flipping or %NULL if the backend can't obtain it</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
<parameter name="final_rect" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="300">the final position of @surface or %NULL if the
backend can't obtain it</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
<parameter name="flipped_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="302">%TRUE if the anchors were flipped horizontally</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
<parameter name="flipped_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="303">%TRUE if the anchors were flipped vertically</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="render" when="last">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="354">Emitted when part of the surface needs to be redrawn.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="361">%TRUE to indicate that the signal has been handled</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="region" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="357">the region that needs to be redrawn</doc>
<type name="cairo.Region"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="size-changed" when="first">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="333">Emitted when the size of @surface is changed.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="336">the new width</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdksurface.c" line="337">the new height</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</glib:signal>
</class>
<record name="SurfaceClass" c:type="GdkSurfaceClass" glib:is-gtype-struct-for="Surface">
<field name="parent_class">
<type name="GObject.ObjectClass" c:type="GObjectClass"/>
</field>
<field name="_gdk_reserved1" introspectable="0">
<callback name="_gdk_reserved1">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved2" introspectable="0">
<callback name="_gdk_reserved2">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved3" introspectable="0">
<callback name="_gdk_reserved3">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved4" introspectable="0">
<callback name="_gdk_reserved4">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved5" introspectable="0">
<callback name="_gdk_reserved5">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved6" introspectable="0">
<callback name="_gdk_reserved6">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved7" introspectable="0">
<callback name="_gdk_reserved7">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
<field name="_gdk_reserved8" introspectable="0">
<callback name="_gdk_reserved8">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</callback>
</field>
</record>
<enumeration name="SurfaceEdge" glib:type-name="GdkSurfaceEdge" glib:get-type="gdk_surface_edge_get_type" c:type="GdkSurfaceEdge">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="227">Determines a surface edge or corner.</doc>
<member name="north_west" value="0" c:identifier="GDK_SURFACE_EDGE_NORTH_WEST" glib:nick="north-west">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="229">the top left corner.</doc>
</member>
<member name="north" value="1" c:identifier="GDK_SURFACE_EDGE_NORTH" glib:nick="north">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="230">the top edge.</doc>
</member>
<member name="north_east" value="2" c:identifier="GDK_SURFACE_EDGE_NORTH_EAST" glib:nick="north-east">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="231">the top right corner.</doc>
</member>
<member name="west" value="3" c:identifier="GDK_SURFACE_EDGE_WEST" glib:nick="west">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="232">the left edge.</doc>
</member>
<member name="east" value="4" c:identifier="GDK_SURFACE_EDGE_EAST" glib:nick="east">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="233">the right edge.</doc>
</member>
<member name="south_west" value="5" c:identifier="GDK_SURFACE_EDGE_SOUTH_WEST" glib:nick="south-west">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="234">the lower left corner.</doc>
</member>
<member name="south" value="6" c:identifier="GDK_SURFACE_EDGE_SOUTH" glib:nick="south">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="235">the lower edge.</doc>
</member>
<member name="south_east" value="7" c:identifier="GDK_SURFACE_EDGE_SOUTH_EAST" glib:nick="south-east">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="236">the lower right corner.</doc>
</member>
</enumeration>
<bitfield name="SurfaceHints" glib:type-name="GdkSurfaceHints" glib:get-type="gdk_surface_hints_get_type" c:type="GdkSurfaceHints">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="59">Used to indicate which fields of a #GdkGeometry struct should be paid
attention to. Also, the presence/absence of @GDK_HINT_POS,
@GDK_HINT_USER_POS, and @GDK_HINT_USER_SIZE is significant, though they don't
directly refer to #GdkGeometry fields. @GDK_HINT_USER_POS will be set
automatically by #GtkWindow if you call gtk_window_move().
@GDK_HINT_USER_POS and @GDK_HINT_USER_SIZE should be set if the user
specified a size/position using a --geometry command-line argument;
gtk_window_parse_geometry() automatically sets these flags.</doc>
<member name="pos" value="1" c:identifier="GDK_HINT_POS" glib:nick="pos">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="61">indicates that the program has positioned the surface</doc>
</member>
<member name="min_size" value="2" c:identifier="GDK_HINT_MIN_SIZE" glib:nick="min-size">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="62">min size fields are set</doc>
</member>
<member name="max_size" value="4" c:identifier="GDK_HINT_MAX_SIZE" glib:nick="max-size">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="63">max size fields are set</doc>
</member>
<member name="base_size" value="8" c:identifier="GDK_HINT_BASE_SIZE" glib:nick="base-size">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="64">base size fields are set</doc>
</member>
<member name="aspect" value="16" c:identifier="GDK_HINT_ASPECT" glib:nick="aspect">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="65">aspect ratio fields are set</doc>
</member>
<member name="resize_inc" value="32" c:identifier="GDK_HINT_RESIZE_INC" glib:nick="resize-inc">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="66">resize increment fields are set</doc>
</member>
<member name="win_gravity" value="64" c:identifier="GDK_HINT_WIN_GRAVITY" glib:nick="win-gravity">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="67">surface gravity field is set</doc>
</member>
<member name="user_pos" value="128" c:identifier="GDK_HINT_USER_POS" glib:nick="user-pos">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="68">indicates that the surface&#x2019;s position was explicitly set
by the user</doc>
</member>
<member name="user_size" value="256" c:identifier="GDK_HINT_USER_SIZE" glib:nick="user-size">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="70">indicates that the surface&#x2019;s size was explicitly set by
the user</doc>
</member>
</bitfield>
<bitfield name="SurfaceState" glib:type-name="GdkSurfaceState" glib:get-type="gdk_surface_state_get_type" c:type="GdkSurfaceState">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="357">Specifies the state of a toplevel surface.
On platforms that support information about individual edges, the %GDK_SURFACE_STATE_TILED
state will be set whenever any of the individual tiled states is set. On platforms
that lack that support, the tiled state will give an indication of tiledness without
any of the per-edge states being set.</doc>
<member name="withdrawn" value="1" c:identifier="GDK_SURFACE_STATE_WITHDRAWN" glib:nick="withdrawn">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="359">the surface is not shown</doc>
</member>
<member name="iconified" value="2" c:identifier="GDK_SURFACE_STATE_ICONIFIED" glib:nick="iconified">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="360">the surface is minimized</doc>
</member>
<member name="maximized" value="4" c:identifier="GDK_SURFACE_STATE_MAXIMIZED" glib:nick="maximized">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="361">the surface is maximized</doc>
</member>
<member name="sticky" value="8" c:identifier="GDK_SURFACE_STATE_STICKY" glib:nick="sticky">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="362">the surface is sticky</doc>
</member>
<member name="fullscreen" value="16" c:identifier="GDK_SURFACE_STATE_FULLSCREEN" glib:nick="fullscreen">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="363">the surface is maximized without decorations</doc>
</member>
<member name="above" value="32" c:identifier="GDK_SURFACE_STATE_ABOVE" glib:nick="above">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="364">the surface is kept above other surfaces</doc>
</member>
<member name="below" value="64" c:identifier="GDK_SURFACE_STATE_BELOW" glib:nick="below">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="365">the surface is kept below other surfaces</doc>
</member>
<member name="focused" value="128" c:identifier="GDK_SURFACE_STATE_FOCUSED" glib:nick="focused">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="366">the surface is presented as focused (with active decorations)</doc>
</member>
<member name="tiled" value="256" c:identifier="GDK_SURFACE_STATE_TILED" glib:nick="tiled">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="367">the surface is in a tiled state</doc>
</member>
<member name="top_tiled" value="512" c:identifier="GDK_SURFACE_STATE_TOP_TILED" glib:nick="top-tiled">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="368">whether the top edge is tiled</doc>
</member>
<member name="top_resizable" value="1024" c:identifier="GDK_SURFACE_STATE_TOP_RESIZABLE" glib:nick="top-resizable">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="369">whether the top edge is resizable</doc>
</member>
<member name="right_tiled" value="2048" c:identifier="GDK_SURFACE_STATE_RIGHT_TILED" glib:nick="right-tiled">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="370">whether the right edge is tiled</doc>
</member>
<member name="right_resizable" value="4096" c:identifier="GDK_SURFACE_STATE_RIGHT_RESIZABLE" glib:nick="right-resizable">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="371">whether the right edge is resizable</doc>
</member>
<member name="bottom_tiled" value="8192" c:identifier="GDK_SURFACE_STATE_BOTTOM_TILED" glib:nick="bottom-tiled">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="372">whether the bottom edge is tiled</doc>
</member>
<member name="bottom_resizable" value="16384" c:identifier="GDK_SURFACE_STATE_BOTTOM_RESIZABLE" glib:nick="bottom-resizable">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="373">whether the bottom edge is resizable</doc>
</member>
<member name="left_tiled" value="32768" c:identifier="GDK_SURFACE_STATE_LEFT_TILED" glib:nick="left-tiled">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="374">whether the left edge is tiled</doc>
</member>
<member name="left_resizable" value="65536" c:identifier="GDK_SURFACE_STATE_LEFT_RESIZABLE" glib:nick="left-resizable">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="375">whether the left edge is resizable</doc>
</member>
</bitfield>
<enumeration name="SurfaceType" glib:type-name="GdkSurfaceType" glib:get-type="gdk_surface_type_get_type" c:type="GdkSurfaceType">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="42">Describes the kind of surface.</doc>
<member name="toplevel" value="0" c:identifier="GDK_SURFACE_TOPLEVEL" glib:nick="toplevel">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="44">toplevel window (used to implement #GtkWindow)</doc>
</member>
<member name="child" value="1" c:identifier="GDK_SURFACE_CHILD" glib:nick="child">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="45">child surface (used to implement e.g. #GtkEntry)</doc>
</member>
<member name="temp" value="2" c:identifier="GDK_SURFACE_TEMP" glib:nick="temp">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="46">override redirect temporary surface (used to implement #GtkMenu)</doc>
</member>
</enumeration>
<enumeration name="SurfaceTypeHint" glib:type-name="GdkSurfaceTypeHint" glib:get-type="gdk_surface_type_hint_get_type" c:type="GdkSurfaceTypeHint">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="453">These are hints for the window manager that indicate what type of function
the window has. The window manager can use this when determining decoration
and behaviour of the window. The hint must be set before mapping the window.
See the [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec)
specification for more details about window types.</doc>
<member name="normal" value="0" c:identifier="GDK_SURFACE_TYPE_HINT_NORMAL" glib:nick="normal">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="455">Normal toplevel window.</doc>
</member>
<member name="dialog" value="1" c:identifier="GDK_SURFACE_TYPE_HINT_DIALOG" glib:nick="dialog">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="456">Dialog window.</doc>
</member>
<member name="menu" value="2" c:identifier="GDK_SURFACE_TYPE_HINT_MENU" glib:nick="menu">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="457">Window used to implement a menu; GTK uses
this hint only for torn-off menus, see #GtkTearoffMenuItem.</doc>
</member>
<member name="toolbar" value="3" c:identifier="GDK_SURFACE_TYPE_HINT_TOOLBAR" glib:nick="toolbar">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="459">Window used to implement toolbars.</doc>
</member>
<member name="splashscreen" value="4" c:identifier="GDK_SURFACE_TYPE_HINT_SPLASHSCREEN" glib:nick="splashscreen">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="460">Window used to display a splash
screen during application startup.</doc>
</member>
<member name="utility" value="5" c:identifier="GDK_SURFACE_TYPE_HINT_UTILITY" glib:nick="utility">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="462">Utility windows which are not detached
toolbars or dialogs.</doc>
</member>
<member name="dock" value="6" c:identifier="GDK_SURFACE_TYPE_HINT_DOCK" glib:nick="dock">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="464">Used for creating dock or panel windows.</doc>
</member>
<member name="desktop" value="7" c:identifier="GDK_SURFACE_TYPE_HINT_DESKTOP" glib:nick="desktop">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="465">Used for creating the desktop background
window.</doc>
</member>
<member name="dropdown_menu" value="8" c:identifier="GDK_SURFACE_TYPE_HINT_DROPDOWN_MENU" glib:nick="dropdown-menu">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="467">A menu that belongs to a menubar.</doc>
</member>
<member name="popup_menu" value="9" c:identifier="GDK_SURFACE_TYPE_HINT_POPUP_MENU" glib:nick="popup-menu">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="468">A menu that does not belong to a menubar,
e.g. a context menu.</doc>
</member>
<member name="tooltip" value="10" c:identifier="GDK_SURFACE_TYPE_HINT_TOOLTIP" glib:nick="tooltip">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="470">A tooltip.</doc>
</member>
<member name="notification" value="11" c:identifier="GDK_SURFACE_TYPE_HINT_NOTIFICATION" glib:nick="notification">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="471">A notification - typically a &#x201C;bubble&#x201D;
that belongs to a status icon.</doc>
</member>
<member name="combo" value="12" c:identifier="GDK_SURFACE_TYPE_HINT_COMBO" glib:nick="combo">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="473">A popup from a combo box.</doc>
</member>
<member name="dnd" value="13" c:identifier="GDK_SURFACE_TYPE_HINT_DND" glib:nick="dnd">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="474">A window that is used to implement a DND cursor.</doc>
</member>
</enumeration>
<class name="Texture" c:symbol-prefix="texture" c:type="GdkTexture" parent="GObject.Object" abstract="1" glib:type-name="GdkTexture" glib:get-type="gdk_texture_get_type" glib:type-struct="TextureClass">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="52">A GdkTexture represents image data that can be displayed on screen.
There are various ways to create GdkTexture objects from a #GdkPixbuf
or a cairo surface, or other pixel data.
An important aspect of GdkTextures is that they are immutable - once
the image data has been wrapped in a GdkTexture, it may be uploaded
to the GPU or used in other ways that make it impractical to allow
modification.</doc>
<implements name="Paintable"/>
<constructor name="new_for_pixbuf" c:identifier="gdk_texture_new_for_pixbuf">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="315">Creates a new texture object representing the GdkPixbuf.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="321">a new #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<parameter name="pixbuf" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="317">a #GdkPixbuf</doc>
<type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_from_file" c:identifier="gdk_texture_new_from_file" throws="1">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="383">Creates a new texture by loading an image from a file. The file format is
detected automatically. If %NULL is returned, then @error will be set.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="391">A newly-created #GdkTexture or %NULL if an error occured.</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<parameter name="file" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="385">#GFile to load</doc>
<type name="Gio.File" c:type="GFile*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_from_resource" c:identifier="gdk_texture_new_from_resource">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="350">Creates a new texture by loading an image from a resource.
The file format is detected automatically.
It is a fatal error if @resource_path does not specify a valid
image resource and the program will abort if that happens.
If you are unsure about the validity of a resource, use
gdk_texture_new_from_file() to load it.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="362">A newly-created texture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</return-value>
<parameters>
<parameter name="resource_path" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="352">the path of the resource file</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</constructor>
<method name="download" c:identifier="gdk_texture_download">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="471">Downloads the @texture into local memory. This may be
an expensive operation, as the actual texture data may
reside on a GPU or on a remote display server.
The data format of the downloaded data is equivalent to
%CAIRO_FORMAT_ARGB32, so every downloaded pixel requires
4 bytes of memory.
Downloading a texture into a Cairo image surface:
|[&lt;!-- language="C" --&gt;
surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32,
gdk_texture_get_width (texture),
gdk_texture_get_height (texture));
gdk_texture_download (texture,
cairo_image_surface_get_data (surface),
cairo_image_surface_get_stride (surface));
cairo_surface_mark_dirty (surface);
]|</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<instance-parameter name="texture" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="473">a #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</instance-parameter>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="474">pointer to enough memory to be filled with the
downloaded data of @texture</doc>
<array zero-terminated="0" c:type="guchar*">
<type name="guint8" c:type="guchar"/>
</array>
</parameter>
<parameter name="stride" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="476">rowstride in bytes</doc>
<type name="gsize" c:type="gsize"/>
</parameter>
</parameters>
</method>
<method name="get_height" c:identifier="gdk_texture_get_height">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="435">Returns the height of the @texture.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="441">the height of the #GdkTexture</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="texture" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="437">a #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_width" c:identifier="gdk_texture_get_width">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="419">Returns the width of @texture.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="425">the width of the #GdkTexture</doc>
<type name="gint" c:type="int"/>
</return-value>
<parameters>
<instance-parameter name="texture" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="421">a #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</instance-parameter>
</parameters>
</method>
<method name="save_to_png" c:identifier="gdk_texture_save_to_png">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="551">Store the given @texture to the @filename as a PNG file.
This is a utility function intended for debugging and testing.
If you want more control over formats, proper error handling or
want to store to a #GFile or other location, you might want to
look into using the gdk-pixbuf library.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="563">%TRUE if saving succeeded, %FALSE on failure.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="texture" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="553">a #GdkTexture</doc>
<type name="Texture" c:type="GdkTexture*"/>
</instance-parameter>
<parameter name="filename" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="554">the filename to store to</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</method>
<property name="height" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="254">The height of the texture.</doc>
<type name="gint" c:type="gint"/>
</property>
<property name="width" writable="1" construct-only="1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdktexture.c" line="237">The width of the texture.</doc>
<type name="gint" c:type="gint"/>
</property>
</class>
<record name="TextureClass" c:type="GdkTextureClass" disguised="1" glib:is-gtype-struct-for="Texture">
</record>
<record name="TimeCoord" c:type="GdkTimeCoord">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="111">A #GdkTimeCoord stores a single event in a motion history.</doc>
<field name="time" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="113">The timestamp for this event.</doc>
<type name="guint32" c:type="guint32"/>
</field>
<field name="axes" writable="1">
<doc xml:space="preserve" filename="../gdk/gdkdevice.h" line="114">the values of the device&#x2019;s axes.</doc>
<array zero-terminated="0" fixed-size="128" c:type="gdouble">
<type name="gdouble" c:type="gdouble"/>
</array>
</field>
</record>
<enumeration name="TouchpadGesturePhase" glib:type-name="GdkTouchpadGesturePhase" glib:get-type="gdk_touchpad_gesture_phase_get_type" c:type="GdkTouchpadGesturePhase">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="223">Specifies the current state of a touchpad gesture. All gestures are
guaranteed to begin with an event with phase %GDK_TOUCHPAD_GESTURE_PHASE_BEGIN,
followed by 0 or several events with phase %GDK_TOUCHPAD_GESTURE_PHASE_UPDATE.
A finished gesture may have 2 possible outcomes, an event with phase
%GDK_TOUCHPAD_GESTURE_PHASE_END will be emitted when the gesture is
considered successful, this should be used as the hint to perform any
permanent changes.
Cancelled gestures may be so for a variety of reasons, due to hardware
or the compositor, or due to the gesture recognition layers hinting the
gesture did not finish resolutely (eg. a 3rd finger being added during
a pinch gesture). In these cases, the last event will report the phase
%GDK_TOUCHPAD_GESTURE_PHASE_CANCEL, this should be used as a hint
to undo any visible/permanent changes that were done throughout the
progress of the gesture.</doc>
<member name="begin" value="0" c:identifier="GDK_TOUCHPAD_GESTURE_PHASE_BEGIN" glib:nick="begin">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="225">The gesture has begun.</doc>
</member>
<member name="update" value="1" c:identifier="GDK_TOUCHPAD_GESTURE_PHASE_UPDATE" glib:nick="update">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="226">The gesture has been updated.</doc>
</member>
<member name="end" value="2" c:identifier="GDK_TOUCHPAD_GESTURE_PHASE_END" glib:nick="end">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="227">The gesture was finished, changes
should be permanently applied.</doc>
</member>
<member name="cancel" value="3" c:identifier="GDK_TOUCHPAD_GESTURE_PHASE_CANCEL" glib:nick="cancel">
<doc xml:space="preserve" filename="../gdk/gdkevents.h" line="229">The gesture was cancelled, all
changes should be undone.</doc>
</member>
</enumeration>
<class name="VulkanContext" c:symbol-prefix="vulkan_context" c:type="GdkVulkanContext" parent="DrawContext" abstract="1" glib:type-name="GdkVulkanContext" glib:get-type="gdk_vulkan_context_get_type">
<doc xml:space="preserve" filename="../gdk/gdkvulkancontext.c" line="31">#GdkVulkanContext is an object representing the platform-specific
Vulkan draw context.
#GdkVulkanContexts are created for a #GdkSurface using
gdk_surface_create_vulkan_context(), and the context will match the
the characteristics of the surface.
Support for #GdkVulkanContext is platform-specific, context creation
can fail, returning %NULL context.</doc>
<implements name="Gio.Initable"/>
<glib:signal name="images-updated" when="last">
<doc xml:space="preserve" filename="../gdk/gdkvulkancontext.c" line="464">This signal is emitted when the images managed by this context have
changed. Usually this means that the swapchain had to be recreated,
for example in response to a change of the surface size.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
</glib:signal>
</class>
<enumeration name="VulkanError" glib:type-name="GdkVulkanError" glib:get-type="gdk_vulkan_error_get_type" c:type="GdkVulkanError" glib:error-domain="gdk-vulkan-error-quark">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="440">Error enumeration for #GdkVulkanContext.</doc>
<member name="unsupported" value="0" c:identifier="GDK_VULKAN_ERROR_UNSUPPORTED" glib:nick="unsupported">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="442">Vulkan is not supported on this backend or has not been
compiled in.</doc>
</member>
<member name="not_available" value="1" c:identifier="GDK_VULKAN_ERROR_NOT_AVAILABLE" glib:nick="not-available">
<doc xml:space="preserve" filename="../gdk/gdktypes.h" line="444">Vulkan support is not available on this Surface</doc>
</member>
<function name="quark" c:identifier="gdk_vulkan_error_quark">
<return-value transfer-ownership="none">
<type name="GLib.Quark" c:type="GQuark"/>
</return-value>
</function>
</enumeration>
<bitfield name="WMDecoration" glib:type-name="GdkWMDecoration" glib:get-type="gdk_wm_decoration_get_type" c:type="GdkWMDecoration">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="100">These are hints originally defined by the Motif toolkit.
The window manager can use them when determining how to decorate
the surface. The hint must be set before mapping the surface.</doc>
<member name="all" value="1" c:identifier="GDK_DECOR_ALL" glib:nick="all">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="102">all decorations should be applied.</doc>
</member>
<member name="border" value="2" c:identifier="GDK_DECOR_BORDER" glib:nick="border">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="103">a frame should be drawn around the surface.</doc>
</member>
<member name="resizeh" value="4" c:identifier="GDK_DECOR_RESIZEH" glib:nick="resizeh">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="104">the frame should have resize handles.</doc>
</member>
<member name="title" value="8" c:identifier="GDK_DECOR_TITLE" glib:nick="title">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="105">a titlebar should be placed above the surface.</doc>
</member>
<member name="menu" value="16" c:identifier="GDK_DECOR_MENU" glib:nick="menu">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="106">a button for opening a menu should be included.</doc>
</member>
<member name="minimize" value="32" c:identifier="GDK_DECOR_MINIMIZE" glib:nick="minimize">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="107">a minimize button should be included.</doc>
</member>
<member name="maximize" value="64" c:identifier="GDK_DECOR_MAXIMIZE" glib:nick="maximize">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="108">a maximize button should be included.</doc>
</member>
</bitfield>
<bitfield name="WMFunction" glib:type-name="GdkWMFunction" glib:get-type="gdk_wm_function_get_type" c:type="GdkWMFunction">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="125">These are hints originally defined by the Motif toolkit. The window manager
can use them when determining the functions to offer for the surface. The
hint must be set before mapping the surface.</doc>
<member name="all" value="1" c:identifier="GDK_FUNC_ALL" glib:nick="all">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="127">all functions should be offered.</doc>
</member>
<member name="resize" value="2" c:identifier="GDK_FUNC_RESIZE" glib:nick="resize">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="128">the surface should be resizable.</doc>
</member>
<member name="move" value="4" c:identifier="GDK_FUNC_MOVE" glib:nick="move">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="129">the surface should be movable.</doc>
</member>
<member name="minimize" value="8" c:identifier="GDK_FUNC_MINIMIZE" glib:nick="minimize">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="130">the surface should be minimizable.</doc>
</member>
<member name="maximize" value="16" c:identifier="GDK_FUNC_MAXIMIZE" glib:nick="maximize">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="131">the surface should be maximizable.</doc>
</member>
<member name="close" value="32" c:identifier="GDK_FUNC_CLOSE" glib:nick="close">
<doc xml:space="preserve" filename="../gdk/gdksurface.h" line="132">the surface should be closable.</doc>
</member>
</bitfield>
<function name="cairo_draw_from_gl" c:identifier="gdk_cairo_draw_from_gl">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="289">This is the main way to draw GL content in GTK. It takes a render buffer ID
(@source_type == #GL_RENDERBUFFER) or a texture id (@source_type == #GL_TEXTURE)
and draws it onto @cr with an OVER operation, respecting the current clip.
The top left corner of the rectangle specified by @x, @y, @width and @height
will be drawn at the current (0,0) position of the cairo_t.
This will work for *all* cairo_t, as long as @surface is realized, but the
fallback implementation that reads back the pixels from the buffer may be
used in the general case. In the case of direct drawing to a surface with
no special effects applied to @cr it will however use a more efficient
approach.
For #GL_RENDERBUFFER the code will always fall back to software for buffers
with alpha components, so make sure you use #GL_TEXTURE if using alpha.
Calling this may change the current GL context.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="cr" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="291">a cairo context</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</parameter>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="292">The surface we're rendering for (not necessarily into)</doc>
<type name="Surface" c:type="GdkSurface*"/>
</parameter>
<parameter name="source" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="293">The GL ID of the source buffer</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="source_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="294">The type of the @source</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="buffer_scale" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="295">The scale-factor that the @source buffer is allocated for</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="296">The source x position in @source to start copying from in GL coordinates</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="297">The source y position in @source to start copying from in GL coordinates</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="298">The width of the region to draw</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="299">The height of the region to draw</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</function>
<function name="cairo_get_clip_rectangle" c:identifier="gdk_cairo_get_clip_rectangle">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="42">This is a convenience function around cairo_clip_extents().
It rounds the clip extents to integer coordinates and returns
a boolean indicating if a clip area exists.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="51">%TRUE if a clip rectangle exists, %FALSE if all of @cr is
clipped and all drawing can be skipped</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="cr" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="44">a cairo context</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</parameter>
<parameter name="rect" direction="out" caller-allocates="1" transfer-ownership="none" optional="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="45">return location for the clip, or %NULL</doc>
<type name="Rectangle" c:type="GdkRectangle*"/>
</parameter>
</parameters>
</function>
<function name="cairo_rectangle" c:identifier="gdk_cairo_rectangle">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="102">Adds the given rectangle to the current path of @cr.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="cr" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="104">a cairo context</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</parameter>
<parameter name="rectangle" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="105">a #GdkRectangle</doc>
<type name="Rectangle" c:type="const GdkRectangle*"/>
</parameter>
</parameters>
</function>
<function name="cairo_region" c:identifier="gdk_cairo_region">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="121">Adds the given region to the current path of @cr.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="cr" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="123">a cairo context</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</parameter>
<parameter name="region" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="124">a #cairo_region_t</doc>
<type name="cairo.Region" c:type="const cairo_region_t*"/>
</parameter>
</parameters>
</function>
<function name="cairo_region_create_from_surface" c:identifier="gdk_cairo_region_create_from_surface">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="335">Creates region that describes covers the area where the given
@surface is more than 50% opaque.
This function takes into account device offsets that might be
set with cairo_surface_set_device_offset().</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="345">A #cairo_region_t; must be freed with cairo_region_destroy()</doc>
<type name="cairo.Region" c:type="cairo_region_t*"/>
</return-value>
<parameters>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="337">a cairo surface</doc>
<type name="cairo.Surface" c:type="cairo_surface_t*"/>
</parameter>
</parameters>
</function>
<function name="cairo_set_source_pixbuf" c:identifier="gdk_cairo_set_source_pixbuf">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="240">Sets the given pixbuf as the source pattern for @cr.
The pattern has an extend mode of %CAIRO_EXTEND_NONE and is aligned
so that the origin of @pixbuf is @pixbuf_x, @pixbuf_y.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="cr" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="242">a cairo context</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</parameter>
<parameter name="pixbuf" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="243">a #GdkPixbuf</doc>
<type name="GdkPixbuf.Pixbuf" c:type="const GdkPixbuf*"/>
</parameter>
<parameter name="pixbuf_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="244">X coordinate of location to place upper left corner of @pixbuf</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
<parameter name="pixbuf_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="245">Y coordinate of location to place upper left corner of @pixbuf</doc>
<type name="gdouble" c:type="gdouble"/>
</parameter>
</parameters>
</function>
<function name="cairo_set_source_rgba" c:identifier="gdk_cairo_set_source_rgba">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="81">Sets the specified #GdkRGBA as the source color of @cr.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="cr" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="83">a cairo context</doc>
<type name="cairo.Context" c:type="cairo_t*"/>
</parameter>
<parameter name="rgba" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcairo.c" line="84">a #GdkRGBA</doc>
<type name="RGBA" c:type="const GdkRGBA*"/>
</parameter>
</parameters>
</function>
<function name="cairo_surface_upload_to_gl" c:identifier="gdk_cairo_surface_upload_to_gl">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="557">Uploads the contents of a Cairo @surface to a GL texture @target.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="559">a Cairo surface</doc>
<type name="cairo.Surface" c:type="cairo_surface_t*"/>
</parameter>
<parameter name="target" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="560">a GL texture target</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="561">the width of the texture @target</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="562">the height of the texture @target</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="context" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkgl.c" line="563">a #GdkGLContext, or %NULL to use the currently
bound context</doc>
<type name="GLContext" c:type="GdkGLContext*"/>
</parameter>
</parameters>
</function>
<function name="content_deserialize_async" c:identifier="gdk_content_deserialize_async">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="510">Read content from the given input stream and deserialize it, asynchronously.
When the operation is finished, @callback will be called. You can then
call gdk_content_deserialize_finish() to get the result of the operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="stream" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="512">a #GInputStream to read the serialized content from</doc>
<type name="Gio.InputStream" c:type="GInputStream*"/>
</parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="513">the mime type to deserialize from</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="514">the GType to deserialize from</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="515">the io priority of the operation</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="516">optional #GCancellable object</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="6">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="517">callback to call when the operation is done</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="518">data to pass to the callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</function>
<function name="content_deserialize_finish" c:identifier="gdk_content_deserialize_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="552">Finishes a content deserialization operation.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="560">%TRUE if the operation was successful. In this case, @value is set.
%FALSE if an error occurred. In this case, @error is set</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="554">the #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="555">return location for the result of the operation</doc>
<type name="GObject.Value" c:type="GValue*"/>
</parameter>
</parameters>
</function>
<function name="content_register_deserializer" c:identifier="gdk_content_register_deserializer">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="369">Registers a function to create objects of a given @type from
a serialized representation with the given mime type.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="371">the mime type which the function can deserialize from</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="372">the type of objects that the function creates</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="deserialize" transfer-ownership="none" scope="notified" closure="3" destroy="4">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="373">the callback</doc>
<type name="ContentDeserializeFunc" c:type="GdkContentDeserializeFunc"/>
</parameter>
<parameter name="data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="374">data that @deserialize can access</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
<parameter name="notify" transfer-ownership="none" scope="async">
<doc xml:space="preserve" filename="../gdk/gdkcontentdeserializer.c" line="375">destroy notify for @data</doc>
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
</parameter>
</parameters>
</function>
<function name="content_register_serializer" c:identifier="gdk_content_register_serializer">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="372">Registers a function to convert objects of the given @type to
a serialized representation with the given mime type.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="374">the type of objects that the function can serialize</doc>
<type name="GType" c:type="GType"/>
</parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="375">the mime type to serialize to</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="serialize" transfer-ownership="none" scope="notified" closure="3" destroy="4">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="376">the callback</doc>
<type name="ContentSerializeFunc" c:type="GdkContentSerializeFunc"/>
</parameter>
<parameter name="data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="377">data that @serialize can access</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
<parameter name="notify" transfer-ownership="none" scope="async">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="378">destroy notify for @data</doc>
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
</parameter>
</parameters>
</function>
<function name="content_serialize_async" c:identifier="gdk_content_serialize_async">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="513">Serialize content and write it to the given output stream, asynchronously.
When the operation is finished, @callback will be called. You can then
call gdk_content_serialize_finish() to get the result of the operation.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="stream" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="515">a #GOutputStream to write the serialized content to</doc>
<type name="Gio.OutputStream" c:type="GOutputStream*"/>
</parameter>
<parameter name="mime_type" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="516">the mime type to serialize to</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
<parameter name="value" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="517">the content to serialize</doc>
<type name="GObject.Value" c:type="const GValue*"/>
</parameter>
<parameter name="io_priority" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="518">the io priority of the operation</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="cancellable" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="519">optional #GCancellable object</doc>
<type name="Gio.Cancellable" c:type="GCancellable*"/>
</parameter>
<parameter name="callback" transfer-ownership="none" nullable="1" allow-none="1" scope="async" closure="6">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="520">callback to call when the operation is done</doc>
<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
</parameter>
<parameter name="user_data" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="521">data to pass to the callback function</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</function>
<function name="content_serialize_finish" c:identifier="gdk_content_serialize_finish" throws="1">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="555">Finishes a content serialization operation.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="562">%TRUE if the operation was successful, %FALSE if an
error occurred. In this case, @error is set</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="result" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentserializer.c" line="557">the #GAsyncResult</doc>
<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
</parameter>
</parameters>
</function>
<function name="drag_action_is_unique" c:identifier="gdk_drag_action_is_unique" moved-to="DragAction.is_unique">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="776">Checks if @action represents a single action or if it
includes multiple flags that can be selected from.
When @action is 0 - ie no action was given, %TRUE
is returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="786">%TRUE if exactly one action was given</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="action" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdrag.c" line="778">a #GdkDragAction</doc>
<type name="DragAction" c:type="GdkDragAction"/>
</parameter>
</parameters>
</function>
<function name="events_get_angle" c:identifier="gdk_events_get_angle">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1660">If both events contain X/Y information, this function will return %TRUE
and return in @angle the relative angle from @event1 to @event2. The rotation
direction for positive angles is from the positive X axis towards the positive
Y axis.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1671">%TRUE if the angle could be calculated.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="event1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1662">first #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="event2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1663">second #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="angle" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1664">return location for the relative angle between both events</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</function>
<function name="events_get_center" c:identifier="gdk_events_get_center">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1702">If both events contain X/Y information, the center of both coordinates
will be returned in @x and @y.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1712">%TRUE if the center could be calculated.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="event1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1704">first #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="event2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1705">second #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="x" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1706">return location for the X coordinate of the center</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
<parameter name="y" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1707">return location for the Y coordinate of the center</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</function>
<function name="events_get_distance" c:identifier="gdk_events_get_distance">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1639">If both events have X/Y information, the distance between both coordinates
(as in a straight line going from @event1 to @event2) will be returned.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1648">%TRUE if the distance could be calculated.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="event1" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1641">first #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="event2" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1642">second #GdkEvent</doc>
<type name="Event" c:type="GdkEvent*"/>
</parameter>
<parameter name="distance" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1643">return location for the distance</doc>
<type name="gdouble" c:type="gdouble*"/>
</parameter>
</parameters>
</function>
<function name="get_show_events" c:identifier="gdk_get_show_events">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1812">Gets whether event debugging output is enabled.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1817">%TRUE if event debugging output is enabled.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
</function>
<function name="gl_error_quark" c:identifier="gdk_gl_error_quark" moved-to="GLError.quark">
<return-value transfer-ownership="none">
<type name="GLib.Quark" c:type="GQuark"/>
</return-value>
</function>
<function name="intern_mime_type" c:identifier="gdk_intern_mime_type">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="84">Canonicalizes the given mime type and interns the result.
If @string is not a valid mime type, %NULL is returned instead.
See RFC 2048 for the syntax if mime types.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="93">An interned string for the canonicalized mime type
or %NULL if the string wasn't a valid mime type</doc>
<type name="utf8" c:type="const char*"/>
</return-value>
<parameters>
<parameter name="string" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkcontentformats.c" line="86">string of a potential mime type</doc>
<type name="utf8" c:type="const char*"/>
</parameter>
</parameters>
</function>
<function name="keyval_convert_case" c:identifier="gdk_keyval_convert_case">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="766">Obtains the upper- and lower-case versions of the keyval @symbol.
Examples of keyvals are #GDK_KEY_a, #GDK_KEY_Enter, #GDK_KEY_F1, etc.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="symbol" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="768">a keyval</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="lower" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="769">return location for lowercase version of @symbol</doc>
<type name="guint" c:type="guint*"/>
</parameter>
<parameter name="upper" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="770">return location for uppercase version of @symbol</doc>
<type name="guint" c:type="guint*"/>
</parameter>
</parameters>
</function>
<function name="keyval_from_name" c:identifier="gdk_keyval_from_name">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="747">Converts a key name to a key value.
The names are the same as those in the
`gdk/gdkkeysyms.h` header file
but without the leading &#x201C;GDK_KEY_&#x201D;.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="757">the corresponding key value, or %GDK_KEY_VoidSymbol
if the key name is not a valid key</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<parameter name="keyval_name" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="749">a key name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<function name="keyval_is_lower" c:identifier="gdk_keyval_is_lower">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="311">Returns %TRUE if the given key value is in lower case.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="317">%TRUE if @keyval is in lower case, or if @keyval is not
subject to case conversion.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="313">a key value.</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</function>
<function name="keyval_is_upper" c:identifier="gdk_keyval_is_upper">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="289">Returns %TRUE if the given key value is in upper case.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="295">%TRUE if @keyval is in upper case, or if @keyval is not subject to
case conversion.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="291">a key value.</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</function>
<function name="keyval_name" c:identifier="gdk_keyval_name">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="727">Converts a key value into a symbolic name.
The names are the same as those in the
`gdk/gdkkeysyms.h` header file
but without the leading &#x201C;GDK_KEY_&#x201D;.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="737">a string containing the name
of the key, or %NULL if @keyval is not a valid key. The string
should not be modified.</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="729">a key value</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</function>
<function name="keyval_to_lower" c:identifier="gdk_keyval_to_lower">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="270">Converts a key value to lower case, if applicable.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="276">the lower case form of @keyval, or @keyval itself if it is already
in lower case or it is not subject to case conversion.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="272">a key value.</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</function>
<function name="keyval_to_unicode" c:identifier="gdk_keyval_to_unicode">
<doc xml:space="preserve" filename="../gdk/gdkkeyuni.c" line="879">Convert from a GDK key symbol to the corresponding ISO10646 (Unicode)
character.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeyuni.c" line="886">the corresponding unicode character, or 0 if there
is no corresponding character.</doc>
<type name="guint32" c:type="guint32"/>
</return-value>
<parameters>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeyuni.c" line="881">a GDK key symbol</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</function>
<function name="keyval_to_upper" c:identifier="gdk_keyval_to_upper">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="251">Converts a key value to upper case, if applicable.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="257">the upper case form of @keyval, or @keyval itself if it is already
in upper case or it is not subject to case conversion.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<parameter name="keyval" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeys.c" line="253">a key value.</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</function>
<function name="paintable_new_empty" c:identifier="gdk_paintable_new_empty" moved-to="Paintable.new_empty">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="627">Returns a paintable that has the given intrinsic size and draws nothing.
This is often useful for implementing the GdkPaintableClass:get_current_image()
virtual function when the paintable is in an incomplete state (like a
#GtkMediaStream before receiving the first frame).</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="637">a #GdkPaintable</doc>
<type name="Paintable" c:type="GdkPaintable*"/>
</return-value>
<parameters>
<parameter name="intrinsic_width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="629">The intrinsic width to report. Can be 0 for no width.</doc>
<type name="gint" c:type="int"/>
</parameter>
<parameter name="intrinsic_height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpaintable.c" line="630">The intrinsic height to report. Can be 0 for no height.</doc>
<type name="gint" c:type="int"/>
</parameter>
</parameters>
</function>
<function name="pango_layout_get_clip_region" c:identifier="gdk_pango_layout_get_clip_region" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="237">Obtains a clip region which contains the areas where the given ranges
of text would be drawn. @x_origin and @y_origin are the top left point
to center the layout. @index_ranges should contain
ranges of bytes in the layout&#x2019;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.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="255">a clip region containing the given ranges</doc>
<type name="cairo.Region" c:type="cairo_region_t*"/>
</return-value>
<parameters>
<parameter name="layout" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="239">a #PangoLayout</doc>
<type name="Pango.Layout" c:type="PangoLayout*"/>
</parameter>
<parameter name="x_origin" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="240">X pixel where you intend to draw the layout with this clip</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y_origin" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="241">Y pixel where you intend to draw the layout with this clip</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="index_ranges" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="242">array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes</doc>
<type name="gint" c:type="const gint*"/>
</parameter>
<parameter name="n_ranges" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="243">number of ranges in @index_ranges, i.e. half the size of @index_ranges</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</function>
<function name="pango_layout_line_get_clip_region" c:identifier="gdk_pango_layout_line_get_clip_region" introspectable="0">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="186">Obtains a clip region which contains the areas where the given
ranges of text would be drawn. @x_origin and @y_origin are the top left
position of the layout. @index_ranges
should contain ranges of bytes in the layout&#x2019;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.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="211">a clip region containing the given ranges</doc>
<type name="cairo.Region" c:type="cairo_region_t*"/>
</return-value>
<parameters>
<parameter name="line" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="188">a #PangoLayoutLine</doc>
<type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
</parameter>
<parameter name="x_origin" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="189">X pixel where you intend to draw the layout line with this clip</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="y_origin" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="190">baseline pixel where you intend to draw the layout line with this clip</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="index_ranges" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="191">array of byte indexes into the layout,
where even members of array are start indexes and odd elements
are end indexes</doc>
<array zero-terminated="0" c:type="const gint*">
<type name="gint" c:type="gint"/>
</array>
</parameter>
<parameter name="n_ranges" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpango.c" line="194">number of ranges in @index_ranges, i.e. half the size of @index_ranges</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</function>
<function name="pixbuf_get_from_surface" c:identifier="gdk_pixbuf_get_from_surface">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="151">Transfers image data from a #cairo_surface_t and converts it to an RGB(A)
representation inside a #GdkPixbuf. This allows you to efficiently read
individual pixels from cairo surfaces.
This function will create an RGB pixbuf with 8 bits per channel.
The pixbuf will contain an alpha channel if the @surface contains one.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="166">A newly-created pixbuf with a
reference count of 1, or %NULL on error</doc>
<type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
</return-value>
<parameters>
<parameter name="surface" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="153">surface to copy from</doc>
<type name="cairo.Surface" c:type="cairo_surface_t*"/>
</parameter>
<parameter name="src_x" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="154">Source X coordinate within @surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="src_y" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="155">Source Y coordinate within @surface</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="width" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="156">Width in pixels of region to get</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="height" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkpixbuf-drawable.c" line="157">Height in pixels of region to get</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</function>
<function name="set_allowed_backends" c:identifier="gdk_set_allowed_backends">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="216">Sets a list of backends that GDK should try to use.
This can be be useful if your application does not
work with certain GDK backends.
By default, GDK tries all included backends.
For example,
|[&lt;!-- language="C" --&gt;
gdk_set_allowed_backends ("wayland,quartz,*");
]|
instructs GDK to try the Wayland backend first,
followed by the Quartz backend, and then all
others.
If the `GDK_BACKEND` environment variable
is set, it determines what backends are tried in what
order, while still respecting the set of allowed backends
that are specified by this function.
The possible backend names are x11, win32, quartz,
broadway, wayland. You can also include a * in the
list to try all remaining backends.
This call must happen prior to gdk_display_open(),
gtk_init(), or gtk_init_check()
in order to take effect.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="backends" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkdisplaymanager.c" line="218">a comma-separated list of backends</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<function name="set_show_events" c:identifier="gdk_set_show_events">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1794">Sets whether a trace of received events is output.
Note that GTK+ must be compiled with debugging (that is,
configured using the `--enable-debug` option)
to use this option.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="show_events" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkevents.c" line="1796">%TRUE to output event debugging information.</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
</parameters>
</function>
<function name="text_property_to_utf8_list_for_display" c:identifier="gdk_text_property_to_utf8_list_for_display">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="32">Converts a text property in the given encoding to
a list of UTF-8 strings.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="46">the number of strings in the resulting list</doc>
<type name="gint" c:type="gint"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="34">a #GdkDisplay</doc>
<type name="Display" c:type="GdkDisplay*"/>
</parameter>
<parameter name="encoding" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="35">an atom representing the encoding of the text</doc>
<type name="Atom" c:type="GdkAtom"/>
</parameter>
<parameter name="format" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="36">the format of the property</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="text" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="37">the text to convert</doc>
<array length="4" zero-terminated="0" c:type="const guchar*">
<type name="guint8" c:type="guchar"/>
</array>
</parameter>
<parameter name="length" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="38">the length of @text, in bytes</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="list" direction="out" caller-allocates="0" transfer-ownership="full">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="39">location to store the list
of strings or %NULL. The list should be freed with
g_strfreev().</doc>
<array c:type="gchar***">
<type name="utf8" c:type="gchar**"/>
</array>
</parameter>
</parameters>
</function>
<function name="unicode_to_keyval" c:identifier="gdk_unicode_to_keyval">
<doc xml:space="preserve" filename="../gdk/gdkkeyuni.c" line="1689">Convert from a ISO10646 character to a key symbol.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeyuni.c" line="1695">the corresponding GDK key symbol, if one exists.
or, if there is no corresponding symbol,
wc | 0x01000000</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<parameter name="wc" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkkeyuni.c" line="1691">a ISO10646 encoded character</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</function>
<function name="utf8_to_string_target" c:identifier="gdk_utf8_to_string_target">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="64">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.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="73">the newly-allocated string, or %NULL if the
conversion failed. (It should not fail for any properly
formed UTF-8 string unless system limits like memory or
file descriptors are exceeded.)</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<parameter name="str" transfer-ownership="none">
<doc xml:space="preserve" filename="../gdk/gdkselection.c" line="66">a UTF-8 string</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<function name="vulkan_error_quark" c:identifier="gdk_vulkan_error_quark" moved-to="VulkanError.quark">
<return-value transfer-ownership="none">
<type name="GLib.Quark" c:type="GQuark"/>
</return-value>
</function>
</namespace>
</repository>