codegen: Fix array size variable on assignment
[vala-lang.git] / vapi / gdk-3.0.vapi
blob37fe483bfa8691a5852620f81edf10b2cfd5f665
1 /* gdk-3.0.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gdk", lower_case_cprefix = "gdk_", gir_namespace = "Gdk", gir_version = "3.0")]
4 namespace Gdk {
5         [CCode (cprefix = "GdkSelection", lower_case_cprefix = "gdk_selection_")]
6         namespace Selection {
7                 [CCode (cheader_filename = "gdk/gdk.h")]
8                 public static void convert (Gdk.Window requestor, Gdk.Atom selection, Gdk.Atom target, uint32 time_);
9                 [CCode (cheader_filename = "gdk/gdk.h")]
10                 public static unowned Gdk.Window owner_get (Gdk.Atom selection);
11                 [CCode (cheader_filename = "gdk/gdk.h")]
12                 public static unowned Gdk.Window owner_get_for_display (Gdk.Display display, Gdk.Atom selection);
13                 [CCode (cheader_filename = "gdk/gdk.h")]
14                 public static bool owner_set (Gdk.Window owner, Gdk.Atom selection, uint32 time_, bool send_event);
15                 [CCode (cheader_filename = "gdk/gdk.h")]
16                 public static bool owner_set_for_display (Gdk.Display display, Gdk.Window owner, Gdk.Atom selection, uint32 time_, bool send_event);
17                 [CCode (cheader_filename = "gdk/gdk.h")]
18                 public static int property_get (Gdk.Window requestor, uchar[] data, Gdk.Atom prop_type, int prop_format);
19                 [CCode (cheader_filename = "gdk/gdk.h")]
20                 public static void send_notify (Gdk.Window requestor, Gdk.Atom selection, Gdk.Atom target, Gdk.Atom property, uint32 time_);
21                 [CCode (cheader_filename = "gdk/gdk.h")]
22                 public static void send_notify_for_display (Gdk.Display display, Gdk.Window requestor, Gdk.Atom selection, Gdk.Atom target, Gdk.Atom property, uint32 time_);
23         }
24         [CCode (cheader_filename = "gdk/gdk.h")]
25         public class AppLaunchContext : GLib.AppLaunchContext {
26                 [CCode (has_construct_function = false)]
27                 protected AppLaunchContext ();
28                 public void set_desktop (int desktop);
29                 public void set_icon (GLib.Icon icon);
30                 public void set_icon_name (string icon_name);
31                 public void set_screen (Gdk.Screen screen);
32                 public void set_timestamp (uint32 timestamp);
33                 [NoAccessorMethod]
34                 public Gdk.Display display { owned get; construct; }
35         }
36         [CCode (ref_function = "g_object_ref", unref_function = "g_object_unref", cheader_filename = "gdk/gdk.h")]
37         public class Bitmap {
38         }
39         [CCode (cheader_filename = "gdk/gdk.h")]
40         public class Cursor : GLib.Object {
41                 [CCode (has_construct_function = false)]
42                 public Cursor (Gdk.CursorType cursor_type);
43                 [CCode (has_construct_function = false)]
44                 public Cursor.for_display (Gdk.Display display, Gdk.CursorType cursor_type);
45                 [CCode (has_construct_function = false)]
46                 public Cursor.from_name (Gdk.Display display, string name);
47                 [CCode (has_construct_function = false)]
48                 public Cursor.from_pixbuf (Gdk.Display display, Gdk.Pixbuf pixbuf, int x, int y);
49                 public Gdk.CursorType get_cursor_type ();
50                 public unowned Gdk.Display get_display ();
51                 public unowned Gdk.Pixbuf get_image ();
52                 public Gdk.CursorType cursor_type { get; construct; }
53                 public Gdk.Display display { get; construct; }
54         }
55         [CCode (cheader_filename = "gdk/gdk.h")]
56         public class Device : GLib.Object {
57                 [CCode (has_construct_function = false)]
58                 protected Device ();
59                 public static void free_history (Gdk.TimeCoord[] events);
60                 public unowned Gdk.Device get_associated_device ();
61                 public bool get_axis ([CCode (array_length = false)] double[] axes, Gdk.AxisUse use, out double value);
62                 public Gdk.AxisUse get_axis_use (uint index_);
63                 public bool get_axis_value (double axes, Gdk.Atom axis_label, double value);
64                 public Gdk.DeviceType get_device_type ();
65                 public unowned Gdk.Display get_display ();
66                 public bool get_has_cursor ();
67                 public bool get_history (Gdk.Window window, uint32 start, uint32 stop, Gdk.TimeCoord[] events);
68                 public bool get_key (uint index_, uint keyval, Gdk.ModifierType modifiers);
69                 public Gdk.InputMode get_mode ();
70                 public int get_n_axes ();
71                 public int get_n_keys ();
72                 public unowned string get_name ();
73                 public void get_position (out unowned Gdk.Screen screen, int x, int y);
74                 public Gdk.InputSource get_source ();
75                 public void get_state (Gdk.Window window, double axes, Gdk.ModifierType mask);
76                 public unowned Gdk.Window get_window_at_position (int win_x, int win_y);
77                 public Gdk.GrabStatus grab (Gdk.Window window, Gdk.GrabOwnership grab_ownership, bool owner_events, Gdk.EventMask event_mask, Gdk.Cursor cursor, uint32 time_);
78                 public static bool grab_info_libgtk_only (Gdk.Display display, Gdk.Device device, out unowned Gdk.Window grab_window, bool owner_events);
79                 public unowned GLib.List list_axes ();
80                 public unowned GLib.List list_slave_devices ();
81                 public void set_axis_use (uint index_, Gdk.AxisUse use);
82                 public void set_key (uint index_, uint keyval, Gdk.ModifierType modifiers);
83                 public bool set_mode (Gdk.InputMode mode);
84                 public void ungrab (uint32 time_);
85                 public void warp (Gdk.Screen screen, int x, int y);
86                 public Gdk.Device associated_device { get; }
87                 [NoAccessorMethod]
88                 public Gdk.DeviceManager device_manager { owned get; construct; }
89                 public Gdk.Display display { get; construct; }
90                 public bool has_cursor { get; construct; }
91                 [NoAccessorMethod]
92                 public Gdk.InputMode input_mode { get; set; }
93                 [NoAccessorMethod]
94                 public Gdk.InputSource input_source { get; construct; }
95                 public uint n_axes { get; }
96                 public string name { get; construct; }
97                 [NoAccessorMethod]
98                 public Gdk.DeviceType type { get; construct; }
99                 public virtual signal void changed ();
100         }
101         [CCode (cheader_filename = "gdk/gdk.h")]
102         public class DeviceManager : GLib.Object {
103                 [CCode (has_construct_function = false)]
104                 protected DeviceManager ();
105                 public unowned Gdk.Device get_client_pointer ();
106                 public unowned Gdk.Display get_display ();
107                 public unowned GLib.List list_devices (Gdk.DeviceType type);
108                 public Gdk.Display display { get; construct; }
109                 public virtual signal void device_added (Gdk.Device p0);
110                 public virtual signal void device_changed (Gdk.Device p0);
111                 public virtual signal void device_removed (Gdk.Device p0);
112         }
113         [CCode (cheader_filename = "gdk/gdk.h")]
114         public class Display : GLib.Object {
115                 [CCode (has_construct_function = false)]
116                 protected Display ();
117                 public void beep ();
118                 public void close ();
119                 public bool device_is_grabbed (Gdk.Device device);
120                 public void flush ();
121                 public unowned Gdk.AppLaunchContext get_app_launch_context ();
122                 public static unowned Gdk.Display get_default ();
123                 public uint get_default_cursor_size ();
124                 public unowned Gdk.Window get_default_group ();
125                 public unowned Gdk.Screen get_default_screen ();
126                 public unowned Gdk.DeviceManager get_device_manager ();
127                 public Gdk.Event get_event ();
128                 public void get_maximal_cursor_size (out uint width, out uint height);
129                 public int get_n_screens ();
130                 public unowned string get_name ();
131                 public unowned Gdk.Screen get_screen (int screen_num);
132                 public bool has_pending ();
133                 public bool is_closed ();
134                 public void notify_startup_complete (string startup_id);
135                 public static unowned Gdk.Display open (string display_name);
136                 public static unowned Gdk.Display open_default_libgtk_only ();
137                 public Gdk.Event peek_event ();
138                 public void put_event (Gdk.Event event);
139                 public bool request_selection_notification (Gdk.Atom selection);
140                 public void set_double_click_distance (uint distance);
141                 public void set_double_click_time (uint msec);
142                 public void store_clipboard (Gdk.Window clipboard_window, uint32 time_, Gdk.Atom[] targets);
143                 public bool supports_clipboard_persistence ();
144                 public bool supports_composite ();
145                 public bool supports_cursor_alpha ();
146                 public bool supports_cursor_color ();
147                 public bool supports_input_shapes ();
148                 public bool supports_selection_notification ();
149                 public bool supports_shapes ();
150                 public void sync ();
151                 public virtual signal void closed (bool p0);
152                 public virtual signal void opened ();
153         }
154         [CCode (cheader_filename = "gdk/gdk.h")]
155         public class DisplayManager : GLib.Object {
156                 [CCode (has_construct_function = false)]
157                 protected DisplayManager ();
158                 public static unowned Gdk.DisplayManager @get ();
159                 public unowned Gdk.Display get_default_display ();
160                 public GLib.SList<weak Gdk.Display> list_displays ();
161                 public unowned Gdk.Display open_display (string name);
162                 public void set_default_display (Gdk.Display display);
163                 public Gdk.Display default_display { get; set; }
164                 public virtual signal void display_opened (Gdk.Display p0);
165         }
166         [CCode (cheader_filename = "gdk/gdk.h")]
167         public class DragContext : GLib.Object {
168                 [CCode (has_construct_function = false)]
169                 protected DragContext ();
170                 public Gdk.DragAction get_actions ();
171                 public unowned Gdk.Window get_dest_window ();
172                 public unowned Gdk.Device get_device ();
173                 public Gdk.DragProtocol get_protocol ();
174                 public Gdk.DragAction get_selected_action ();
175                 public unowned Gdk.Window get_source_window ();
176                 public Gdk.DragAction get_suggested_action ();
177                 public unowned GLib.List list_targets ();
178                 public void set_device (Gdk.Device device);
179         }
180         [Compact]
181         [CCode (copy_function = "gdk_event_copy", type_id = "GDK_TYPE_EVENT", cheader_filename = "gdk/gdk.h")]
182         public class Event {
183                 public Gdk.EventAny any;
184                 public Gdk.EventButton button;
185                 public Gdk.EventConfigure configure;
186                 public Gdk.EventCrossing crossing;
187                 public Gdk.EventDND dnd;
188                 public Gdk.EventExpose expose;
189                 public Gdk.EventFocus focus_change;
190                 public Gdk.EventGrabBroken grab_broken;
191                 public Gdk.EventKey key;
192                 public Gdk.EventMotion motion;
193                 public Gdk.EventOwnerChange owner_change;
194                 public Gdk.EventProperty property;
195                 public Gdk.EventProximity proximity;
196                 public Gdk.EventScroll scroll;
197                 public Gdk.EventSelection selection;
198                 public Gdk.EventSetting setting;
199                 public Gdk.EventType type;
200                 public Gdk.EventVisibility visibility;
201                 public Gdk.EventWindowState window_state;
202                 [CCode (has_construct_function = false)]
203                 public Event (Gdk.EventType type);
204                 public Gdk.Event copy ();
205                 public static unowned Gdk.Event @get ();
206                 public bool get_axis (Gdk.AxisUse axis_use, out double value);
207                 public bool get_coords (out double x_win, out double y_win);
208                 public unowned Gdk.Device get_device ();
209                 public bool get_root_coords (out double x_root, out double y_root);
210                 public unowned Gdk.Screen get_screen ();
211                 public unowned Gdk.Device get_source_device ();
212                 public bool get_state (out Gdk.ModifierType state);
213                 public uint32 get_time ();
214                 public static void handler_set (owned Gdk.EventFunc func);
215                 public static unowned Gdk.Event peek ();
216                 public void put ();
217                 public static void request_motions (Gdk.EventMotion event);
218                 public void set_device (Gdk.Device device);
219                 public void set_screen (Gdk.Screen screen);
220                 public void set_source_device (Gdk.Device device);
221         }
222         [CCode (cheader_filename = "gdk/gdk.h")]
223         public class Keymap : GLib.Object {
224                 [CCode (has_construct_function = false)]
225                 protected Keymap ();
226                 public void add_virtual_modifiers (Gdk.ModifierType state);
227                 public bool get_caps_lock_state ();
228                 public static unowned Gdk.Keymap get_default ();
229                 public Pango.Direction get_direction ();
230                 public bool get_entries_for_keycode (uint hardware_keycode, out unowned Gdk.KeymapKey[] keys, out unowned uint[] keyvals, int n_entries);
231                 public bool get_entries_for_keyval (uint keyval, out unowned Gdk.KeymapKey[] keys);
232                 public static unowned Gdk.Keymap get_for_display (Gdk.Display display);
233                 public bool get_num_lock_state ();
234                 public bool have_bidi_layouts ();
235                 public uint lookup_key (Gdk.KeymapKey key);
236                 public bool map_virtual_modifiers (Gdk.ModifierType state);
237                 public bool translate_keyboard_state (uint hardware_keycode, Gdk.ModifierType state, int group, uint keyval, int effective_group, int level, Gdk.ModifierType consumed_modifiers);
238                 public virtual signal void direction_changed ();
239                 public virtual signal void keys_changed ();
240                 public virtual signal void state_changed ();
241         }
242         [CCode (cheader_filename = "gdk/gdk.h")]
243         public class Screen : GLib.Object {
244                 [CCode (has_construct_function = false)]
245                 protected Screen ();
246                 public unowned Gdk.Window get_active_window ();
247                 public static unowned Gdk.Screen get_default ();
248                 public unowned Gdk.Display get_display ();
249                 public unowned Cairo.FontOptions get_font_options ();
250                 public int get_height ();
251                 public int get_height_mm ();
252                 public int get_monitor_at_point (int x, int y);
253                 public int get_monitor_at_window (Gdk.Window window);
254                 public void get_monitor_geometry (int monitor_num, out Gdk.Rectangle dest);
255                 public int get_monitor_height_mm (int monitor_num);
256                 public unowned string get_monitor_plug_name (int monitor_num);
257                 public int get_monitor_width_mm (int monitor_num);
258                 public int get_n_monitors ();
259                 public int get_number ();
260                 public int get_primary_monitor ();
261                 public double get_resolution ();
262                 public unowned Gdk.Visual get_rgba_visual ();
263                 public unowned Gdk.Window get_root_window ();
264                 public bool get_setting (string name, GLib.Value value);
265                 public unowned Gdk.Visual get_system_visual ();
266                 public GLib.List<weak Gdk.Window> get_toplevel_windows ();
267                 public int get_width ();
268                 public int get_width_mm ();
269                 public GLib.List<Gdk.Window>? get_window_stack ();
270                 public static int height ();
271                 public static int height_mm ();
272                 public bool is_composited ();
273                 public GLib.List<weak Gdk.Visual> list_visuals ();
274                 public unowned string make_display_name ();
275                 public void set_font_options (Cairo.FontOptions options);
276                 public void set_resolution (double dpi);
277                 public static int width ();
278                 public static int width_mm ();
279                 public void* font_options { get; set; }
280                 public double resolution { get; set; }
281                 public virtual signal void composited_changed ();
282                 public virtual signal void monitors_changed ();
283                 public virtual signal void size_changed ();
284         }
285         [CCode (cheader_filename = "gdk/gdk.h")]
286         public class Visual : GLib.Object {
287                 [CCode (has_construct_function = false)]
288                 protected Visual ();
289                 public static unowned Gdk.Visual get_best ();
290                 public static int get_best_depth ();
291                 public static Gdk.VisualType get_best_type ();
292                 public static unowned Gdk.Visual get_best_with_both (int depth, Gdk.VisualType visual_type);
293                 public static unowned Gdk.Visual get_best_with_depth (int depth);
294                 public static unowned Gdk.Visual get_best_with_type (Gdk.VisualType visual_type);
295                 public int get_bits_per_rgb ();
296                 public void get_blue_pixel_details (uint32 mask, int shift, int precision);
297                 public Gdk.ByteOrder get_byte_order ();
298                 public int get_colormap_size ();
299                 public int get_depth ();
300                 public void get_green_pixel_details (uint32 mask, int shift, int precision);
301                 public void get_red_pixel_details (uint32 mask, int shift, int precision);
302                 public unowned Gdk.Screen get_screen ();
303                 public static unowned Gdk.Visual get_system ();
304                 public Gdk.VisualType get_visual_type ();
305         }
306         [CCode (cheader_filename = "gdk/gdk.h")]
307         public class Window : GLib.Object {
308                 [CCode (has_construct_function = false)]
309                 public Window (Gdk.Window? parent, Gdk.WindowAttr attributes, int attributes_mask);
310                 public void add_filter (Gdk.FilterFunc function);
311                 public static unowned Gdk.Window at_pointer (out int win_x, out int win_y);
312                 public void beep ();
313                 public void begin_move_drag (int button, int root_x, int root_y, uint32 timestamp);
314                 public void begin_paint_rect (Gdk.Rectangle rectangle);
315                 public void begin_paint_region (Cairo.Region region);
316                 public void begin_resize_drag (Gdk.WindowEdge edge, int button, int root_x, int root_y, uint32 timestamp);
317                 public void configure_finished ();
318                 public static void constrain_size (Gdk.Geometry geometry, uint flags, int width, int height, out int new_width, out int new_height);
319                 public void coords_from_parent (double parent_x, double parent_y, double x, double y);
320                 public void coords_to_parent (double x, double y, double parent_x, double parent_y);
321                 public unowned Cairo.Surface create_similar_surface (Cairo.Content content, int width, int height);
322                 public void deiconify ();
323                 public void destroy ();
324                 public void enable_synchronized_configure ();
325                 public void end_paint ();
326                 public bool ensure_native ();
327                 public void flush ();
328                 public void focus (uint32 timestamp);
329                 public void freeze_toplevel_updates_libgtk_only ();
330                 public void freeze_updates ();
331                 public void fullscreen ();
332                 public void geometry_changed ();
333                 public bool get_accept_focus ();
334                 public unowned Cairo.Pattern get_background_pattern ();
335                 public GLib.List<weak Gdk.Window> get_children ();
336                 public unowned Cairo.Region get_clip_region ();
337                 public bool get_composited ();
338                 public unowned Gdk.Cursor? get_cursor ();
339                 public bool get_decorations (out Gdk.WMDecoration decorations);
340                 public unowned Gdk.Cursor get_device_cursor (Gdk.Device device);
341                 public Gdk.EventMask get_device_events (Gdk.Device device);
342                 public unowned Gdk.Window get_device_position (Gdk.Device device, int x, int y, Gdk.ModifierType mask);
343                 public unowned Gdk.Display get_display ();
344                 public Gdk.DragProtocol get_drag_protocol (out unowned Gdk.Window target);
345                 public unowned Gdk.Window get_effective_parent ();
346                 public unowned Gdk.Window get_effective_toplevel ();
347                 public Gdk.EventMask get_events ();
348                 public bool get_focus_on_map ();
349                 public void get_frame_extents (out Gdk.Rectangle rect);
350                 public void get_geometry (out int x, out int y, out int width, out int height);
351                 public unowned Gdk.Window get_group ();
352                 public int get_height ();
353                 public bool get_modal_hint ();
354                 public int get_origin (out int x, out int y);
355                 public unowned Gdk.Window get_parent ();
356                 public unowned Gdk.Window get_pointer (out int x, out int y, out Gdk.ModifierType mask);
357                 public void get_position (out int x, out int y);
358                 public void get_root_coords (int x, int y, int root_x, int root_y);
359                 public void get_root_origin (out int x, out int y);
360                 public unowned Gdk.Screen get_screen ();
361                 public Gdk.EventMask get_source_events (Gdk.InputSource source);
362                 public Gdk.WindowState get_state ();
363                 public bool get_support_multidevice ();
364                 public unowned Gdk.Window get_toplevel ();
365                 public Gdk.WindowTypeHint get_type_hint ();
366                 public unowned Cairo.Region get_update_area ();
367                 public void get_user_data (void* data);
368                 public unowned Cairo.Region get_visible_region ();
369                 public unowned Gdk.Visual get_visual ();
370                 public int get_width ();
371                 public Gdk.WindowType get_window_type ();
372                 public bool has_native ();
373                 public void hide ();
374                 public void iconify ();
375                 public void input_shape_combine_region (Cairo.Region shape_region, int offset_x, int offset_y);
376                 public void invalidate_maybe_recurse (Cairo.Region region, Gdk.WindowChildFunc child_func);
377                 public void invalidate_rect (Gdk.Rectangle? rect, bool invalidate_children);
378                 public void invalidate_region (Cairo.Region region, bool invalidate_children);
379                 public bool is_destroyed ();
380                 public bool is_input_only ();
381                 public bool is_shaped ();
382                 public bool is_viewable ();
383                 public bool is_visible ();
384                 public void lower ();
385                 public void maximize ();
386                 public void merge_child_input_shapes ();
387                 public void merge_child_shapes ();
388                 public void move (int x, int y);
389                 public void move_region (Cairo.Region region, int dx, int dy);
390                 public void move_resize (int x, int y, int width, int height);
391                 public unowned GLib.List<Gdk.Window> peek_children ();
392                 public static void process_all_updates ();
393                 public void process_updates (bool update_children);
394                 public void raise ();
395                 public void register_dnd ();
396                 public void remove_filter (Gdk.FilterFunc function);
397                 public void reparent (Gdk.Window new_parent, int x, int y);
398                 public void resize (int width, int height);
399                 public void restack (Gdk.Window sibling, bool above);
400                 public void scroll (int dx, int dy);
401                 public void set_accept_focus (bool accept_focus);
402                 public void set_background (Gdk.Color color);
403                 public void set_background_pattern (Cairo.Pattern pattern);
404                 public void set_background_rgba (Gdk.RGBA rgba);
405                 public void set_child_input_shapes ();
406                 public void set_child_shapes ();
407                 public void set_composited (bool composited);
408                 public void set_cursor (Gdk.Cursor? cursor);
409                 public static void set_debug_updates (bool setting);
410                 public void set_decorations (Gdk.WMDecoration decorations);
411                 public void set_device_cursor (Gdk.Device device, Gdk.Cursor cursor);
412                 public void set_device_events (Gdk.Device device, Gdk.EventMask event_mask);
413                 public void set_events (Gdk.EventMask event_mask);
414                 public void set_focus_on_map (bool focus_on_map);
415                 public void set_functions (Gdk.WMFunction functions);
416                 public void set_geometry_hints (Gdk.Geometry geometry, Gdk.WindowHints geom_mask);
417                 public void set_group (Gdk.Window leader);
418                 public void set_icon_list (GLib.List<Gdk.Pixbuf> pixbufs);
419                 public void set_icon_name (string name);
420                 public void set_keep_above (bool setting);
421                 public void set_keep_below (bool setting);
422                 public void set_modal_hint (bool modal);
423                 public void set_opacity (double opacity);
424                 public void set_override_redirect (bool override_redirect);
425                 public void set_role (string role);
426                 public void set_skip_pager_hint (bool skips_pager);
427                 public void set_skip_taskbar_hint (bool skips_taskbar);
428                 public void set_source_events (Gdk.InputSource source, Gdk.EventMask event_mask);
429                 public void set_startup_id (string startup_id);
430                 public bool set_static_gravities (bool use_static);
431                 public void set_support_multidevice (bool support_multidevice);
432                 public void set_title (string title);
433                 public void set_transient_for (Gdk.Window parent);
434                 public void set_type_hint (Gdk.WindowTypeHint hint);
435                 public void set_urgency_hint (bool urgent);
436                 public void set_user_data (void* user_data);
437                 public void shape_combine_region (Cairo.Region shape_region, int offset_x, int offset_y);
438                 public void show ();
439                 public void show_unraised ();
440                 public void stick ();
441                 public void thaw_toplevel_updates_libgtk_only ();
442                 public void thaw_updates ();
443                 public void unfullscreen ();
444                 public void unmaximize ();
445                 public void unstick ();
446                 public void withdraw ();
447                 public Gdk.Cursor cursor { get; set; }
448                 public virtual signal Cairo.Surface create_surface (int width, int height);
449                 public virtual signal void from_embedder (double embedder_x, double embedder_y, void* offscreen_x, void* offscreen_y);
450                 public virtual signal unowned Gdk.Window pick_embedded_child (double x, double y);
451                 public virtual signal void to_embedder (double offscreen_x, double offscreen_y, void* embedder_x, void* embedder_y);
452         }
453         [CCode (cheader_filename = "gdk/gdk.h")]
454         [SimpleType]
455         public struct Atom {
456                 public static Gdk.Atom intern (string atom_name, bool only_if_exists);
457                 public static Gdk.Atom intern_static_string (string atom_name);
458                 public string name ();
459         }
460         [CCode (type_id = "GDK_TYPE_COLOR", cheader_filename = "gdk/gdk.h")]
461         public struct Color {
462                 public uint32 pixel;
463                 public uint16 red;
464                 public uint16 green;
465                 public uint16 blue;
466                 public Gdk.Color copy ();
467                 public bool equal (Gdk.Color colorb);
468                 public void free ();
469                 public uint hash ();
470                 public static bool parse (string spec, out Gdk.Color color);
471                 public string to_string ();
472         }
473         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
474         public struct EventAny {
475                 public Gdk.EventType type;
476                 public weak Gdk.Window window;
477                 public char send_event;
478         }
479         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
480         public struct EventButton {
481                 public Gdk.EventType type;
482                 public weak Gdk.Window window;
483                 public char send_event;
484                 public uint32 time;
485                 public double x;
486                 public double y;
487                 [CCode (array_length = false)]
488                 public weak double[] axes;
489                 public Gdk.ModifierType state;
490                 public uint button;
491                 public weak Gdk.Device device;
492                 public double x_root;
493                 public double y_root;
494         }
495         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
496         public struct EventConfigure {
497                 public Gdk.EventType type;
498                 public weak Gdk.Window window;
499                 public char send_event;
500                 public int x;
501                 public int y;
502                 public int width;
503                 public int height;
504         }
505         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
506         public struct EventCrossing {
507                 public Gdk.EventType type;
508                 public weak Gdk.Window window;
509                 public char send_event;
510                 public weak Gdk.Window subwindow;
511                 public uint32 time;
512                 public double x;
513                 public double y;
514                 public double x_root;
515                 public double y_root;
516                 public Gdk.CrossingMode mode;
517                 public Gdk.NotifyType detail;
518                 public bool focus;
519                 public Gdk.ModifierType state;
520         }
521         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
522         public struct EventDND {
523                 public Gdk.EventType type;
524                 public weak Gdk.Window window;
525                 public char send_event;
526                 public weak Gdk.DragContext context;
527                 public uint32 time;
528                 public short x_root;
529                 public short y_root;
530         }
531         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
532         public struct EventExpose {
533                 public Gdk.EventType type;
534                 public weak Gdk.Window window;
535                 public char send_event;
536                 public Gdk.Rectangle area;
537                 public weak Cairo.Region region;
538                 public int count;
539         }
540         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
541         public struct EventFocus {
542                 public Gdk.EventType type;
543                 public weak Gdk.Window window;
544                 public char send_event;
545                 public int16 @in;
546         }
547         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
548         public struct EventGrabBroken {
549                 public Gdk.EventType type;
550                 public weak Gdk.Window window;
551                 public char send_event;
552                 public bool keyboard;
553                 public bool implicit;
554                 public weak Gdk.Window grab_window;
555         }
556         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
557         public struct EventKey {
558                 public Gdk.EventType type;
559                 public weak Gdk.Window window;
560                 public char send_event;
561                 public uint32 time;
562                 public Gdk.ModifierType state;
563                 public uint keyval;
564                 public int length;
565                 [CCode (cname = "string")]
566                 public weak string str;
567                 public uint16 hardware_keycode;
568                 public uchar group;
569                 public uint is_modifier;
570         }
571         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
572         public struct EventMotion {
573                 public Gdk.EventType type;
574                 public weak Gdk.Window window;
575                 public char send_event;
576                 public uint32 time;
577                 public double x;
578                 public double y;
579                 [CCode (array_length = false)]
580                 public weak double[] axes;
581                 public Gdk.ModifierType state;
582                 public bool is_hint;
583                 public weak Gdk.Device device;
584                 public double x_root;
585                 public double y_root;
586         }
587         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
588         public struct EventOwnerChange {
589                 public Gdk.EventType type;
590                 public weak Gdk.Window window;
591                 public char send_event;
592                 public weak Gdk.Window owner;
593                 public Gdk.OwnerChange reason;
594                 public Gdk.Atom selection;
595                 public uint32 time;
596                 public uint32 selection_time;
597         }
598         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
599         public struct EventProperty {
600                 public Gdk.EventType type;
601                 public weak Gdk.Window window;
602                 public char send_event;
603                 public Gdk.Atom atom;
604                 public uint32 time;
605                 public Gdk.PropertyState state;
606         }
607         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
608         public struct EventProximity {
609                 public Gdk.EventType type;
610                 public weak Gdk.Window window;
611                 public char send_event;
612                 public uint32 time;
613                 public weak Gdk.Device device;
614         }
615         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
616         public struct EventScroll {
617                 public Gdk.EventType type;
618                 public weak Gdk.Window window;
619                 public char send_event;
620                 public uint32 time;
621                 public double x;
622                 public double y;
623                 public Gdk.ModifierType state;
624                 public Gdk.ScrollDirection direction;
625                 public weak Gdk.Device device;
626                 public double x_root;
627                 public double y_root;
628         }
629         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
630         public struct EventSelection {
631                 public Gdk.EventType type;
632                 public weak Gdk.Window window;
633                 public char send_event;
634                 public Gdk.Atom selection;
635                 public Gdk.Atom target;
636                 public Gdk.Atom property;
637                 public uint32 time;
638                 public weak Gdk.Window requestor;
639         }
640         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
641         public struct EventSetting {
642                 public Gdk.EventType type;
643                 public weak Gdk.Window window;
644                 public char send_event;
645                 public Gdk.SettingAction action;
646                 public weak string name;
647         }
648         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
649         public struct EventVisibility {
650                 public Gdk.EventType type;
651                 public weak Gdk.Window window;
652                 public char send_event;
653                 public Gdk.VisibilityState state;
654         }
655         [CCode (has_type_id = false, cheader_filename = "gdk/gdk.h")]
656         public struct EventWindowState {
657                 public Gdk.EventType type;
658                 public weak Gdk.Window window;
659                 public char send_event;
660                 public Gdk.WindowState changed_mask;
661                 public Gdk.WindowState new_window_state;
662         }
663         [CCode (type_id = "GDK_TYPE_GEOMETRY", cheader_filename = "gdk/gdk.h")]
664         public struct Geometry {
665                 public int min_width;
666                 public int min_height;
667                 public int max_width;
668                 public int max_height;
669                 public int base_width;
670                 public int base_height;
671                 public int width_inc;
672                 public int height_inc;
673                 public double min_aspect;
674                 public double max_aspect;
675                 public Gdk.Gravity win_gravity;
676         }
677         [CCode (type_id = "GDK_TYPE_KEYMAP_KEY", cheader_filename = "gdk/gdk.h")]
678         public struct KeymapKey {
679                 public uint keycode;
680                 public int group;
681                 public int level;
682         }
683         [CCode (type_id = "GDK_TYPE_POINT", cheader_filename = "gdk/gdk.h")]
684         public struct Point {
685                 public int x;
686                 public int y;
687         }
688         [CCode (type_id = "GDK_TYPE_RGBA", cheader_filename = "gdk/gdk.h")]
689         public struct RGBA {
690                 public double red;
691                 public double green;
692                 public double blue;
693                 public double alpha;
694                 public Gdk.RGBA copy ();
695                 public static bool equal (void* p1, void* p2);
696                 public void free ();
697                 public static uint hash (void* p);
698                 public bool parse (string spec);
699                 public unowned string to_string ();
700         }
701         [CCode (type_id = "GDK_TYPE_RECTANGLE", cheader_filename = "gdk/gdk.h")]
702         public struct Rectangle {
703                 public int x;
704                 public int y;
705                 public int width;
706                 public int height;
707                 public bool intersect (Gdk.Rectangle src2, out Gdk.Rectangle dest);
708                 public void union (Gdk.Rectangle src2, out Gdk.Rectangle dest);
709         }
710         [CCode (type_id = "GDK_TYPE_TIME_COORD", cheader_filename = "gdk/gdk.h")]
711         public struct TimeCoord {
712                 public uint32 time;
713                 [CCode (array_length = false)]
714                 public weak double[] axes;
715         }
716         [CCode (type_id = "GDK_TYPE_WINDOW_ATTR", cheader_filename = "gdk/gdk.h")]
717         public struct WindowAttr {
718                 public weak string title;
719                 public int event_mask;
720                 public int x;
721                 public int y;
722                 public int width;
723                 public int height;
724                 public Gdk.WindowWindowClass wclass;
725                 public weak Gdk.Visual visual;
726                 public Gdk.WindowType window_type;
727                 public weak Gdk.Cursor cursor;
728                 public weak string wmclass_name;
729                 public weak string wmclass_class;
730                 public bool override_redirect;
731                 public Gdk.WindowTypeHint type_hint;
732         }
733         [CCode (type_id = "GDK_TYPE_WINDOW_REDIRECT", cheader_filename = "gdk/gdk.h")]
734         public struct WindowRedirect {
735         }
736         [CCode (type_id = "GDK_TYPE_XEVENT", cheader_filename = "gdk/gdk.h")]
737         public struct XEvent {
738         }
739         [CCode (cprefix = "GDK_AXIS_", cheader_filename = "gdk/gdk.h")]
740         public enum AxisUse {
741                 IGNORE,
742                 X,
743                 Y,
744                 PRESSURE,
745                 XTILT,
746                 YTILT,
747                 WHEEL,
748                 LAST
749         }
750         [CCode (cprefix = "GDK_", cheader_filename = "gdk/gdk.h")]
751         public enum ByteOrder {
752                 LSB_FIRST,
753                 MSB_FIRST
754         }
755         [CCode (cprefix = "GDK_CROSSING_", cheader_filename = "gdk/gdk.h")]
756         public enum CrossingMode {
757                 NORMAL,
758                 GRAB,
759                 UNGRAB,
760                 GTK_GRAB,
761                 GTK_UNGRAB,
762                 STATE_CHANGED
763         }
764         [CCode (cprefix = "GDK_", cheader_filename = "gdk/gdk.h")]
765         public enum CursorType {
766                 X_CURSOR,
767                 ARROW,
768                 BASED_ARROW_DOWN,
769                 BASED_ARROW_UP,
770                 BOAT,
771                 BOGOSITY,
772                 BOTTOM_LEFT_CORNER,
773                 BOTTOM_RIGHT_CORNER,
774                 BOTTOM_SIDE,
775                 BOTTOM_TEE,
776                 BOX_SPIRAL,
777                 CENTER_PTR,
778                 CIRCLE,
779                 CLOCK,
780                 COFFEE_MUG,
781                 CROSS,
782                 CROSS_REVERSE,
783                 CROSSHAIR,
784                 DIAMOND_CROSS,
785                 DOT,
786                 DOTBOX,
787                 DOUBLE_ARROW,
788                 DRAFT_LARGE,
789                 DRAFT_SMALL,
790                 DRAPED_BOX,
791                 EXCHANGE,
792                 FLEUR,
793                 GOBBLER,
794                 GUMBY,
795                 HAND1,
796                 HAND2,
797                 HEART,
798                 ICON,
799                 IRON_CROSS,
800                 LEFT_PTR,
801                 LEFT_SIDE,
802                 LEFT_TEE,
803                 LEFTBUTTON,
804                 LL_ANGLE,
805                 LR_ANGLE,
806                 MAN,
807                 MIDDLEBUTTON,
808                 MOUSE,
809                 PENCIL,
810                 PIRATE,
811                 PLUS,
812                 QUESTION_ARROW,
813                 RIGHT_PTR,
814                 RIGHT_SIDE,
815                 RIGHT_TEE,
816                 RIGHTBUTTON,
817                 RTL_LOGO,
818                 SAILBOAT,
819                 SB_DOWN_ARROW,
820                 SB_H_DOUBLE_ARROW,
821                 SB_LEFT_ARROW,
822                 SB_RIGHT_ARROW,
823                 SB_UP_ARROW,
824                 SB_V_DOUBLE_ARROW,
825                 SHUTTLE,
826                 SIZING,
827                 SPIDER,
828                 SPRAYCAN,
829                 STAR,
830                 TARGET,
831                 TCROSS,
832                 TOP_LEFT_ARROW,
833                 TOP_LEFT_CORNER,
834                 TOP_RIGHT_CORNER,
835                 TOP_SIDE,
836                 TOP_TEE,
837                 TREK,
838                 UL_ANGLE,
839                 UMBRELLA,
840                 UR_ANGLE,
841                 WATCH,
842                 XTERM,
843                 LAST_CURSOR,
844                 BLANK_CURSOR,
845                 CURSOR_IS_PIXMAP
846         }
847         [CCode (cprefix = "GDK_DEVICE_TYPE_", cheader_filename = "gdk/gdk.h")]
848         public enum DeviceType {
849                 MASTER,
850                 SLAVE,
851                 FLOATING
852         }
853         [CCode (cprefix = "GDK_ACTION_", cheader_filename = "gdk/gdk.h")]
854         [Flags]
855         public enum DragAction {
856                 DEFAULT,
857                 COPY,
858                 MOVE,
859                 LINK,
860                 PRIVATE,
861                 ASK
862         }
863         [CCode (cprefix = "GDK_DRAG_PROTO_", cheader_filename = "gdk/gdk.h")]
864         public enum DragProtocol {
865                 NONE,
866                 MOTIF,
867                 XDND,
868                 ROOTWIN,
869                 WIN32_DROPFILES,
870                 OLE2,
871                 LOCAL
872         }
873         [CCode (cprefix = "GDK_", cheader_filename = "gdk/gdk.h")]
874         [Flags]
875         public enum EventMask {
876                 EXPOSURE_MASK,
877                 POINTER_MOTION_MASK,
878                 POINTER_MOTION_HINT_MASK,
879                 BUTTON_MOTION_MASK,
880                 BUTTON1_MOTION_MASK,
881                 BUTTON2_MOTION_MASK,
882                 BUTTON3_MOTION_MASK,
883                 BUTTON_PRESS_MASK,
884                 BUTTON_RELEASE_MASK,
885                 KEY_PRESS_MASK,
886                 KEY_RELEASE_MASK,
887                 ENTER_NOTIFY_MASK,
888                 LEAVE_NOTIFY_MASK,
889                 FOCUS_CHANGE_MASK,
890                 STRUCTURE_MASK,
891                 PROPERTY_CHANGE_MASK,
892                 VISIBILITY_NOTIFY_MASK,
893                 PROXIMITY_IN_MASK,
894                 PROXIMITY_OUT_MASK,
895                 SUBSTRUCTURE_MASK,
896                 SCROLL_MASK,
897                 ALL_EVENTS_MASK
898         }
899         [CCode (cprefix = "GDK_", cheader_filename = "gdk/gdk.h")]
900         public enum EventType {
901                 NOTHING,
902                 DELETE,
903                 DESTROY,
904                 EXPOSE,
905                 MOTION_NOTIFY,
906                 BUTTON_PRESS,
907                 @2BUTTON_PRESS,
908                 @3BUTTON_PRESS,
909                 BUTTON_RELEASE,
910                 KEY_PRESS,
911                 KEY_RELEASE,
912                 ENTER_NOTIFY,
913                 LEAVE_NOTIFY,
914                 FOCUS_CHANGE,
915                 CONFIGURE,
916                 MAP,
917                 UNMAP,
918                 PROPERTY_NOTIFY,
919                 SELECTION_CLEAR,
920                 SELECTION_REQUEST,
921                 SELECTION_NOTIFY,
922                 PROXIMITY_IN,
923                 PROXIMITY_OUT,
924                 DRAG_ENTER,
925                 DRAG_LEAVE,
926                 DRAG_MOTION,
927                 DRAG_STATUS,
928                 DROP_START,
929                 DROP_FINISHED,
930                 CLIENT_EVENT,
931                 VISIBILITY_NOTIFY,
932                 SCROLL,
933                 WINDOW_STATE,
934                 SETTING,
935                 OWNER_CHANGE,
936                 GRAB_BROKEN,
937                 DAMAGE,
938                 EVENT_LAST
939         }
940         [CCode (cprefix = "GDK_EXTENSION_EVENTS_", cheader_filename = "gdk/gdk.h")]
941         public enum ExtensionMode {
942                 NONE,
943                 ALL,
944                 CURSOR
945         }
946         [CCode (cprefix = "GDK_FILTER_", cheader_filename = "gdk/gdk.h")]
947         public enum FilterReturn {
948                 CONTINUE,
949                 TRANSLATE,
950                 REMOVE
951         }
952         [CCode (cprefix = "GDK_OWNERSHIP_", cheader_filename = "gdk/gdk.h")]
953         public enum GrabOwnership {
954                 NONE,
955                 WINDOW,
956                 APPLICATION
957         }
958         [CCode (cprefix = "GDK_GRAB_", cheader_filename = "gdk/gdk.h")]
959         public enum GrabStatus {
960                 SUCCESS,
961                 ALREADY_GRABBED,
962                 INVALID_TIME,
963                 NOT_VIEWABLE,
964                 FROZEN
965         }
966         [CCode (cprefix = "GDK_GRAVITY_", cheader_filename = "gdk/gdk.h")]
967         public enum Gravity {
968                 NORTH_WEST,
969                 NORTH,
970                 NORTH_EAST,
971                 WEST,
972                 CENTER,
973                 EAST,
974                 SOUTH_WEST,
975                 SOUTH,
976                 SOUTH_EAST,
977                 STATIC
978         }
979         [CCode (cprefix = "GDK_MODE_", cheader_filename = "gdk/gdk.h")]
980         public enum InputMode {
981                 DISABLED,
982                 SCREEN,
983                 WINDOW
984         }
985         [CCode (cprefix = "GDK_SOURCE_", cheader_filename = "gdk/gdk.h")]
986         public enum InputSource {
987                 MOUSE,
988                 PEN,
989                 ERASER,
990                 CURSOR,
991                 KEYBOARD
992         }
993         [CCode (cprefix = "GDK_", cheader_filename = "gdk/gdk.h")]
994         [Flags]
995         public enum ModifierType {
996                 SHIFT_MASK,
997                 LOCK_MASK,
998                 CONTROL_MASK,
999                 MOD1_MASK,
1000                 MOD2_MASK,
1001                 MOD3_MASK,
1002                 MOD4_MASK,
1003                 MOD5_MASK,
1004                 BUTTON1_MASK,
1005                 BUTTON2_MASK,
1006                 BUTTON3_MASK,
1007                 BUTTON4_MASK,
1008                 BUTTON5_MASK,
1009                 SUPER_MASK,
1010                 HYPER_MASK,
1011                 META_MASK,
1012                 RELEASE_MASK,
1013                 MODIFIER_MASK
1014         }
1015         [CCode (cprefix = "GDK_NOTIFY_", cheader_filename = "gdk/gdk.h")]
1016         public enum NotifyType {
1017                 ANCESTOR,
1018                 VIRTUAL,
1019                 INFERIOR,
1020                 NONLINEAR,
1021                 NONLINEAR_VIRTUAL,
1022                 UNKNOWN
1023         }
1024         [CCode (cprefix = "GDK_OWNER_CHANGE_", cheader_filename = "gdk/gdk.h")]
1025         public enum OwnerChange {
1026                 NEW_OWNER,
1027                 DESTROY,
1028                 CLOSE
1029         }
1030         [CCode (cprefix = "GDK_PROP_MODE_", cheader_filename = "gdk/gdk.h")]
1031         public enum PropMode {
1032                 REPLACE,
1033                 PREPEND,
1034                 APPEND
1035         }
1036         [CCode (cprefix = "GDK_PROPERTY_", cheader_filename = "gdk/gdk.h")]
1037         public enum PropertyState {
1038                 NEW_VALUE,
1039                 DELETE
1040         }
1041         [CCode (cprefix = "GDK_SCROLL_", cheader_filename = "gdk/gdk.h")]
1042         public enum ScrollDirection {
1043                 UP,
1044                 DOWN,
1045                 LEFT,
1046                 RIGHT
1047         }
1048         [CCode (cprefix = "GDK_SETTING_ACTION_", cheader_filename = "gdk/gdk.h")]
1049         public enum SettingAction {
1050                 NEW,
1051                 CHANGED,
1052                 DELETED
1053         }
1054         [CCode (cprefix = "GDK_", cheader_filename = "gdk/gdk.h")]
1055         public enum Status {
1056                 OK,
1057                 ERROR,
1058                 ERROR_PARAM,
1059                 ERROR_FILE,
1060                 ERROR_MEM
1061         }
1062         [CCode (cprefix = "GDK_VISIBILITY_", cheader_filename = "gdk/gdk.h")]
1063         public enum VisibilityState {
1064                 UNOBSCURED,
1065                 PARTIAL,
1066                 FULLY_OBSCURED
1067         }
1068         [CCode (cprefix = "GDK_VISUAL_", cheader_filename = "gdk/gdk.h")]
1069         public enum VisualType {
1070                 STATIC_GRAY,
1071                 GRAYSCALE,
1072                 STATIC_COLOR,
1073                 PSEUDO_COLOR,
1074                 TRUE_COLOR,
1075                 DIRECT_COLOR
1076         }
1077         [CCode (cprefix = "GDK_DECOR_", cheader_filename = "gdk/gdk.h")]
1078         [Flags]
1079         public enum WMDecoration {
1080                 ALL,
1081                 BORDER,
1082                 RESIZEH,
1083                 TITLE,
1084                 MENU,
1085                 MINIMIZE,
1086                 MAXIMIZE
1087         }
1088         [CCode (cprefix = "GDK_FUNC_", cheader_filename = "gdk/gdk.h")]
1089         [Flags]
1090         public enum WMFunction {
1091                 ALL,
1092                 RESIZE,
1093                 MOVE,
1094                 MINIMIZE,
1095                 MAXIMIZE,
1096                 CLOSE
1097         }
1098         [CCode (cprefix = "GDK_WA_", cheader_filename = "gdk/gdk.h")]
1099         [Flags]
1100         public enum WindowAttributesType {
1101                 TITLE,
1102                 X,
1103                 Y,
1104                 CURSOR,
1105                 VISUAL,
1106                 WMCLASS,
1107                 NOREDIR,
1108                 TYPE_HINT
1109         }
1110         [CCode (cprefix = "GDK_WINDOW_EDGE_", cheader_filename = "gdk/gdk.h")]
1111         public enum WindowEdge {
1112                 NORTH_WEST,
1113                 NORTH,
1114                 NORTH_EAST,
1115                 WEST,
1116                 EAST,
1117                 SOUTH_WEST,
1118                 SOUTH,
1119                 SOUTH_EAST
1120         }
1121         [CCode (cprefix = "GDK_HINT_", cheader_filename = "gdk/gdk.h")]
1122         [Flags]
1123         public enum WindowHints {
1124                 POS,
1125                 MIN_SIZE,
1126                 MAX_SIZE,
1127                 BASE_SIZE,
1128                 ASPECT,
1129                 RESIZE_INC,
1130                 WIN_GRAVITY,
1131                 USER_POS,
1132                 USER_SIZE
1133         }
1134         [CCode (cprefix = "GDK_WINDOW_STATE_", cheader_filename = "gdk/gdk.h")]
1135         [Flags]
1136         public enum WindowState {
1137                 WITHDRAWN,
1138                 ICONIFIED,
1139                 MAXIMIZED,
1140                 STICKY,
1141                 FULLSCREEN,
1142                 ABOVE,
1143                 BELOW
1144         }
1145         [CCode (cprefix = "GDK_WINDOW_", cheader_filename = "gdk/gdk.h")]
1146         public enum WindowType {
1147                 ROOT,
1148                 TOPLEVEL,
1149                 CHILD,
1150                 TEMP,
1151                 FOREIGN,
1152                 OFFSCREEN
1153         }
1154         [CCode (cprefix = "GDK_WINDOW_TYPE_HINT_", cheader_filename = "gdk/gdk.h")]
1155         public enum WindowTypeHint {
1156                 NORMAL,
1157                 DIALOG,
1158                 MENU,
1159                 TOOLBAR,
1160                 SPLASHSCREEN,
1161                 UTILITY,
1162                 DOCK,
1163                 DESKTOP,
1164                 DROPDOWN_MENU,
1165                 POPUP_MENU,
1166                 TOOLTIP,
1167                 NOTIFICATION,
1168                 COMBO,
1169                 DND
1170         }
1171         [CCode (cprefix = "GDK_INPUT_", cheader_filename = "gdk/gdk.h")]
1172         public enum WindowWindowClass {
1173                 OUTPUT,
1174                 ONLY
1175         }
1176         [CCode (cheader_filename = "gdk/gdk.h")]
1177         public delegate void EventFunc (Gdk.Event event);
1178         [CCode (cheader_filename = "gdk/gdk.h")]
1179         public delegate Gdk.FilterReturn FilterFunc (Gdk.XEvent xevent, Gdk.Event event);
1180         [CCode (cheader_filename = "gdk/gdk.h")]
1181         public delegate bool WindowChildFunc (Gdk.Window window);
1182         [CCode (cheader_filename = "gdk/gdk.h")]
1183         public const int CURRENT_TIME;
1184         [CCode (cheader_filename = "gdk/gdk.h")]
1185         public const int MAX_TIMECOORD_AXES;
1186         [CCode (cheader_filename = "gdk/gdk.h")]
1187         public const int PARENT_RELATIVE;
1188         [CCode (cheader_filename = "gdk/gdk.h")]
1189         public const int PRIORITY_REDRAW;
1190         [CCode (cheader_filename = "gdk/gdk.h")]
1191         public const Gdk.Atom SELECTION_CLIPBOARD;
1192         [CCode (cheader_filename = "gdk/gdk.h")]
1193         public const Gdk.Atom SELECTION_PRIMARY;
1194         [CCode (cheader_filename = "gdk/gdk.h")]
1195         public const Gdk.Atom SELECTION_SECONDARY;
1196         [CCode (cheader_filename = "gdk/gdk.h")]
1197         public static void add_option_entries_libgtk_only (GLib.OptionGroup group);
1198         [CCode (cheader_filename = "gdk/gdk.h")]
1199         public static void beep ();
1200         [CCode (cheader_filename = "gdk/gdk.h")]
1201         public static Cairo.Context cairo_create (Gdk.Window window);
1202         [CCode (cheader_filename = "gdk/gdk.h")]
1203         public static bool cairo_get_clip_rectangle (Cairo.Context cr, Gdk.Rectangle rect);
1204         [CCode (cheader_filename = "gdk/gdk.h")]
1205         public static void cairo_rectangle (Cairo.Context cr, Gdk.Rectangle rectangle);
1206         [CCode (cheader_filename = "gdk/gdk.h")]
1207         public static void cairo_region (Cairo.Context cr, Cairo.Region region);
1208         [CCode (cheader_filename = "gdk/gdk.h")]
1209         public static unowned Cairo.Region cairo_region_create_from_surface (Cairo.Surface surface);
1210         [CCode (cheader_filename = "gdk/gdk.h")]
1211         public static void cairo_set_source_color (Cairo.Context cr, Gdk.Color color);
1212         [CCode (cheader_filename = "gdk/gdk.h")]
1213         public static void cairo_set_source_pixbuf (Cairo.Context cr, Gdk.Pixbuf pixbuf, double pixbuf_x, double pixbuf_y);
1214         [CCode (cheader_filename = "gdk/gdk.h")]
1215         public static void cairo_set_source_rgba (Cairo.Context cr, Gdk.RGBA rgba);
1216         [CCode (cheader_filename = "gdk/gdk.h")]
1217         public static void cairo_set_source_window (Cairo.Context cr, Gdk.Window window, double x, double y);
1218         [CCode (cheader_filename = "gdk/gdk.h")]
1219         public static void disable_multidevice ();
1220         [CCode (cheader_filename = "gdk/gdk.h")]
1221         public static void drag_abort (Gdk.DragContext context, uint32 time_);
1222         [CCode (cheader_filename = "gdk/gdk.h")]
1223         public static unowned Gdk.DragContext drag_begin (Gdk.Window window, GLib.List targets);
1224         [CCode (cheader_filename = "gdk/gdk.h")]
1225         public static unowned Gdk.DragContext drag_begin_for_device (Gdk.Window window, Gdk.Device device, GLib.List targets);
1226         [CCode (cheader_filename = "gdk/gdk.h")]
1227         public static void drag_drop (Gdk.DragContext context, uint32 time_);
1228         [CCode (cheader_filename = "gdk/gdk.h")]
1229         public static bool drag_drop_succeeded (Gdk.DragContext context);
1230         [CCode (cheader_filename = "gdk/gdk.h")]
1231         public static void drag_find_window_for_screen (Gdk.DragContext context, Gdk.Window drag_window, Gdk.Screen screen, int x_root, int y_root, out unowned Gdk.Window dest_window, Gdk.DragProtocol protocol);
1232         [CCode (cheader_filename = "gdk/gdk.h")]
1233         public static Gdk.Atom drag_get_selection (Gdk.DragContext context);
1234         [CCode (cheader_filename = "gdk/gdk.h")]
1235         public static bool drag_motion (Gdk.DragContext context, Gdk.Window dest_window, Gdk.DragProtocol protocol, int x_root, int y_root, Gdk.DragAction suggested_action, Gdk.DragAction possible_actions, uint32 time_);
1236         [CCode (cheader_filename = "gdk/gdk.h")]
1237         public static void drag_status (Gdk.DragContext context, Gdk.DragAction action, uint32 time_);
1238         [CCode (cheader_filename = "gdk/gdk.h")]
1239         public static void drop_finish (Gdk.DragContext context, bool success, uint32 time_);
1240         [CCode (cheader_filename = "gdk/gdk.h")]
1241         public static void drop_reply (Gdk.DragContext context, bool accepted, uint32 time_);
1242         [CCode (cheader_filename = "gdk/gdk.h")]
1243         public static int error_trap_pop ();
1244         [CCode (cheader_filename = "gdk/gdk.h")]
1245         public static void error_trap_pop_ignored ();
1246         [CCode (cheader_filename = "gdk/gdk.h")]
1247         public static void error_trap_push ();
1248         [CCode (cheader_filename = "gdk/gdk.h")]
1249         public static bool events_get_angle (Gdk.Event event1, Gdk.Event event2, double angle);
1250         [CCode (cheader_filename = "gdk/gdk.h")]
1251         public static bool events_get_center (Gdk.Event event1, Gdk.Event event2, double x, double y);
1252         [CCode (cheader_filename = "gdk/gdk.h")]
1253         public static bool events_get_distance (Gdk.Event event1, Gdk.Event event2, double distance);
1254         [CCode (cheader_filename = "gdk/gdk.h")]
1255         public static bool events_pending ();
1256         [CCode (cheader_filename = "gdk/gdk.h")]
1257         public static void flush ();
1258         [CCode (cheader_filename = "gdk/gdk.h")]
1259         public static unowned Gdk.Window get_default_root_window ();
1260         [CCode (cheader_filename = "gdk/gdk.h")]
1261         public static unowned string get_display ();
1262         [CCode (cheader_filename = "gdk/gdk.h")]
1263         public static unowned string get_display_arg_name ();
1264         [CCode (cheader_filename = "gdk/gdk.h")]
1265         public static unowned string get_program_class ();
1266         [CCode (cheader_filename = "gdk/gdk.h")]
1267         public static bool get_show_events ();
1268         [CCode (cheader_filename = "gdk/gdk.h")]
1269         public static void init ([CCode (array_length_pos = 0.9)] ref unowned string[] argv);
1270         [CCode (cheader_filename = "gdk/gdk.h")]
1271         public static bool init_check ([CCode (array_length_pos = 0.9)] ref unowned string[] argv);
1272         [CCode (cheader_filename = "gdk/gdk.h")]
1273         public static void keyval_convert_case (uint symbol, uint lower, uint upper);
1274         [CCode (cheader_filename = "gdk/gdk.h")]
1275         public static uint keyval_from_name (string keyval_name);
1276         [CCode (cheader_filename = "gdk/gdk.h")]
1277         public static bool keyval_is_lower (uint keyval);
1278         [CCode (cheader_filename = "gdk/gdk.h")]
1279         public static bool keyval_is_upper (uint keyval);
1280         [CCode (cheader_filename = "gdk/gdk.h")]
1281         public static unowned string keyval_name (uint keyval);
1282         [CCode (cheader_filename = "gdk/gdk.h")]
1283         public static uint keyval_to_lower (uint keyval);
1284         [CCode (cheader_filename = "gdk/gdk.h")]
1285         public static uint32 keyval_to_unicode (uint keyval);
1286         [CCode (cheader_filename = "gdk/gdk.h")]
1287         public static uint keyval_to_upper (uint keyval);
1288         [CCode (cheader_filename = "gdk/gdk.h")]
1289         public static GLib.List<weak Gdk.Visual> list_visuals ();
1290         [CCode (cheader_filename = "gdk/gdk.h")]
1291         public static void notify_startup_complete ();
1292         [CCode (cheader_filename = "gdk/gdk.h")]
1293         public static void notify_startup_complete_with_id (string startup_id);
1294         [CCode (cheader_filename = "gdk/gdk.h")]
1295         public static unowned Gdk.Window? offscreen_window_get_embedder (Gdk.Window window);
1296         [CCode (cheader_filename = "gdk/gdk.h")]
1297         public static unowned Cairo.Surface offscreen_window_get_surface (Gdk.Window window);
1298         [CCode (cheader_filename = "gdk/gdk.h")]
1299         public static void offscreen_window_set_embedder (Gdk.Window window, Gdk.Window embedder);
1300         [CCode (cheader_filename = "gdk/gdk.h")]
1301         public static unowned Pango.Context pango_context_get ();
1302         [CCode (cheader_filename = "gdk/gdk.h")]
1303         public static unowned Pango.Context pango_context_get_for_screen (Gdk.Screen screen);
1304         [CCode (cheader_filename = "gdk/gdk.h")]
1305         public static unowned Cairo.Region pango_layout_get_clip_region (Pango.Layout layout, int x_origin, int y_origin, int index_ranges, int n_ranges);
1306         [CCode (cheader_filename = "gdk/gdk.h")]
1307         public static unowned Cairo.Region pango_layout_line_get_clip_region (Pango.LayoutLine line, int x_origin, int y_origin, int index_ranges, int n_ranges);
1308         [CCode (cheader_filename = "gdk/gdk.h")]
1309         public static void parse_args (int argc, string argv);
1310         [CCode (cheader_filename = "gdk/gdk.h")]
1311         public static unowned Gdk.Pixbuf pixbuf_get_from_surface (Cairo.Surface surface, int src_x, int src_y, int width, int height);
1312         [CCode (cheader_filename = "gdk/gdk.h")]
1313         public static unowned Gdk.Pixbuf pixbuf_get_from_window (Gdk.Window window, int src_x, int src_y, int width, int height);
1314         [CCode (cheader_filename = "gdk/gdk.h")]
1315         public static void pre_parse_libgtk_only ();
1316         [CCode (cheader_filename = "gdk/gdk.h")]
1317         public static void property_change (Gdk.Window window, Gdk.Atom property, Gdk.Atom type, int format, Gdk.PropMode mode, [CCode (array_length = false)] uchar[] data, int nelements);
1318         [CCode (cheader_filename = "gdk/gdk.h")]
1319         public static void property_delete (Gdk.Window window, Gdk.Atom property);
1320         [CCode (cheader_filename = "gdk/gdk.h")]
1321         public static bool property_get (Gdk.Window window, Gdk.Atom property, Gdk.Atom type, ulong offset, ulong length, int pdelete, out Gdk.Atom actual_property_type, out int actual_format, [CCode (array_length_pos = 8.9)] out uchar[] data);
1322         [CCode (cheader_filename = "gdk/gdk.h")]
1323         public static void query_depths (int depths, int count);
1324         [CCode (cheader_filename = "gdk/gdk.h")]
1325         public static void query_visual_types (out Gdk.VisualType visual_types, int count);
1326         [Deprecated (since = "vala-0.12", replacement = "Selection.convert")]
1327         [CCode (cheader_filename = "gdk/gdk.h")]
1328         public static void selection_convert (Gdk.Window requestor, Gdk.Atom selection, Gdk.Atom target, uint32 time_);
1329         [Deprecated (since = "vala-0.12", replacement = "Selection.owner_get")]
1330         [CCode (cheader_filename = "gdk/gdk.h")]
1331         public static unowned Gdk.Window selection_owner_get (Gdk.Atom selection);
1332         [Deprecated (since = "vala-0.12", replacement = "Selection.owner_get_for_display")]
1333         [CCode (cheader_filename = "gdk/gdk.h")]
1334         public static unowned Gdk.Window selection_owner_get_for_display (Gdk.Display display, Gdk.Atom selection);
1335         [Deprecated (since = "vala-0.12", replacement = "Selection.owner_set")]
1336         [CCode (cheader_filename = "gdk/gdk.h")]
1337         public static bool selection_owner_set (Gdk.Window owner, Gdk.Atom selection, uint32 time_, bool send_event);
1338         [Deprecated (since = "vala-0.12", replacement = "Selection.owner_set_for_display")]
1339         [CCode (cheader_filename = "gdk/gdk.h")]
1340         public static bool selection_owner_set_for_display (Gdk.Display display, Gdk.Window owner, Gdk.Atom selection, uint32 time_, bool send_event);
1341         [Deprecated (since = "vala-0.12", replacement = "Selection.property_get")]
1342         [CCode (cheader_filename = "gdk/gdk.h")]
1343         public static int selection_property_get (Gdk.Window requestor, uchar[] data, out Gdk.Atom prop_type, int prop_format);
1344         [Deprecated (since = "vala-0.12", replacement = "Selection.send_notify")]
1345         [CCode (cheader_filename = "gdk/gdk.h")]
1346         public static void selection_send_notify (Gdk.Window requestor, Gdk.Atom selection, Gdk.Atom target, Gdk.Atom property, uint32 time_);
1347         [Deprecated (since = "vala-0.12", replacement = "Selection.send_notify_for_display")]
1348         [CCode (cheader_filename = "gdk/gdk.h")]
1349         public static void selection_send_notify_for_display (Gdk.Display display, Gdk.Window requestor, Gdk.Atom selection, Gdk.Atom target, Gdk.Atom property, uint32 time_);
1350         [CCode (cheader_filename = "gdk/gdk.h")]
1351         public static void set_double_click_time (uint msec);
1352         [CCode (cheader_filename = "gdk/gdk.h")]
1353         public static void set_program_class (string program_class);
1354         [CCode (cheader_filename = "gdk/gdk.h")]
1355         public static void set_show_events (bool show_events);
1356         [CCode (cheader_filename = "gdk/gdk.h")]
1357         public static bool setting_get (string name, GLib.Value value);
1358         [CCode (cheader_filename = "gdk/gdk.h")]
1359         public static void test_render_sync (Gdk.Window window);
1360         [CCode (cheader_filename = "gdk/gdk.h")]
1361         public static bool test_simulate_button (Gdk.Window window, int x, int y, uint button, Gdk.ModifierType modifiers, Gdk.EventType button_pressrelease);
1362         [CCode (cheader_filename = "gdk/gdk.h")]
1363         public static bool test_simulate_key (Gdk.Window window, int x, int y, uint keyval, Gdk.ModifierType modifiers, Gdk.EventType key_pressrelease);
1364         [CCode (cheader_filename = "gdk/gdk.h")]
1365         public static int text_property_to_utf8_list_for_display (Gdk.Display display, Gdk.Atom encoding, int format, uchar[] text, int length, string list);
1366         [CCode (cheader_filename = "gdk/gdk.h")]
1367         public static uint threads_add_idle (GLib.SourceFunc function);
1368         [CCode (cheader_filename = "gdk/gdk.h")]
1369         public static uint threads_add_idle_full (int priority, GLib.SourceFunc function, void* data, GLib.DestroyNotify notify);
1370         [CCode (cheader_filename = "gdk/gdk.h")]
1371         public static uint threads_add_timeout (uint interval, GLib.SourceFunc function, void* data);
1372         [CCode (cheader_filename = "gdk/gdk.h")]
1373         public static uint threads_add_timeout_full (int priority, uint interval, GLib.SourceFunc function, void* data, GLib.DestroyNotify notify);
1374         [CCode (cheader_filename = "gdk/gdk.h")]
1375         public static uint threads_add_timeout_seconds (uint interval, GLib.SourceFunc function, void* data);
1376         [CCode (cheader_filename = "gdk/gdk.h")]
1377         public static uint threads_add_timeout_seconds_full (int priority, uint interval, GLib.SourceFunc function, void* data, GLib.DestroyNotify notify);
1378         [CCode (cheader_filename = "gdk/gdk.h")]
1379         public static void threads_enter ();
1380         [CCode (cheader_filename = "gdk/gdk.h")]
1381         public static void threads_init ();
1382         [CCode (cheader_filename = "gdk/gdk.h")]
1383         public static void threads_leave ();
1384         [CCode (cheader_filename = "gdk/gdk.h")]
1385         public static void threads_set_lock_functions (GLib.Callback enter_fn, GLib.Callback leave_fn);
1386         [CCode (cheader_filename = "gdk/gdk.h")]
1387         public static uint unicode_to_keyval (uint32 wc);
1388         [CCode (cheader_filename = "gdk/gdk.h")]
1389         public static unowned string utf8_to_string_target (string str);