vapi/gtk+-2.0.vapi
authorAlan Knowles <alan@roojs.com>
Tue, 16 Aug 2016 04:29:25 +0000 (12:29 +0800)
committerAlan Knowles <alan@roojs.com>
Tue, 16 Aug 2016 04:29:25 +0000 (12:29 +0800)
vapi/gtk+-2.0.vapi [new file with mode: 0644]

diff --git a/vapi/gtk+-2.0.vapi b/vapi/gtk+-2.0.vapi
new file mode 100644 (file)
index 0000000..140a35d
--- /dev/null
@@ -0,0 +1,8398 @@
+/* gtk+-2.0.vapi generated by vapigen, do not modify. */
+
+[CCode (cprefix = "Gtk", gir_namespace = "Gtk", gir_version = "2.0", lower_case_cprefix = "gtk_")]
+[Version (replacement = "gtk+-3.0")]
+namespace Gtk {
+       namespace Idle {
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static uint add (Gtk.Function function);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static uint add_full (int priority, Gtk.Function function, Gtk.CallbackMarshal marshal, void* data, GLib.DestroyNotify destroy);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static uint add_priority (int priority, Gtk.Function function);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void remove (uint idle_handler_id);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void remove_by_data (void* data);
+       }
+       namespace Input {
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static uint add_full (int source, Gdk.InputCondition condition, Gdk.InputFunction function, Gtk.CallbackMarshal marshal, void* data, GLib.DestroyNotify destroy);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void remove (uint input_handler_id);
+       }
+       namespace Stock {
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ABOUT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ADD;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string APPLY;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string BOLD;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CANCEL;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CAPS_LOCK_WARNING;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CDROM;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CLEAR;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CLOSE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string COLOR_PICKER;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CONNECT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CONVERT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string COPY;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string CUT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DELETE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DIALOG_AUTHENTICATION;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DIALOG_ERROR;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DIALOG_INFO;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DIALOG_QUESTION;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DIALOG_WARNING;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DIRECTORY;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DISCARD;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DISCONNECT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DND;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string DND_MULTIPLE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string EDIT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string EXECUTE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string FILE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string FIND;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string FIND_AND_REPLACE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string FLOPPY;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string FULLSCREEN;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GOTO_BOTTOM;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GOTO_FIRST;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GOTO_LAST;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GOTO_TOP;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GO_BACK;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GO_DOWN;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GO_FORWARD;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string GO_UP;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string HARDDISK;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string HELP;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string HOME;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string INDENT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string INDEX;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string INFO;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ITALIC;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string JUMP_TO;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string JUSTIFY_CENTER;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string JUSTIFY_FILL;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string JUSTIFY_LEFT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string JUSTIFY_RIGHT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string LEAVE_FULLSCREEN;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_FORWARD;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_NEXT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_PAUSE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_PLAY;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_PREVIOUS;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_RECORD;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_REWIND;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MEDIA_STOP;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string MISSING_IMAGE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string NETWORK;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string NEW;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string NO;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string OK;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string OPEN;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ORIENTATION_LANDSCAPE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ORIENTATION_PORTRAIT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ORIENTATION_REVERSE_LANDSCAPE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ORIENTATION_REVERSE_PORTRAIT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PAGE_SETUP;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PASTE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PREFERENCES;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PRINT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PRINT_ERROR;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PRINT_PAUSED;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PRINT_PREVIEW;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PRINT_REPORT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PRINT_WARNING;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string PROPERTIES;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string QUIT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string REDO;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string REFRESH;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string REMOVE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string REVERT_TO_SAVED;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SAVE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SAVE_AS;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SELECT_ALL;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SELECT_COLOR;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SELECT_FONT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SORT_ASCENDING;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SORT_DESCENDING;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string SPELL_CHECK;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string STOP;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string STRIKETHROUGH;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string UNDELETE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string UNDERLINE;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string UNDO;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string UNINDENT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string YES;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ZOOM_100;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ZOOM_FIT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ZOOM_IN;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public const string ZOOM_OUT;
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void add (Gtk.StockItem[] items);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void add_static (Gtk.StockItem[] items);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static GLib.SList<string> list_ids ();
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static bool lookup (string stock_id, out Gtk.StockItem item);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void set_translate_func (string domain, owned Gtk.TranslateFunc func);
+       }
+       namespace Timeout {
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static uint add (uint32 interval, Gtk.Function function);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static uint add_full (uint32 interval, Gtk.Function function, Gtk.CallbackMarshal marshal, void* data, GLib.DestroyNotify destroy);
+               [CCode (cheader_filename = "gtk/gtk.h")]
+               public static void remove (uint timeout_handler_id);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class AboutDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public AboutDialog ();
+               [CCode (array_length = false, array_null_terminated = true)]
+               public unowned string[] get_artists ();
+               [CCode (array_length = false, array_null_terminated = true)]
+               public unowned string[] get_authors ();
+               public unowned string get_comments ();
+               public unowned string get_copyright ();
+               [CCode (array_length = false, array_null_terminated = true)]
+               public unowned string[] get_documenters ();
+               public unowned string get_license ();
+               public unowned Gdk.Pixbuf get_logo ();
+               public unowned string get_logo_icon_name ();
+               public unowned string get_program_name ();
+               public unowned string get_translator_credits ();
+               public unowned string get_version ();
+               public unowned string get_website ();
+               public unowned string get_website_label ();
+               public bool get_wrap_license ();
+               public void set_artists ([CCode (array_length = false, array_null_terminated = true)] string[] artists);
+               public void set_authors ([CCode (array_length = false, array_null_terminated = true)] string[] authors);
+               public void set_comments (string comments);
+               public void set_copyright (string copyright);
+               public void set_documenters ([CCode (array_length = false, array_null_terminated = true)] string[] documenters);
+               public static void set_email_hook (owned Gtk.AboutDialogActivateLinkFunc func);
+               public void set_license (string license);
+               public void set_logo (Gdk.Pixbuf logo);
+               public void set_logo_icon_name (string icon_name);
+               public void set_program_name (string name);
+               public void set_translator_credits (string translator_credits);
+               public static void set_url_hook (owned Gtk.AboutDialogActivateLinkFunc func);
+               public void set_version (string version);
+               public void set_website (string website);
+               public void set_website_label (string website_label);
+               public void set_wrap_license (bool wrap_license);
+               [CCode (array_length = false, array_null_terminated = true)]
+               public string[] artists { get; set; }
+               [CCode (array_length = false, array_null_terminated = true)]
+               public string[] authors { get; set; }
+               public string comments { get; set; }
+               public string copyright { get; set; }
+               [CCode (array_length = false, array_null_terminated = true)]
+               public string[] documenters { get; set; }
+               public string license { get; set; }
+               public Gdk.Pixbuf logo { get; set; }
+               public string logo_icon_name { get; set; }
+               public string program_name { get; set; }
+               public string translator_credits { get; set; }
+               public string version { get; set; }
+               public string website { get; set; }
+               public string website_label { get; set; }
+               public bool wrap_license { get; set; }
+               public virtual signal bool activate_link (string uri);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class AccelGroup : GLib.Object {
+               public weak GLib.SList acceleratables;
+               public uint lock_count;
+               public uint n_accels;
+               [CCode (has_construct_function = false)]
+               public AccelGroup ();
+               public bool activate (GLib.Quark accel_quark, GLib.Object acceleratable, uint accel_key, Gdk.ModifierType accel_mods);
+               public void connect (uint accel_key, Gdk.ModifierType accel_mods, Gtk.AccelFlags accel_flags, [CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate closure);
+               public void connect_by_path (string accel_path, [CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate closure);
+               public bool disconnect (GLib.Closure closure);
+               public bool disconnect_key (uint accel_key, Gdk.ModifierType accel_mods);
+               public Gtk.AccelKey* find (Gtk.AccelGroupFindFunc find_func);
+               public static unowned Gtk.AccelGroup from_accel_closure (GLib.Closure closure);
+               public bool get_is_locked ();
+               public Gdk.ModifierType get_modifier_mask ();
+               public void @lock ();
+               public unowned Gtk.AccelGroupEntry[] query (uint accel_key, Gdk.ModifierType accel_mods);
+               public void unlock ();
+               public bool is_locked { get; }
+               public Gdk.ModifierType modifier_mask { get; }
+               public virtual signal bool accel_activate (GLib.Object p0, uint p1, Gdk.ModifierType p2);
+               public virtual signal void accel_changed (uint keyval, Gdk.ModifierType modifier, GLib.Closure accel_closure);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class AccelLabel : Gtk.Label, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.AccelGroup accel_group;
+               public uint accel_padding;
+               public weak string accel_string;
+               public uint16 accel_string_width;
+               public uint gtk_reserved;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public AccelLabel (string str);
+               public unowned Gtk.Widget get_accel_widget ();
+               public uint get_accel_width ();
+               public bool refetch ();
+               public void set_accel_closure ([CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate accel_closure);
+               public void set_accel_widget (Gtk.Widget accel_widget);
+               [NoAccessorMethod]
+               public GLib.Closure accel_closure { owned get; set; }
+               public Gtk.Widget accel_widget { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class AccelMap : GLib.Object {
+               [CCode (has_construct_function = false)]
+               protected AccelMap ();
+               public static void add_entry (string accel_path, uint accel_key, Gdk.ModifierType accel_mods);
+               public static void add_filter (string filter_pattern);
+               public static bool change_entry (string accel_path, uint accel_key, Gdk.ModifierType accel_mods, bool replace);
+               public static void @foreach (void* data, Gtk.AccelMapForeach foreach_func);
+               public static void foreach_unfiltered (void* data, Gtk.AccelMapForeach foreach_func);
+               public static unowned Gtk.AccelMap @get ();
+               public static void load (string file_name);
+               public static void load_fd (int fd);
+               public static void load_scanner (GLib.Scanner scanner);
+               public static void lock_path (string accel_path);
+               public static bool lookup_entry (string accel_path, out Gtk.AccelKey key);
+               public static void save (string file_name);
+               public static void save_fd (int fd);
+               public static void unlock_path (string accel_path);
+               public virtual signal void changed (string p0, uint p1, Gdk.ModifierType p2);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class AccelMapClass {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Accessible : Atk.Object {
+               public weak Gtk.Widget widget;
+               [CCode (has_construct_function = false)]
+               protected Accessible ();
+               public virtual void connect_widget_destroyed ();
+               public unowned Gtk.Widget get_widget ();
+               public void set_widget (Gtk.Widget widget);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Action : GLib.Object, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               public Action (string name, string? label, string? tooltip, string? stock_id);
+               public void block_activate ();
+               public void connect_accelerator ();
+               [NoWrapper]
+               public virtual void connect_proxy (Gtk.Widget proxy);
+               public unowned Gtk.Widget create_icon (Gtk.IconSize icon_size);
+               public virtual unowned Gtk.Widget create_menu ();
+               public virtual unowned Gtk.Widget create_menu_item ();
+               public virtual unowned Gtk.Widget create_tool_item ();
+               public void disconnect_accelerator ();
+               [NoWrapper]
+               public virtual void disconnect_proxy (Gtk.Widget proxy);
+               public unowned GLib.Closure get_accel_closure ();
+               public unowned string get_accel_path ();
+               public bool get_always_show_image ();
+               public unowned GLib.Icon get_gicon ();
+               public unowned string get_icon_name ();
+               public bool get_is_important ();
+               public unowned string get_label ();
+               public unowned GLib.SList<Gtk.Widget> get_proxies ();
+               public bool get_sensitive ();
+               public unowned string get_short_label ();
+               public unowned string get_stock_id ();
+               public unowned string get_tooltip ();
+               public bool get_visible ();
+               public bool get_visible_horizontal ();
+               public bool get_visible_vertical ();
+               public bool is_sensitive ();
+               public bool is_visible ();
+               public void set_accel_group (Gtk.AccelGroup accel_group);
+               public void set_accel_path (string accel_path);
+               public void set_always_show_image (bool always_show);
+               public void set_gicon (GLib.Icon icon);
+               public void set_icon_name (string icon_name);
+               public void set_is_important (bool is_important);
+               public void set_label (string label);
+               public void set_sensitive (bool sensitive);
+               public void set_short_label (string short_label);
+               public void set_stock_id (string stock_id);
+               public void set_tooltip (string tooltip);
+               public void set_visible (bool visible);
+               public void set_visible_horizontal (bool visible_horizontal);
+               public void set_visible_vertical (bool visible_vertical);
+               public void unblock_activate ();
+               [NoAccessorMethod]
+               public Gtk.ActionGroup action_group { owned get; set; }
+               public bool always_show_image { get; set construct; }
+               public GLib.Icon gicon { get; set; }
+               [NoAccessorMethod]
+               public bool hide_if_empty { get; set; }
+               public string icon_name { get; set; }
+               public bool is_important { get; set; }
+               public string label { get; set; }
+               public string name { get; construct; }
+               public bool sensitive { get; set; }
+               public string short_label { get; set; }
+               public string stock_id { get; set; }
+               public string tooltip { get; set; }
+               public bool visible { get; set; }
+               public bool visible_horizontal { get; set; }
+               [NoAccessorMethod]
+               public bool visible_overflown { get; set; }
+               public bool visible_vertical { get; set; }
+               [HasEmitter]
+               public virtual signal void activate ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ActionGroup : GLib.Object, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               public ActionGroup (string name);
+               public void add_action (Gtk.Action action);
+               public void add_action_with_accel (Gtk.Action action, string? accelerator);
+               public void add_actions (Gtk.ActionEntry[] entries, void* user_data);
+               public void add_actions_full (Gtk.ActionEntry[] entries, void* user_data, GLib.DestroyNotify? destroy);
+               public void add_radio_actions (Gtk.RadioActionEntry[] entries, int value, [CCode (type = "GCallback")] Gtk.RadioActionCallback on_change);
+               public void add_radio_actions_full (Gtk.RadioActionEntry[] entries, int value, [CCode (type = "GCallback")] Gtk.RadioActionCallback on_change, GLib.DestroyNotify? destroy);
+               public void add_toggle_actions (Gtk.ToggleActionEntry[] entries, void* user_data);
+               public void add_toggle_actions_full (Gtk.ToggleActionEntry[] entries, void* user_data, GLib.DestroyNotify? destroy);
+               public virtual unowned Gtk.Action get_action (string action_name);
+               public bool get_sensitive ();
+               public bool get_visible ();
+               public GLib.List<weak Gtk.Action> list_actions ();
+               public void remove_action (Gtk.Action action);
+               public void set_sensitive (bool sensitive);
+               public void set_translate_func (owned Gtk.TranslateFunc func);
+               public void set_translation_domain (string domain);
+               public void set_visible (bool visible);
+               public unowned string translate_string (string str);
+               public string name { get; construct; }
+               public bool sensitive { get; set; }
+               public bool visible { get; set; }
+               public virtual signal void connect_proxy (Gtk.Action p0, Gtk.Widget p1);
+               public virtual signal void disconnect_proxy (Gtk.Action p0, Gtk.Widget p1);
+               public virtual signal void post_activate (Gtk.Action p0);
+               public virtual signal void pre_activate (Gtk.Action p0);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Adjustment : Gtk.Object {
+               [CCode (has_construct_function = false, type = "GtkObject*")]
+               public Adjustment (double value, double lower, double upper, double step_increment, double page_increment, double page_size);
+               public void clamp_page (double lower, double upper);
+               public void configure (double value, double lower, double upper, double step_increment, double page_increment, double page_size);
+               public double get_lower ();
+               public double get_page_increment ();
+               public double get_page_size ();
+               public double get_step_increment ();
+               public double get_upper ();
+               public double get_value ();
+               public void set_lower (double lower);
+               public void set_page_increment (double page_increment);
+               public void set_page_size (double page_size);
+               public void set_step_increment (double step_increment);
+               public void set_upper (double upper);
+               public void set_value (double value);
+               public double lower { get; set; }
+               public double page_increment { get; set; }
+               public double page_size { get; set; }
+               public double step_increment { get; set; }
+               public double upper { get; set; }
+               public double value { get; set; }
+               [HasEmitter]
+               public virtual signal void changed ();
+               [HasEmitter]
+               public virtual signal void value_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Alignment : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Alignment (float xalign, float yalign, float xscale, float yscale);
+               public void get_padding (out uint padding_top, out uint padding_bottom, out uint padding_left, out uint padding_right);
+               public void @set (float xalign, float yalign, float xscale, float yscale);
+               public void set_padding (uint padding_top, uint padding_bottom, uint padding_left, uint padding_right);
+               [NoAccessorMethod]
+               public uint bottom_padding { get; set; }
+               [NoAccessorMethod]
+               public uint left_padding { get; set; }
+               [NoAccessorMethod]
+               public uint right_padding { get; set; }
+               [NoAccessorMethod]
+               public uint top_padding { get; set; }
+               [NoAccessorMethod]
+               public float xalign { get; set; }
+               [NoAccessorMethod]
+               public float xscale { get; set; }
+               [NoAccessorMethod]
+               public float yalign { get; set; }
+               [NoAccessorMethod]
+               public float yscale { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class Arg {
+               public weak string name;
+               public GLib.Type type;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Arrow : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Arrow (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type);
+               public void @set (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type);
+               [NoAccessorMethod]
+               public Gtk.ArrowType arrow_type { get; set; }
+               [NoAccessorMethod]
+               public Gtk.ShadowType shadow_type { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class AspectFrame : Gtk.Frame, Atk.Implementor, Gtk.Buildable {
+               public Gtk.Allocation center_allocation;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public AspectFrame (string label, float xalign, float yalign, float ratio, bool obey_child);
+               public void @set (float xalign, float yalign, float ratio, bool obey_child);
+               [NoAccessorMethod]
+               public bool obey_child { get; set; }
+               [NoAccessorMethod]
+               public float ratio { get; set; }
+               [NoAccessorMethod]
+               public float xalign { get; set; }
+               [NoAccessorMethod]
+               public float yalign { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Assistant : Gtk.Window, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.Widget back;
+               public weak Gtk.Widget forward;
+               public weak Gtk.Widget last;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Assistant ();
+               public void add_action_widget (Gtk.Widget child);
+               public int append_page (Gtk.Widget page);
+               public void commit ();
+               public int get_current_page ();
+               public int get_n_pages ();
+               public unowned Gtk.Widget get_nth_page (int page_num);
+               public bool get_page_complete (Gtk.Widget page);
+               public unowned Gdk.Pixbuf get_page_header_image (Gtk.Widget page);
+               public unowned Gdk.Pixbuf get_page_side_image (Gtk.Widget page);
+               public unowned string get_page_title (Gtk.Widget page);
+               public Gtk.AssistantPageType get_page_type (Gtk.Widget page);
+               public int insert_page (Gtk.Widget page, int position);
+               public int prepend_page (Gtk.Widget page);
+               public void remove_action_widget (Gtk.Widget child);
+               public void set_current_page (int page_num);
+               public void set_forward_page_func (owned Gtk.AssistantPageFunc page_func);
+               public void set_page_complete (Gtk.Widget page, bool complete);
+               public void set_page_header_image (Gtk.Widget page, Gdk.Pixbuf pixbuf);
+               public void set_page_side_image (Gtk.Widget page, Gdk.Pixbuf pixbuf);
+               public void set_page_title (Gtk.Widget page, string title);
+               public void set_page_type (Gtk.Widget page, Gtk.AssistantPageType type);
+               public void update_buttons_state ();
+               public virtual signal void apply ();
+               public virtual signal void cancel ();
+               public virtual signal void close ();
+               public virtual signal void prepare (Gtk.Widget page);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Bin : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.Widget child;
+               [CCode (has_construct_function = false)]
+               protected Bin ();
+               public unowned Gtk.Widget get_child ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class BindingArg {
+               public GLib.Type arg_type;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class BindingEntry {
+               public weak Gtk.BindingSet binding_set;
+               public uint destroyed;
+               public weak Gtk.BindingEntry hash_next;
+               public uint in_emission;
+               public uint keyval;
+               public uint marks_unbound;
+               public Gdk.ModifierType modifiers;
+               public weak Gtk.BindingEntry set_next;
+               public weak Gtk.BindingSignal signals;
+               public static void add_signal (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, uint n_args, ...);
+               public static void add_signall (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, GLib.SList<Gtk.BindingArg> binding_args);
+               public static void remove (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
+               public static void skip (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class BindingSet {
+               public weak Gtk.BindingEntry current;
+               public weak Gtk.BindingEntry entries;
+               public uint parsed;
+               public int priority;
+               public weak string set_name;
+               public bool activate (uint keyval, Gdk.ModifierType modifiers, Gtk.Object object);
+               public void add_path (Gtk.PathType path_type, string path_pattern, Gtk.PathPriorityType priority);
+               public static unowned Gtk.BindingSet by_class (GLib.ObjectClass object_class);
+               public static unowned Gtk.BindingSet find (string set_name);
+               public static unowned Gtk.BindingSet @new (string name);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class BindingSignal {
+               public weak Gtk.BindingArg args;
+               public uint n_args;
+               public weak Gtk.BindingSignal next;
+               public weak string signal_name;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_border_copy", type_id = "gtk_border_get_type ()")]
+       [Compact]
+       public class Border {
+               public int bottom;
+               public int left;
+               public int right;
+               public int top;
+               [CCode (has_construct_function = false)]
+               public Border ();
+               public Gtk.Border copy ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Box : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public weak GLib.List<Gtk.Widget> children;
+               [CCode (has_construct_function = false)]
+               protected Box ();
+               public bool get_homogeneous ();
+               public int get_spacing ();
+               public void pack_end (Gtk.Widget child, bool expand = true, bool fill = true, uint padding = 0);
+               public void pack_start (Gtk.Widget child, bool expand = true, bool fill = true, uint padding = 0);
+               public void query_child_packing (Gtk.Widget child, out bool expand, out bool fill, out uint padding, out Gtk.PackType pack_type);
+               public void reorder_child (Gtk.Widget child, int position);
+               public void set_child_packing (Gtk.Widget child, bool expand, bool fill, uint padding, Gtk.PackType pack_type);
+               public void set_homogeneous (bool homogeneous);
+               public void set_spacing (int spacing);
+               public bool homogeneous { get; set; }
+               public int spacing { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class BoxChild {
+               public uint expand;
+               public uint fill;
+               public uint is_secondary;
+               public uint pack;
+               public uint16 padding;
+               public weak Gtk.Widget widget;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Builder : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public Builder ();
+               public uint add_from_file (string filename) throws GLib.Error;
+               public uint add_from_string (string buffer, size_t length) throws GLib.Error;
+               public uint add_objects_from_file (string filename, [CCode (array_length = false, array_null_terminated = true)] string[] object_ids) throws GLib.Error;
+               public uint add_objects_from_string (string buffer, size_t length, [CCode (array_length = false, array_null_terminated = true)] string[] object_ids) throws GLib.Error;
+               public void connect_signals (void* user_data);
+               public void connect_signals_full (Gtk.BuilderConnectFunc func);
+               public static GLib.Quark error_quark ();
+               public unowned GLib.Object get_object (string name);
+               public GLib.SList<weak GLib.Object> get_objects ();
+               public unowned string get_translation_domain ();
+               public virtual GLib.Type get_type_from_name (string type_name);
+               public void set_translation_domain (string domain);
+               public bool value_from_string (GLib.ParamSpec pspec, string str, out GLib.Value value) throws GLib.Error;
+               public bool value_from_string_type (GLib.Type type, string str, out GLib.Value value) throws GLib.Error;
+               public string translation_domain { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Button : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               public uint activate_timeout;
+               public uint button_down;
+               public uint constructed;
+               public uint depress_on_activate;
+               public uint depressed;
+               public weak Gdk.Window event_window;
+               public uint in_button;
+               public weak string label_text;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Button ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Button.from_stock (string stock_id);
+               public void get_alignment (out float xalign, out float yalign);
+               public unowned Gdk.Window get_event_window ();
+               public bool get_focus_on_click ();
+               public unowned Gtk.Widget get_image ();
+               public Gtk.PositionType get_image_position ();
+               public unowned string get_label ();
+               public Gtk.ReliefStyle get_relief ();
+               public bool get_use_stock ();
+               public bool get_use_underline ();
+               public void set_alignment (float xalign, float yalign);
+               public void set_focus_on_click (bool focus_on_click);
+               public void set_image (Gtk.Widget image);
+               public void set_image_position (Gtk.PositionType position);
+               public void set_label (string? label);
+               public void set_relief (Gtk.ReliefStyle newstyle);
+               public void set_use_stock (bool use_stock);
+               public void set_use_underline (bool use_underline);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Button.with_label (string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Button.with_mnemonic (string label);
+               public bool focus_on_click { get; set; }
+               public Gtk.Widget image { get; set; }
+               public Gtk.PositionType image_position { get; set; }
+               public string label { get; set construct; }
+               public Gtk.ReliefStyle relief { get; set; }
+               public bool use_stock { get; set construct; }
+               public bool use_underline { get; set construct; }
+               [NoAccessorMethod]
+               public float xalign { get; set; }
+               [NoAccessorMethod]
+               public float yalign { get; set; }
+               public virtual signal void activate ();
+               [HasEmitter]
+               public virtual signal void clicked ();
+               [HasEmitter]
+               public virtual signal void enter ();
+               [HasEmitter]
+               public virtual signal void leave ();
+               [HasEmitter]
+               public virtual signal void pressed ();
+               [HasEmitter]
+               public virtual signal void released ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ButtonBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public int child_ipad_x;
+               public int child_ipad_y;
+               public int child_min_height;
+               public int child_min_width;
+               [CCode (has_construct_function = false)]
+               protected ButtonBox ();
+               public bool get_child_secondary (Gtk.Widget child);
+               public Gtk.ButtonBoxStyle get_layout ();
+               public void set_child_secondary (Gtk.Widget child, bool is_secondary);
+               public void set_layout (Gtk.ButtonBoxStyle layout_style);
+               [NoAccessorMethod]
+               public Gtk.ButtonBoxStyle layout_style { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Calendar : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               [CCode (array_length = false)]
+               public weak int[] day_month;
+               public Gtk.CalendarDisplayOptions display_flags;
+               public int focus_col;
+               public int focus_row;
+               public weak Gdk.GC gc;
+               [CCode (array_length = false)]
+               public weak char[] grow_space;
+               public weak Gtk.Style header_style;
+               public int highlight_col;
+               public int highlight_row;
+               public weak Gtk.Style label_style;
+               [CCode (array_length = false)]
+               public weak int[] marked_date;
+               [CCode (array_length = false)]
+               public weak Gdk.Color[] marked_date_color;
+               public int num_marked_dates;
+               public int selected_day;
+               public weak Gdk.GC xor_gc;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Calendar ();
+               public void clear_marks ();
+               public void get_date (out uint year, out uint month, out uint day);
+               public int get_detail_height_rows ();
+               public int get_detail_width_chars ();
+               public Gtk.CalendarDisplayOptions get_display_options ();
+               public bool mark_day (uint day);
+               public void select_day (uint day);
+               public bool select_month (uint month, uint year);
+               public void set_detail_func (owned Gtk.CalendarDetailFunc func);
+               public void set_detail_height_rows (int rows);
+               public void set_detail_width_chars (int chars);
+               public void set_display_options (Gtk.CalendarDisplayOptions flags);
+               public bool unmark_day (uint day);
+               [NoAccessorMethod]
+               public int day { get; set; }
+               public int detail_height_rows { get; set; }
+               public int detail_width_chars { get; set; }
+               [NoAccessorMethod]
+               public int month { get; set; }
+               [NoAccessorMethod]
+               public bool no_month_change { get; set; }
+               [NoAccessorMethod]
+               public bool show_day_names { get; set; }
+               [NoAccessorMethod]
+               public bool show_details { get; set; }
+               [NoAccessorMethod]
+               public bool show_heading { get; set; }
+               [NoAccessorMethod]
+               public bool show_week_numbers { get; set; }
+               [NoAccessorMethod]
+               public int year { get; set; }
+               public virtual signal void day_selected ();
+               public virtual signal void day_selected_double_click ();
+               public virtual signal void month_changed ();
+               public virtual signal void next_month ();
+               public virtual signal void next_year ();
+               public virtual signal void prev_month ();
+               public virtual signal void prev_year ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public abstract class CellRenderer : Gtk.Object {
+               [CCode (has_construct_function = false)]
+               protected CellRenderer ();
+               public virtual bool activate (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
+               public void get_alignment (out float xalign, out float yalign);
+               public void get_fixed_size (out int width, out int height);
+               public void get_padding (out int xpad, out int ypad);
+               public bool get_sensitive ();
+               public abstract void get_size (Gtk.Widget widget, Gdk.Rectangle? cell_area, out int x_offset, out int y_offset, out int width, out int height);
+               public bool get_visible ();
+               public abstract void render (Gdk.Window window, Gtk.Widget widget, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gdk.Rectangle expose_area, Gtk.CellRendererState flags);
+               public void set_alignment (float xalign, float yalign);
+               public void set_fixed_size (int width, int height);
+               public void set_padding (int xpad, int ypad);
+               public void set_sensitive (bool sensitive);
+               public void set_visible (bool visible);
+               public virtual unowned Gtk.CellEditable start_editing (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
+               public void stop_editing (bool canceled);
+               [NoAccessorMethod]
+               public string cell_background { set; }
+               [NoAccessorMethod]
+               public Gdk.Color cell_background_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool cell_background_set { get; set; }
+               [NoAccessorMethod]
+               public bool editing { get; }
+               [NoAccessorMethod]
+               public int height { get; set; }
+               [NoAccessorMethod]
+               public bool is_expanded { get; set; }
+               [NoAccessorMethod]
+               public bool is_expander { get; set; }
+               [NoAccessorMethod]
+               public Gtk.CellRendererMode mode { get; set; }
+               public bool sensitive { get; set; }
+               public bool visible { get; set; }
+               [NoAccessorMethod]
+               public int width { get; set; }
+               [NoAccessorMethod]
+               public float xalign { get; set; }
+               [NoAccessorMethod]
+               public uint xpad { get; set; }
+               [NoAccessorMethod]
+               public float yalign { get; set; }
+               [NoAccessorMethod]
+               public uint ypad { get; set; }
+               [HasEmitter]
+               public virtual signal void editing_canceled ();
+               public virtual signal void editing_started (Gtk.CellEditable editable, string path);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererAccel : Gtk.CellRendererText {
+               public weak Gtk.Widget edit_widget;
+               public weak Gtk.Widget grab_widget;
+               public weak Gtk.Widget sizing_label;
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererAccel ();
+               [NoAccessorMethod]
+               public uint accel_key { get; set; }
+               [NoAccessorMethod]
+               public Gtk.CellRendererAccelMode accel_mode { get; set; }
+               [NoAccessorMethod]
+               public Gdk.ModifierType accel_mods { get; set; }
+               [NoAccessorMethod]
+               public uint keycode { get; set; }
+               public virtual signal void accel_cleared (string path_string);
+               public virtual signal void accel_edited (string path_string, uint accel_key, Gdk.ModifierType accel_mods, uint hardware_keycode);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererCombo : Gtk.CellRendererText {
+               public uint focus_out_id;
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererCombo ();
+               [NoAccessorMethod]
+               public bool has_entry { get; set; }
+               [NoAccessorMethod]
+               public Gtk.TreeModel model { owned get; set; }
+               [NoAccessorMethod]
+               public int text_column { get; set; }
+               public virtual signal void changed (string p0, Gtk.TreeIter p1);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererPixbuf : Gtk.CellRenderer {
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererPixbuf ();
+               [NoAccessorMethod]
+               public bool follow_state { get; set; }
+               [NoAccessorMethod]
+               public GLib.Icon gicon { owned get; set; }
+               [NoAccessorMethod]
+               public string icon_name { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf pixbuf { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf pixbuf_expander_closed { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf pixbuf_expander_open { owned get; set; }
+               [NoAccessorMethod]
+               public string stock_detail { owned get; set; }
+               [NoAccessorMethod]
+               public string stock_id { owned get; set; }
+               [NoAccessorMethod]
+               public uint stock_size { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererProgress : Gtk.CellRenderer {
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererProgress ();
+               [NoAccessorMethod]
+               public Gtk.ProgressBarOrientation orientation { get; set; }
+               [NoAccessorMethod]
+               public int pulse { get; set; }
+               [NoAccessorMethod]
+               public string text { owned get; set; }
+               [NoAccessorMethod]
+               public float text_xalign { get; set; }
+               [NoAccessorMethod]
+               public float text_yalign { get; set; }
+               [NoAccessorMethod]
+               public int value { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererSpin : Gtk.CellRendererText {
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererSpin ();
+               [NoAccessorMethod]
+               public Gtk.Adjustment adjustment { owned get; set; }
+               [NoAccessorMethod]
+               public double climb_rate { get; set; }
+               [NoAccessorMethod]
+               public uint digits { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererSpinner : Gtk.CellRenderer {
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererSpinner ();
+               [NoAccessorMethod]
+               public bool active { get; set; }
+               [NoAccessorMethod]
+               public uint pulse { get; set; }
+               [NoAccessorMethod]
+               public Gtk.IconSize size { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererText : Gtk.CellRenderer {
+               public uint calc_fixed_height;
+               public weak Pango.AttrList extra_attrs;
+               public int fixed_height_rows;
+               public double font_scale;
+               public Pango.Underline underline_style;
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererText ();
+               public void set_fixed_height_from_font (int number_of_rows);
+               [NoAccessorMethod]
+               public bool align_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Alignment alignment { get; set; }
+               [NoAccessorMethod]
+               public Pango.AttrList attributes { owned get; set; }
+               [NoAccessorMethod]
+               public string background { set; }
+               [NoAccessorMethod]
+               public Gdk.Color background_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool background_set { get; set; }
+               [NoAccessorMethod]
+               public bool editable { get; set; }
+               [NoAccessorMethod]
+               public bool editable_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.EllipsizeMode ellipsize { get; set; }
+               [NoAccessorMethod]
+               public bool ellipsize_set { get; set; }
+               [NoAccessorMethod]
+               public string family { owned get; set; }
+               [NoAccessorMethod]
+               public bool family_set { get; set; }
+               [NoAccessorMethod]
+               public string font { owned get; set; }
+               [NoAccessorMethod]
+               public Pango.FontDescription font_desc { owned get; set; }
+               [NoAccessorMethod]
+               public string foreground { set; }
+               [NoAccessorMethod]
+               public Gdk.Color foreground_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool foreground_set { get; set; }
+               [NoAccessorMethod]
+               public string language { owned get; set; }
+               [NoAccessorMethod]
+               public bool language_set { get; set; }
+               [NoAccessorMethod]
+               public string markup { set; }
+               [NoAccessorMethod]
+               public int rise { get; set; }
+               [NoAccessorMethod]
+               public bool rise_set { get; set; }
+               [NoAccessorMethod]
+               public double scale { get; set; }
+               [NoAccessorMethod]
+               public bool scale_set { get; set; }
+               [NoAccessorMethod]
+               public bool single_paragraph_mode { get; set; }
+               [NoAccessorMethod]
+               public int size { get; set; }
+               [NoAccessorMethod]
+               public double size_points { get; set; }
+               [NoAccessorMethod]
+               public bool size_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Stretch stretch { get; set; }
+               [NoAccessorMethod]
+               public bool stretch_set { get; set; }
+               [NoAccessorMethod]
+               public bool strikethrough { get; set; }
+               [NoAccessorMethod]
+               public bool strikethrough_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Style style { get; set; }
+               [NoAccessorMethod]
+               public bool style_set { get; set; }
+               [NoAccessorMethod]
+               public string text { owned get; set; }
+               [NoAccessorMethod]
+               public Pango.Underline underline { get; set; }
+               [NoAccessorMethod]
+               public bool underline_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Variant variant { get; set; }
+               [NoAccessorMethod]
+               public bool variant_set { get; set; }
+               [NoAccessorMethod]
+               public int weight { get; set; }
+               [NoAccessorMethod]
+               public bool weight_set { get; set; }
+               [NoAccessorMethod]
+               public int width_chars { get; set; }
+               [NoAccessorMethod]
+               public Pango.WrapMode wrap_mode { get; set; }
+               [NoAccessorMethod]
+               public int wrap_width { get; set; }
+               public virtual signal void edited (string path, string new_text);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellRendererToggle : Gtk.CellRenderer {
+               [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
+               public CellRendererToggle ();
+               public bool get_activatable ();
+               public bool get_active ();
+               public bool get_radio ();
+               public void set_activatable (bool setting);
+               public void set_active (bool setting);
+               public void set_radio (bool radio);
+               public bool activatable { get; set; }
+               public bool active { get; set; }
+               [NoAccessorMethod]
+               public bool inconsistent { get; set; }
+               [NoAccessorMethod]
+               public int indicator_size { get; set; }
+               public bool radio { get; set; }
+               public virtual signal void toggled (string path);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CellView : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CellView ();
+               public Gtk.TreePath get_displayed_row ();
+               public unowned Gtk.TreeModel get_model ();
+               public bool get_size_of_row (Gtk.TreePath path, out Gtk.Requisition requisition);
+               public void set_background_color (Gdk.Color color);
+               public void set_displayed_row (Gtk.TreePath path);
+               public void set_model (Gtk.TreeModel? model);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CellView.with_markup (string markup);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CellView.with_pixbuf (Gdk.Pixbuf pixbuf);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CellView.with_text (string text);
+               [NoAccessorMethod]
+               public string background { set; }
+               [NoAccessorMethod]
+               public Gdk.Color background_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool background_set { get; set; }
+               public Gtk.TreeModel model { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CheckButton : Gtk.ToggleButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CheckButton ();
+               [NoWrapper]
+               public virtual void draw_indicator (Gdk.Rectangle area);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CheckButton.with_label (string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CheckButton.with_mnemonic (string label);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class CheckMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               public uint always_show_toggle;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CheckMenuItem ();
+               [NoWrapper]
+               public virtual void draw_indicator (Gdk.Rectangle area);
+               public bool get_active ();
+               public bool get_draw_as_radio ();
+               public bool get_inconsistent ();
+               public void set_active (bool is_active);
+               public void set_draw_as_radio (bool draw_as_radio);
+               public void set_inconsistent (bool setting);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CheckMenuItem.with_label (string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public CheckMenuItem.with_mnemonic (string label);
+               public bool active { get; set; }
+               public bool draw_as_radio { get; set; }
+               public bool inconsistent { get; set; }
+               [HasEmitter]
+               public virtual signal void toggled ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Clipboard : GLib.Object {
+               [CCode (has_construct_function = false)]
+               protected Clipboard ();
+               public void clear ();
+               public static unowned Gtk.Clipboard @get (Gdk.Atom selection);
+               public unowned Gdk.Display get_display ();
+               public static unowned Gtk.Clipboard get_for_display (Gdk.Display display, Gdk.Atom selection);
+               public unowned GLib.Object get_owner ();
+               public void request_contents (Gdk.Atom target, [CCode (scope = "async")] Gtk.ClipboardReceivedFunc callback);
+               public void request_image ([CCode (scope = "async")] Gtk.ClipboardImageReceivedFunc callback);
+               public void request_rich_text (Gtk.TextBuffer buffer, [CCode (scope = "async")] Gtk.ClipboardRichTextReceivedFunc callback);
+               public void request_targets ([CCode (scope = "async")] Gtk.ClipboardTargetsReceivedFunc callback);
+               public void request_text ([CCode (scope = "async")] Gtk.ClipboardTextReceivedFunc callback);
+               public void request_uris ([CCode (scope = "async")] Gtk.ClipboardURIReceivedFunc callback);
+               public void set_can_store (Gtk.TargetEntry[] targets);
+               public void set_image (Gdk.Pixbuf pixbuf);
+               public void set_text (string text, int len);
+               public bool set_with_data (Gtk.TargetEntry[] targets, [CCode (scope = "async")] Gtk.ClipboardGetFunc get_func, [CCode (scope = "async")] Gtk.ClipboardClearFunc clear_func);
+               public bool set_with_owner (Gtk.TargetEntry[] targets, [CCode (scope = "async")] Gtk.ClipboardGetFunc get_func, [CCode (scope = "async")] Gtk.ClipboardClearFunc clear_func, GLib.Object owner);
+               public void store ();
+               public Gtk.SelectionData? wait_for_contents (Gdk.Atom target);
+               public Gdk.Pixbuf? wait_for_image ();
+               [CCode (array_length_type = "gsize")]
+               public uint8[]? wait_for_rich_text (Gtk.TextBuffer buffer, out Gdk.Atom format);
+               public bool wait_for_targets (out Gdk.Atom[] targets);
+               public string? wait_for_text ();
+               [CCode (array_length = false, array_null_terminated = true)]
+               public string[]? wait_for_uris ();
+               public bool wait_is_image_available ();
+               public bool wait_is_rich_text_available (Gtk.TextBuffer buffer);
+               public bool wait_is_target_available (Gdk.Atom target);
+               public bool wait_is_text_available ();
+               public bool wait_is_uris_available ();
+               public virtual signal void owner_change (Gdk.Event p0);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ColorButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ColorButton ();
+               public uint16 get_alpha ();
+               public void get_color (out Gdk.Color color);
+               public unowned string get_title ();
+               public bool get_use_alpha ();
+               public void set_alpha (uint16 alpha);
+               public void set_color (Gdk.Color color);
+               public void set_title (string title);
+               public void set_use_alpha (bool use_alpha);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ColorButton.with_color (Gdk.Color color);
+               public uint alpha { get; set; }
+               public Gdk.Color color { get; set; }
+               public string title { get; set; }
+               public bool use_alpha { get; set; }
+               public virtual signal void color_set ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ColorSelection : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ColorSelection ();
+               public uint16 get_current_alpha ();
+               public void get_current_color (out Gdk.Color color);
+               public bool get_has_opacity_control ();
+               public bool get_has_palette ();
+               public uint16 get_previous_alpha ();
+               public void get_previous_color (out Gdk.Color color);
+               public bool is_adjusting ();
+               public static bool palette_from_string (string str, out Gdk.Color[] colors);
+               public static string palette_to_string (Gdk.Color[] colors);
+               public static unowned Gtk.ColorSelectionChangePaletteWithScreenFunc set_change_palette_with_screen_hook (Gtk.ColorSelectionChangePaletteWithScreenFunc func);
+               public void set_current_alpha (uint16 alpha);
+               public void set_current_color (Gdk.Color color);
+               public void set_has_opacity_control (bool has_opacity);
+               public void set_has_palette (bool has_palette);
+               public void set_previous_alpha (uint16 alpha);
+               public void set_previous_color (Gdk.Color color);
+               public uint current_alpha { get; set; }
+               public Gdk.Color current_color { get; set; }
+               public bool has_opacity_control { get; set; }
+               public bool has_palette { get; set; }
+               public virtual signal void color_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ColorSelectionDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.Widget colorsel;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ColorSelectionDialog (string title);
+               public unowned Gtk.ColorSelection get_color_selection ();
+               [NoAccessorMethod]
+               public Gtk.Widget cancel_button { owned get; }
+               public Gtk.Widget color_selection { get; }
+               [NoAccessorMethod]
+               public Gtk.Widget help_button { owned get; }
+               [NoAccessorMethod]
+               public Gtk.Widget ok_button { owned get; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ComboBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBox ();
+               public void append_text (string text);
+               public int get_active ();
+               public bool get_active_iter (out Gtk.TreeIter iter);
+               public virtual unowned string get_active_text ();
+               public bool get_add_tearoffs ();
+               public Gtk.SensitivityType get_button_sensitivity ();
+               public int get_column_span_column ();
+               public int get_entry_text_column ();
+               public bool get_focus_on_click ();
+               public bool get_has_entry ();
+               public unowned Gtk.TreeModel get_model ();
+               public unowned Atk.Object get_popup_accessible ();
+               public unowned Gtk.TreeViewRowSeparatorFunc get_row_separator_func ();
+               public int get_row_span_column ();
+               public unowned string get_title ();
+               public int get_wrap_width ();
+               public void insert_text (int position, string text);
+               public void prepend_text (string text);
+               public void remove_text (int position);
+               public void set_active (int index_);
+               public void set_active_iter (Gtk.TreeIter? iter);
+               public void set_add_tearoffs (bool add_tearoffs);
+               public void set_button_sensitivity (Gtk.SensitivityType sensitivity);
+               public void set_column_span_column (int column_span);
+               public void set_entry_text_column (int text_column);
+               public void set_focus_on_click (bool focus_on_click);
+               public void set_model (Gtk.TreeModel? model);
+               public void set_row_separator_func (owned Gtk.TreeViewRowSeparatorFunc func);
+               public void set_row_span_column (int row_span);
+               public void set_title (string title);
+               public void set_wrap_width (int width);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBox.text ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBox.with_entry ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBox.with_model (Gtk.TreeModel model);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBox.with_model_and_entry (Gtk.TreeModel model);
+               public int active { get; set; }
+               public bool add_tearoffs { get; set; }
+               public Gtk.SensitivityType button_sensitivity { get; set; }
+               public int column_span_column { get; set; }
+               public int entry_text_column { get; set; }
+               public bool focus_on_click { get; set; }
+               public bool has_entry { get; construct; }
+               [NoAccessorMethod]
+               public bool has_frame { get; set; }
+               public Gtk.TreeModel model { get; set; }
+               [NoAccessorMethod]
+               public bool popup_shown { get; }
+               public int row_span_column { get; set; }
+               [NoAccessorMethod]
+               public string tearoff_title { owned get; set; }
+               public int wrap_width { get; set; }
+               public virtual signal void changed ();
+               public virtual signal void move_active (Gtk.ScrollType p0);
+               [HasEmitter]
+               public virtual signal bool popdown ();
+               [HasEmitter]
+               public virtual signal void popup ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ComboBoxEntry : Gtk.ComboBox, Atk.Implementor, Gtk.Buildable, Gtk.CellEditable, Gtk.CellLayout {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBoxEntry ();
+               public int get_text_column ();
+               public void set_text_column (int text_column);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBoxEntry.text ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBoxEntry.with_model (Gtk.TreeModel model, int text_column);
+               public int text_column { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ComboBoxText : Gtk.ComboBox, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBoxText ();
+               public void append_text (string text);
+               public string get_active_text ();
+               public void insert_text (int position, string text);
+               public void prepend_text (string text);
+               public void remove (int position);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ComboBoxText.with_entry ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Container : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.Widget focus_child;
+               public uint has_focus_chain;
+               public uint need_resize;
+               public uint reallocate_redraws;
+               [CCode (has_construct_function = false)]
+               protected Container ();
+               public void add_with_properties (Gtk.Widget widget, ...);
+               public void child_get (Gtk.Widget child, ...);
+               public void child_get_property (Gtk.Widget child, string property_name, GLib.Value value);
+               public void child_get_valist (Gtk.Widget child, string first_property_name, va_list var_args);
+               public void child_set (Gtk.Widget child, ...);
+               public void child_set_property (Gtk.Widget child, string property_name, GLib.Value value);
+               public void child_set_valist (Gtk.Widget child, string first_property_name, va_list var_args);
+               public virtual GLib.Type child_type ();
+               public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass cclass, string property_name);
+               public static unowned GLib.ParamSpec class_list_child_properties (GLib.ObjectClass cclass, uint n_properties);
+               [NoWrapper]
+               public virtual unowned string composite_name (Gtk.Widget child);
+               public void forall (Gtk.Callback callback);
+               [CCode (vfunc_name = "forall")]
+               public virtual void forall_internal (bool include_internal, Gtk.Callback callback);
+               public void @foreach (Gtk.Callback callback);
+               public uint get_border_width ();
+               [NoWrapper]
+               public virtual void get_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+               public GLib.List<weak Gtk.Widget> get_children ();
+               public bool get_focus_chain (out GLib.List<weak Gtk.Widget> focusable_widgets);
+               public unowned Gtk.Widget get_focus_child ();
+               public unowned Gtk.Adjustment get_focus_hadjustment ();
+               public unowned Gtk.Adjustment get_focus_vadjustment ();
+               public Gtk.ResizeMode get_resize_mode ();
+               [CCode (cname = "gtk_container_class_install_child_property")]
+               public class void install_child_property (uint property_id, GLib.ParamSpec pspec);
+               public void propagate_expose (Gtk.Widget child, Gdk.EventExpose event);
+               public void resize_children ();
+               public void set_border_width (uint border_width);
+               [NoWrapper]
+               public virtual void set_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+               public void set_focus_chain (GLib.List<Gtk.Widget> focusable_widgets);
+               public void set_focus_hadjustment (Gtk.Adjustment adjustment);
+               public void set_focus_vadjustment (Gtk.Adjustment adjustment);
+               public void set_reallocate_redraws (bool needs_redraws);
+               public void set_resize_mode (Gtk.ResizeMode resize_mode);
+               public void unset_focus_chain ();
+               public uint border_width { get; set; }
+               [NoAccessorMethod]
+               public Gtk.Widget child { set; }
+               public Gtk.ResizeMode resize_mode { get; set; }
+               [HasEmitter]
+               public virtual signal void add (Gtk.Widget widget);
+               [HasEmitter]
+               public virtual signal void check_resize ();
+               [HasEmitter]
+               public virtual signal void remove (Gtk.Widget widget);
+               [HasEmitter]
+               public virtual signal void set_focus_child (Gtk.Widget? widget);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Curve : Gtk.DrawingArea, Atk.Implementor, Gtk.Buildable {
+               [CCode (array_length = false)]
+               public weak float[] ctlpoint;
+               public int cursor_type;
+               public int grab_point;
+               public int height;
+               public int last;
+               public int num_ctlpoints;
+               public int num_points;
+               public weak Gdk.Pixmap pixmap;
+               public Gdk.Point point;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Curve ();
+               public void get_vector (int veclen, float[] vector);
+               public void reset ();
+               public void set_curve_type (Gtk.CurveType type);
+               public void set_gamma (float gamma_);
+               public void set_range (float min_x, float max_x, float min_y, float max_y);
+               public void set_vector (int veclen, float[] vector);
+               [NoAccessorMethod]
+               public Gtk.CurveType curve_type { get; set; }
+               [NoAccessorMethod]
+               public float max_x { get; set; }
+               [NoAccessorMethod]
+               public float max_y { get; set; }
+               [NoAccessorMethod]
+               public float min_x { get; set; }
+               [NoAccessorMethod]
+               public float min_y { get; set; }
+               public virtual signal void curve_type_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Dialog : Gtk.Window, Atk.Implementor, Gtk.Buildable {
+               public Gtk.HButtonBox action_area;
+               public weak Gtk.Widget separator;
+               public Gtk.VBox vbox;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Dialog ();
+               public void add_action_widget (Gtk.Widget child, int response_id);
+               public unowned Gtk.Widget add_button (string button_text, int response_id);
+               public void add_buttons (...);
+               public unowned Gtk.Widget get_action_area ();
+               public unowned Gtk.Widget get_content_area ();
+               public bool get_has_separator ();
+               public int get_response_for_widget (Gtk.Widget widget);
+               public unowned Gtk.Widget get_widget_for_response (int response_id);
+               public int run ();
+               [CCode (sentinel = "-1")]
+               public void set_alternative_button_order (...);
+               public void set_alternative_button_order_from_array ([CCode (array_length_pos = 0.5)] int[] new_order);
+               public void set_default_response (int response_id);
+               public void set_has_separator (bool setting);
+               public void set_response_sensitive (int response_id, bool setting);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Dialog.with_buttons (string? title, Gtk.Window? parent, Gtk.DialogFlags flags, ...);
+               public bool has_separator { get; set; }
+               public virtual signal void close ();
+               [HasEmitter]
+               public virtual signal void response (int response_id);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class DrawingArea : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               public void* draw_data;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public DrawingArea ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Entry : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Editable, Gtk.CellEditable {
+               public int ascent;
+               public uint blink_timeout;
+               public uint button;
+               public uint cache_includes_preedit;
+               public weak Pango.Layout cached_layout;
+               public int current_pos;
+               public uint cursor_visible;
+               public int descent;
+               public int dnd_position;
+               public int drag_start_x;
+               public int drag_start_y;
+               public uint editing_canceled;
+               public weak Gtk.IMContext im_context;
+               public uint in_click;
+               public uint in_drag;
+               public uint is_cell_renderer;
+               public uint mouse_cursor_obscured;
+               public uint need_im_reset;
+               public weak Gtk.Widget popup_menu;
+               public uint16 preedit_cursor;
+               public uint16 preedit_length;
+               public uint recompute_idle;
+               public uint resolved_dir;
+               public uint select_lines;
+               public uint select_words;
+               public weak Gdk.Window text_area;
+               public uint16 text_max_length;
+               public uint visible;
+               public uint16 x_n_bytes;
+               public uint16 x_text_size;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Entry ();
+               public bool get_activates_default ();
+               public float get_alignment ();
+               public unowned Gtk.EntryBuffer get_buffer ();
+               public unowned Gtk.EntryCompletion get_completion ();
+               public int get_current_icon_drag_source ();
+               public unowned Gtk.Adjustment get_cursor_hadjustment ();
+               public bool get_has_frame ();
+               public bool get_icon_activatable (Gtk.EntryIconPosition icon_pos);
+               public int get_icon_at_pos (int x, int y);
+               public unowned GLib.Icon get_icon_gicon (Gtk.EntryIconPosition icon_pos);
+               public unowned string get_icon_name (Gtk.EntryIconPosition icon_pos);
+               public unowned Gdk.Pixbuf get_icon_pixbuf (Gtk.EntryIconPosition icon_pos);
+               public bool get_icon_sensitive (Gtk.EntryIconPosition icon_pos);
+               public unowned string get_icon_stock (Gtk.EntryIconPosition icon_pos);
+               public Gtk.ImageType get_icon_storage_type (Gtk.EntryIconPosition icon_pos);
+               public string? get_icon_tooltip_markup (Gtk.EntryIconPosition icon_pos);
+               public string? get_icon_tooltip_text (Gtk.EntryIconPosition icon_pos);
+               public unowned Gdk.Window get_icon_window (Gtk.EntryIconPosition icon_pos);
+               public unowned Gtk.Border get_inner_border ();
+               public unichar get_invisible_char ();
+               public unowned Pango.Layout get_layout ();
+               public void get_layout_offsets (out int x, out int y);
+               public int get_max_length ();
+               public bool get_overwrite_mode ();
+               public double get_progress_fraction ();
+               public double get_progress_pulse_step ();
+               public unowned string get_text ();
+               [NoWrapper]
+               public virtual void get_text_area_size (out int x, out int y, out int width, out int height);
+               public uint16 get_text_length ();
+               public unowned Gdk.Window get_text_window ();
+               public bool get_visibility ();
+               public int get_width_chars ();
+               public bool im_context_filter_keypress (Gdk.EventKey event);
+               public int layout_index_to_text_index (int layout_index);
+               public void progress_pulse ();
+               public void reset_im_context ();
+               public void set_activates_default (bool setting);
+               public void set_alignment (float xalign);
+               public void set_buffer (Gtk.EntryBuffer buffer);
+               public void set_completion (Gtk.EntryCompletion completion);
+               public void set_cursor_hadjustment (Gtk.Adjustment adjustment);
+               public void set_has_frame (bool setting);
+               public void set_icon_activatable (Gtk.EntryIconPosition icon_pos, bool activatable);
+               public void set_icon_drag_source (Gtk.EntryIconPosition icon_pos, Gtk.TargetList target_list, Gdk.DragAction actions);
+               public void set_icon_from_gicon (Gtk.EntryIconPosition icon_pos, GLib.Icon? icon);
+               public void set_icon_from_icon_name (Gtk.EntryIconPosition icon_pos, string? icon_name);
+               public void set_icon_from_pixbuf (Gtk.EntryIconPosition icon_pos, Gdk.Pixbuf? pixbuf);
+               public void set_icon_from_stock (Gtk.EntryIconPosition icon_pos, string? stock_id);
+               public void set_icon_sensitive (Gtk.EntryIconPosition icon_pos, bool sensitive);
+               public void set_icon_tooltip_markup (Gtk.EntryIconPosition icon_pos, string? tooltip);
+               public void set_icon_tooltip_text (Gtk.EntryIconPosition icon_pos, string? tooltip);
+               public void set_inner_border (Gtk.Border border);
+               public void set_invisible_char (unichar ch);
+               public void set_max_length (int max);
+               public void set_overwrite_mode (bool overwrite);
+               public void set_progress_fraction (double fraction);
+               public void set_progress_pulse_step (double fraction);
+               public void set_text (string text);
+               public void set_visibility (bool visible);
+               public void set_width_chars (int n_chars);
+               public int text_index_to_layout_index (int text_index);
+               public void unset_invisible_char ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Entry.with_buffer (Gtk.EntryBuffer buffer);
+               public bool activates_default { get; set; }
+               public Gtk.EntryBuffer buffer { get; set construct; }
+               [NoAccessorMethod]
+               public bool caps_lock_warning { get; set; }
+               [NoAccessorMethod]
+               public int cursor_position { get; }
+               [NoAccessorMethod]
+               public bool editable { get; set; }
+               public bool has_frame { get; set; }
+               [NoAccessorMethod]
+               public string im_module { owned get; set; }
+               public Gtk.Border inner_border { get; set; }
+               public uint invisible_char { get; set; }
+               [NoAccessorMethod]
+               public bool invisible_char_set { get; set; }
+               public int max_length { get; set; }
+               public bool overwrite_mode { get; set; }
+               [NoAccessorMethod]
+               public bool primary_icon_activatable { get; set; }
+               [NoAccessorMethod]
+               public GLib.Icon primary_icon_gicon { owned get; set; }
+               [NoAccessorMethod]
+               public string primary_icon_name { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf primary_icon_pixbuf { owned get; set; }
+               [NoAccessorMethod]
+               public bool primary_icon_sensitive { get; set; }
+               [NoAccessorMethod]
+               public string primary_icon_stock { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.ImageType primary_icon_storage_type { get; }
+               [NoAccessorMethod]
+               public string primary_icon_tooltip_markup { owned get; set; }
+               [NoAccessorMethod]
+               public string primary_icon_tooltip_text { owned get; set; }
+               public double progress_fraction { get; set; }
+               public double progress_pulse_step { get; set; }
+               [NoAccessorMethod]
+               public int scroll_offset { get; }
+               [NoAccessorMethod]
+               public bool secondary_icon_activatable { get; set; }
+               [NoAccessorMethod]
+               public GLib.Icon secondary_icon_gicon { owned get; set; }
+               [NoAccessorMethod]
+               public string secondary_icon_name { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf secondary_icon_pixbuf { owned get; set; }
+               [NoAccessorMethod]
+               public bool secondary_icon_sensitive { get; set; }
+               [NoAccessorMethod]
+               public string secondary_icon_stock { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.ImageType secondary_icon_storage_type { get; }
+               [NoAccessorMethod]
+               public string secondary_icon_tooltip_markup { owned get; set; }
+               [NoAccessorMethod]
+               public string secondary_icon_tooltip_text { owned get; set; }
+               [NoAccessorMethod]
+               public int selection_bound { get; }
+               [NoAccessorMethod]
+               public Gtk.ShadowType shadow_type { get; set; }
+               public string text { get; set; }
+               public uint text_length { get; }
+               [NoAccessorMethod]
+               public bool truncate_multiline { get; set; }
+               public bool visibility { get; set; }
+               public int width_chars { get; set; }
+               [NoAccessorMethod]
+               public float xalign { get; set; }
+               public virtual signal void activate ();
+               public virtual signal void backspace ();
+               public virtual signal void copy_clipboard ();
+               public virtual signal void cut_clipboard ();
+               public virtual signal void delete_from_cursor (Gtk.DeleteType type, int count);
+               public virtual signal void icon_press (Gtk.EntryIconPosition p0, Gdk.Event p1);
+               public virtual signal void icon_release (Gtk.EntryIconPosition p0, Gdk.Event p1);
+               public virtual signal void insert_at_cursor (string str);
+               public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection);
+               public virtual signal void paste_clipboard ();
+               public virtual signal void populate_popup (Gtk.Menu menu);
+               public virtual signal void preedit_changed (string p0);
+               public virtual signal void toggle_overwrite ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class EntryBuffer : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public EntryBuffer (uint8[] initial_chars);
+               public virtual uint delete_text (uint position, int n_chars);
+               public void emit_deleted_text (uint position, uint n_chars);
+               public void emit_inserted_text (uint position, uint8[] chars);
+               public size_t get_bytes ();
+               public virtual uint get_length ();
+               public int get_max_length ();
+               public virtual unowned string get_text ();
+               public virtual uint insert_text (uint position, uint8[] chars);
+               public void set_max_length (int max_length);
+               public void set_text (uint8[] chars);
+               public uint length { get; }
+               public int max_length { get; set; }
+               public string text { get; set; }
+               public virtual signal void deleted_text (uint position, uint n_chars);
+               public virtual signal void inserted_text (uint position, string chars, uint n_chars);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class EntryCompletion : GLib.Object, Gtk.CellLayout, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               public EntryCompletion ();
+               public void complete ();
+               public void delete_action (int index_);
+               public unowned string get_completion_prefix ();
+               public unowned Gtk.Widget get_entry ();
+               public bool get_inline_completion ();
+               public bool get_inline_selection ();
+               public int get_minimum_key_length ();
+               public unowned Gtk.TreeModel get_model ();
+               public bool get_popup_completion ();
+               public bool get_popup_set_width ();
+               public bool get_popup_single_match ();
+               public int get_text_column ();
+               public void insert_action_markup (int index_, string markup);
+               public void insert_action_text (int index_, string text);
+               public void set_inline_completion (bool inline_completion);
+               public void set_inline_selection (bool inline_selection);
+               public void set_match_func (owned Gtk.EntryCompletionMatchFunc func);
+               public void set_minimum_key_length (int length);
+               public void set_model (Gtk.TreeModel? model);
+               public void set_popup_completion (bool popup_completion);
+               public void set_popup_set_width (bool popup_set_width);
+               public void set_popup_single_match (bool popup_single_match);
+               public void set_text_column (int column);
+               public bool inline_completion { get; set; }
+               public bool inline_selection { get; set; }
+               public int minimum_key_length { get; set; }
+               public Gtk.TreeModel model { get; set; }
+               public bool popup_completion { get; set; }
+               public bool popup_set_width { get; set; }
+               public bool popup_single_match { get; set; }
+               public int text_column { get; set; }
+               public virtual signal void action_activated (int index_);
+               public virtual signal bool cursor_on_match (Gtk.TreeModel model, Gtk.TreeIter iter);
+               [HasEmitter]
+               public virtual signal bool insert_prefix (string prefix);
+               public virtual signal bool match_selected (Gtk.TreeModel model, Gtk.TreeIter iter);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class EventBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public EventBox ();
+               public bool get_above_child ();
+               public bool get_visible_window ();
+               public void set_above_child (bool above_child);
+               public void set_visible_window (bool visible_window);
+               public bool above_child { get; set; }
+               public bool visible_window { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Expander : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Expander (string label);
+               public bool get_expanded ();
+               public unowned string get_label ();
+               public bool get_label_fill ();
+               public unowned Gtk.Widget get_label_widget ();
+               public int get_spacing ();
+               public bool get_use_markup ();
+               public bool get_use_underline ();
+               public void set_expanded (bool expanded);
+               public void set_label (string label);
+               public void set_label_fill (bool label_fill);
+               public void set_label_widget (Gtk.Widget label_widget);
+               public void set_spacing (int spacing);
+               public void set_use_markup (bool use_markup);
+               public void set_use_underline (bool use_underline);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Expander.with_mnemonic (string label);
+               public bool expanded { get; set construct; }
+               public string label { get; set construct; }
+               public bool label_fill { get; set construct; }
+               public Gtk.Widget label_widget { get; set; }
+               public int spacing { get; set; }
+               public bool use_markup { get; set construct; }
+               public bool use_underline { get; set construct; }
+               public virtual signal void activate ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FileChooserButton : Gtk.HBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FileChooser {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FileChooserButton (string title, Gtk.FileChooserAction action);
+               public bool get_focus_on_click ();
+               public unowned string get_title ();
+               public int get_width_chars ();
+               public void set_focus_on_click (bool focus_on_click);
+               public void set_title (string title);
+               public void set_width_chars (int n_chars);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FileChooserButton.with_dialog (Gtk.Dialog dialog);
+               public Gtk.FileChooser dialog { construct; }
+               public bool focus_on_click { get; set; }
+               public string title { get; set; }
+               public int width_chars { get; set; }
+               public virtual signal void file_set ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FileChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.FileChooser {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FileChooserDialog (string? title, Gtk.Window? parent, Gtk.FileChooserAction action, ...);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FileChooserWidget : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FileChooser, Gtk.FileChooserEmbed {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FileChooserWidget (Gtk.FileChooserAction action);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FileFilter : Gtk.Object {
+               [CCode (has_construct_function = false)]
+               public FileFilter ();
+               public void add_custom (Gtk.FileFilterFlags needed, owned Gtk.FileFilterFunc func);
+               public void add_mime_type (string mime_type);
+               public void add_pattern (string pattern);
+               public void add_pixbuf_formats ();
+               public bool filter (Gtk.FileFilterInfo filter_info);
+               public unowned string get_name ();
+               public Gtk.FileFilterFlags get_needed ();
+               public void set_name (string name);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class FileFilterInfo {
+               public Gtk.FileFilterFlags contains;
+               public weak string display_name;
+               public weak string filename;
+               public weak string mime_type;
+               public weak string uri;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Fixed : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public weak GLib.List<Gtk.FixedChild> children;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Fixed ();
+               public bool get_has_window ();
+               public void move (Gtk.Widget widget, int x, int y);
+               public void put (Gtk.Widget widget, int x, int y);
+               public void set_has_window (bool has_window);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class FixedChild {
+               public weak Gtk.Widget widget;
+               public int x;
+               public int y;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FontButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FontButton ();
+               public unowned string get_font_name ();
+               public bool get_show_size ();
+               public bool get_show_style ();
+               public unowned string get_title ();
+               public bool get_use_font ();
+               public bool get_use_size ();
+               public bool set_font_name (string fontname);
+               public void set_show_size (bool show_size);
+               public void set_show_style (bool show_style);
+               public void set_title (string title);
+               public void set_use_font (bool use_font);
+               public void set_use_size (bool use_size);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FontButton.with_font (string fontname);
+               public string font_name { get; set; }
+               public bool show_size { get; set; }
+               public bool show_style { get; set; }
+               public string title { get; set; }
+               public bool use_font { get; set; }
+               public bool use_size { get; set; }
+               public virtual signal void font_set ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FontSelection : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public weak Pango.FontFace face;
+               public weak Gtk.Widget face_list;
+               public weak Pango.FontFamily family;
+               public weak Gtk.Widget family_list;
+               public weak Gtk.Widget filter_button;
+               public weak Gtk.Widget font_entry;
+               public weak Gtk.Widget font_style_entry;
+               public weak Gtk.Widget pixels_button;
+               public weak Gtk.Widget points_button;
+               public weak Gtk.Widget preview_entry;
+               public int size;
+               public weak Gtk.Widget size_entry;
+               public weak Gtk.Widget size_list;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FontSelection ();
+               public unowned Pango.FontFace get_face ();
+               public unowned Gtk.Widget get_face_list ();
+               public unowned Pango.FontFamily get_family ();
+               public unowned Gtk.Widget get_family_list ();
+               public unowned string get_font_name ();
+               public unowned Gtk.Widget get_preview_entry ();
+               public unowned string get_preview_text ();
+               public int get_size ();
+               public unowned Gtk.Widget get_size_entry ();
+               public unowned Gtk.Widget get_size_list ();
+               public bool set_font_name (string fontname);
+               public void set_preview_text (string text);
+               [NoAccessorMethod]
+               public Gdk.Font font { owned get; }
+               public string font_name { get; set; }
+               public string preview_text { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class FontSelectionDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.Widget action_area;
+               public weak Gtk.Widget apply_button;
+               public bool auto_resize;
+               public weak Gtk.Widget cancel_button;
+               public int dialog_width;
+               public weak Gtk.Widget fontsel;
+               public weak Gtk.Widget main_vbox;
+               public weak Gtk.Widget ok_button;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public FontSelectionDialog (string title);
+               public unowned Gtk.Widget get_cancel_button ();
+               public unowned string get_font_name ();
+               public unowned Gtk.Widget get_font_selection ();
+               public unowned Gtk.Widget get_ok_button ();
+               public unowned string get_preview_text ();
+               public bool set_font_name (string fontname);
+               public void set_preview_text (string text);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Frame : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               public Gtk.Allocation child_allocation;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Frame (string? label);
+               [NoWrapper]
+               public virtual void compute_child_allocation (Gtk.Allocation allocation);
+               public unowned string get_label ();
+               public void get_label_align (out float xalign, out float yalign);
+               public unowned Gtk.Widget get_label_widget ();
+               public Gtk.ShadowType get_shadow_type ();
+               public void set_label (string label);
+               public void set_label_align (float xalign, float yalign);
+               public void set_label_widget (Gtk.Widget label_widget);
+               public void set_shadow_type (Gtk.ShadowType type);
+               public string label { get; set; }
+               public Gtk.Widget label_widget { get; set; }
+               [NoAccessorMethod]
+               public float label_xalign { get; set; }
+               [NoAccessorMethod]
+               public float label_yalign { get; set; }
+               [NoAccessorMethod]
+               public Gtk.ShadowType shadow { get; set; }
+               public Gtk.ShadowType shadow_type { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class GammaCurve : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (array_length = false)]
+               public weak Gtk.Widget[] button;
+               public weak Gtk.Widget curve;
+               public float gamma;
+               public weak Gtk.Widget gamma_dialog;
+               public weak Gtk.Widget gamma_text;
+               public weak Gtk.Widget table;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public GammaCurve ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HBox (bool homogeneous, int spacing);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HButtonBox ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HPaned ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HRuler : Gtk.Ruler, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HRuler ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HSV : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HSV ();
+               public void get_color (out double h, out double s, out double v);
+               public void get_metrics (out int size, out int ring_width);
+               public bool is_adjusting ();
+               public void set_color (double h, double s, double v);
+               public void set_metrics (int size, int ring_width);
+               public static void to_rgb (double h, double s, double v, out double r, out double g, out double b);
+               public virtual signal void changed ();
+               public virtual signal void move (Gtk.DirectionType type);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HScale (Gtk.Adjustment? adjustment);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HScale.with_range (double min, double max, double step);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HScrollbar : Gtk.Scrollbar, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HScrollbar (Gtk.Adjustment? adjustment);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HSeparator ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class HandleBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               public Gtk.Allocation attach_allocation;
+               public weak Gdk.Window bin_window;
+               public int deskoff_x;
+               public int deskoff_y;
+               public Gtk.Allocation float_allocation;
+               public weak Gdk.Window float_window;
+               public uint float_window_mapped;
+               public uint in_drag;
+               public uint shrink_on_detach;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public HandleBox ();
+               public bool get_child_detached ();
+               public Gtk.PositionType get_handle_position ();
+               public Gtk.ShadowType get_shadow_type ();
+               public Gtk.PositionType get_snap_edge ();
+               public void set_handle_position (Gtk.PositionType position);
+               public void set_shadow_type (Gtk.ShadowType type);
+               public void set_snap_edge (Gtk.PositionType edge);
+               public bool child_detached { get; }
+               public Gtk.PositionType handle_position { get; set; }
+               [NoAccessorMethod]
+               public Gtk.ShadowType shadow { get; set; }
+               public Gtk.ShadowType shadow_type { get; set; }
+               public Gtk.PositionType snap_edge { get; set; }
+               [NoAccessorMethod]
+               public bool snap_edge_set { get; set; }
+               public virtual signal void child_attached (Gtk.Widget child);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h,gtk/gtkimmodule.h")]
+       public class IMContext : GLib.Object {
+               [CCode (has_construct_function = false)]
+               protected IMContext ();
+               public virtual bool filter_keypress (Gdk.EventKey event);
+               public virtual void focus_in ();
+               public virtual void focus_out ();
+               public virtual void get_preedit_string (out string str, out Pango.AttrList attrs, out int cursor_pos);
+               public virtual bool get_surrounding (out string text, out int cursor_index);
+               public virtual void reset ();
+               public virtual void set_client_window (Gdk.Window window);
+               public virtual void set_cursor_location (Gdk.Rectangle area);
+               public virtual void set_surrounding (string text, int len, int cursor_index);
+               public virtual void set_use_preedit (bool use_preedit);
+               public virtual signal void commit (string str);
+               [HasEmitter]
+               public virtual signal bool delete_surrounding (int offset, int n_chars);
+               public virtual signal void preedit_changed ();
+               public virtual signal void preedit_end ();
+               public virtual signal void preedit_start ();
+               public virtual signal bool retrieve_surrounding ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class IMContextSimple : Gtk.IMContext {
+               [CCode (array_length = false)]
+               public weak uint[] compose_buffer;
+               public uint in_hex_sequence;
+               public uint modifiers_dropped;
+               public weak GLib.SList tables;
+               public unichar tentative_match;
+               public int tentative_match_len;
+               [CCode (has_construct_function = false, type = "GtkIMContext*")]
+               public IMContextSimple ();
+               public void add_table ([CCode (array_length = false)] uint16[] data, int max_seq_len, int n_seqs);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class IMMulticontext : Gtk.IMContext {
+               public weak string context_id;
+               public weak Gtk.IMContext slave;
+               [CCode (has_construct_function = false, type = "GtkIMContext*")]
+               public IMMulticontext ();
+               public void append_menuitems (Gtk.MenuShell menushell);
+               public unowned string get_context_id ();
+               public void set_context_id (string context_id);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class IconFactory : GLib.Object, Gtk.Buildable {
+               public weak GLib.HashTable icons;
+               [CCode (has_construct_function = false)]
+               public IconFactory ();
+               public void add (string stock_id, Gtk.IconSet icon_set);
+               public void add_default ();
+               public unowned Gtk.IconSet lookup (string stock_id);
+               public static unowned Gtk.IconSet lookup_default (string stock_id);
+               public void remove_default ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_icon_info_copy", type_id = "gtk_icon_info_get_type ()")]
+       [Compact]
+       public class IconInfo {
+               public Gtk.IconInfo copy ();
+               [CCode (has_construct_function = false)]
+               public IconInfo.for_pixbuf (Gtk.IconTheme icon_theme, Gdk.Pixbuf pixbuf);
+               public bool get_attach_points (out Gdk.Point[] points);
+               public int get_base_size ();
+               public unowned Gdk.Pixbuf get_builtin_pixbuf ();
+               public unowned string get_display_name ();
+               public bool get_embedded_rect (out Gdk.Rectangle rectangle);
+               public unowned string get_filename ();
+               public Gdk.Pixbuf load_icon () throws GLib.Error;
+               public void set_raw_coordinates (bool raw_coordinates);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_icon_set_ref", type_id = "gtk_icon_set_get_type ()", unref_function = "gtk_icon_set_unref")]
+       [Compact]
+       public class IconSet {
+               [CCode (has_construct_function = false)]
+               public IconSet ();
+               public void add_source (Gtk.IconSource source);
+               public Gtk.IconSet copy ();
+               [CCode (has_construct_function = false)]
+               public IconSet.from_pixbuf (Gdk.Pixbuf pixbuf);
+               public void get_sizes (out Gtk.IconSize[] sizes);
+               public Gdk.Pixbuf render_icon (Gtk.Style style, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_icon_source_copy", type_id = "gtk_icon_source_get_type ()")]
+       [Compact]
+       public class IconSource {
+               [CCode (has_construct_function = false)]
+               public IconSource ();
+               public Gtk.IconSource copy ();
+               public Gtk.TextDirection get_direction ();
+               public bool get_direction_wildcarded ();
+               public unowned string get_filename ();
+               public unowned string get_icon_name ();
+               public unowned Gdk.Pixbuf get_pixbuf ();
+               public Gtk.IconSize get_size ();
+               public bool get_size_wildcarded ();
+               public Gtk.StateType get_state ();
+               public bool get_state_wildcarded ();
+               public void set_direction (Gtk.TextDirection direction);
+               public void set_direction_wildcarded (bool setting);
+               public void set_filename (string filename);
+               public void set_icon_name (string icon_name);
+               public void set_pixbuf (Gdk.Pixbuf pixbuf);
+               public void set_size (Gtk.IconSize size);
+               public void set_size_wildcarded (bool setting);
+               public void set_state (Gtk.StateType state);
+               public void set_state_wildcarded (bool setting);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class IconTheme : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public IconTheme ();
+               public static void add_builtin_icon (string icon_name, int size, Gdk.Pixbuf pixbuf);
+               public void append_search_path (string path);
+               public Gtk.IconInfo choose_icon ([CCode (array_length = false, array_null_terminated = true)] string[] icon_names, int size, Gtk.IconLookupFlags flags);
+               public static GLib.Quark error_quark ();
+               public static unowned Gtk.IconTheme get_default ();
+               public string? get_example_icon_name ();
+               public static unowned Gtk.IconTheme get_for_screen (Gdk.Screen screen);
+               [CCode (array_length = false, array_null_terminated = true)]
+               public int[] get_icon_sizes (string icon_name);
+               public void get_search_path (out string[] path);
+               public bool has_icon (string icon_name);
+               public GLib.List<string> list_contexts ();
+               public GLib.List<string> list_icons (string? context);
+               public Gdk.Pixbuf? load_icon (string icon_name, int size, Gtk.IconLookupFlags flags) throws GLib.Error;
+               public Gtk.IconInfo lookup_by_gicon (GLib.Icon icon, int size, Gtk.IconLookupFlags flags);
+               public Gtk.IconInfo lookup_icon (string icon_name, int size, Gtk.IconLookupFlags flags);
+               public void prepend_search_path (string path);
+               public bool rescan_if_needed ();
+               public void set_custom_theme (string theme_name);
+               public void set_screen (Gdk.Screen screen);
+               public void set_search_path (string[] path);
+               public virtual signal void changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class IconView : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public IconView ();
+               public void convert_widget_to_bin_window_coords (int wx, int wy, int bx, int by);
+               public Gdk.Pixmap create_drag_icon (Gtk.TreePath path);
+               public void enable_model_drag_dest (Gtk.TargetEntry[] targets, Gdk.DragAction actions);
+               public void enable_model_drag_source (Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions);
+               public int get_column_spacing ();
+               public int get_columns ();
+               public bool get_cursor (out Gtk.TreePath path, out unowned Gtk.CellRenderer cell);
+               public bool get_dest_item_at_pos (int drag_x, int drag_y, out unowned Gtk.TreePath path, Gtk.IconViewDropPosition pos);
+               public void get_drag_dest_item (out unowned Gtk.TreePath path, Gtk.IconViewDropPosition pos);
+               public bool get_item_at_pos (int x, int y, out unowned Gtk.TreePath path, out unowned Gtk.CellRenderer cell);
+               public int get_item_column (Gtk.TreePath path);
+               public Gtk.Orientation get_item_orientation ();
+               public int get_item_padding ();
+               public int get_item_row (Gtk.TreePath path);
+               public int get_item_width ();
+               public int get_margin ();
+               public int get_markup_column ();
+               public unowned Gtk.TreeModel get_model ();
+               public Gtk.Orientation get_orientation ();
+               public Gtk.TreePath get_path_at_pos (int x, int y);
+               public int get_pixbuf_column ();
+               public bool get_reorderable ();
+               public int get_row_spacing ();
+               public GLib.List<Gtk.TreePath> get_selected_items ();
+               public Gtk.SelectionMode get_selection_mode ();
+               public int get_spacing ();
+               public int get_text_column ();
+               public int get_tooltip_column ();
+               public bool get_tooltip_context (out int x, out int y, bool keyboard_tip, out unowned Gtk.TreeModel model, out unowned Gtk.TreePath path, out Gtk.TreeIter iter);
+               public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path);
+               public bool path_is_selected (Gtk.TreePath path);
+               public void scroll_to_path (Gtk.TreePath path, bool use_align, float row_align, float col_align);
+               public void select_path (Gtk.TreePath path);
+               public void selected_foreach (Gtk.IconViewForeachFunc func);
+               public void set_column_spacing (int column_spacing);
+               public void set_columns (int columns);
+               public void set_cursor (Gtk.TreePath path, Gtk.CellRenderer? cell, bool start_editing);
+               public void set_drag_dest_item (Gtk.TreePath path, Gtk.IconViewDropPosition pos);
+               public void set_item_orientation (Gtk.Orientation orientation);
+               public void set_item_padding (int item_padding);
+               public void set_item_width (int item_width);
+               public void set_margin (int margin);
+               public void set_markup_column (int column);
+               public void set_model (Gtk.TreeModel? model);
+               public void set_orientation (Gtk.Orientation orientation);
+               public void set_pixbuf_column (int column);
+               public void set_reorderable (bool reorderable);
+               public void set_row_spacing (int row_spacing);
+               public void set_selection_mode (Gtk.SelectionMode mode);
+               public void set_spacing (int spacing);
+               public void set_text_column (int column);
+               public void set_tooltip_cell (Gtk.Tooltip tooltip, Gtk.TreePath path, Gtk.CellRenderer cell);
+               public void set_tooltip_column (int column);
+               public void set_tooltip_item (Gtk.Tooltip tooltip, Gtk.TreePath path);
+               public void unselect_path (Gtk.TreePath path);
+               public void unset_model_drag_dest ();
+               public void unset_model_drag_source ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public IconView.with_model (Gtk.TreeModel model);
+               public int column_spacing { get; set; }
+               public int columns { get; set; }
+               public Gtk.Orientation item_orientation { get; set; }
+               public int item_padding { get; set; }
+               public int item_width { get; set; }
+               public int margin { get; set; }
+               public int markup_column { get; set; }
+               public Gtk.TreeModel model { get; set; }
+               public Gtk.Orientation orientation { get; set; }
+               public int pixbuf_column { get; set; }
+               public bool reorderable { get; set; }
+               public int row_spacing { get; set; }
+               public Gtk.SelectionMode selection_mode { get; set; }
+               public int spacing { get; set; }
+               public int text_column { get; set; }
+               public int tooltip_column { get; set; }
+               public virtual signal bool activate_cursor_item ();
+               [HasEmitter]
+               public virtual signal void item_activated (Gtk.TreePath path);
+               public virtual signal bool move_cursor (Gtk.MovementStep step, int count);
+               public virtual signal void select_all ();
+               public virtual signal void select_cursor_item ();
+               public virtual signal void selection_changed ();
+               public virtual signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+               public virtual signal void toggle_cursor_item ();
+               public virtual signal void unselect_all ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Image : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image ();
+               public void clear ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_animation (Gdk.PixbufAnimation animation);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_file (string filename);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_gicon (GLib.Icon icon, Gtk.IconSize size);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_icon_name (string icon_name, Gtk.IconSize size);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_image (Gdk.Image image, Gdk.Bitmap mask);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_pixbuf (Gdk.Pixbuf pixbuf);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_pixmap (Gdk.Pixmap pixmap, Gdk.Bitmap mask);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Image.from_stock (string stock_id, Gtk.IconSize size);
+               public unowned Gdk.PixbufAnimation get_animation ();
+               public void get_gicon (out unowned GLib.Icon gicon, out Gtk.IconSize size);
+               public void get_icon_name (out unowned string icon_name, out Gtk.IconSize size);
+               public void get_icon_set (out unowned Gtk.IconSet icon_set, out Gtk.IconSize size);
+               public void get_image (out unowned Gdk.Image gdk_image, out unowned Gdk.Bitmap mask);
+               public unowned Gdk.Pixbuf get_pixbuf ();
+               public int get_pixel_size ();
+               public void get_pixmap (out unowned Gdk.Pixmap pixmap, out unowned Gdk.Bitmap mask);
+               public void get_stock (out string stock_id, out Gtk.IconSize size);
+               public Gtk.ImageType get_storage_type ();
+               public void set_from_animation (Gdk.PixbufAnimation animation);
+               public void set_from_file (string filename);
+               public void set_from_gicon (GLib.Icon icon, Gtk.IconSize size);
+               public void set_from_icon_name (string icon_name, Gtk.IconSize size);
+               public void set_from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size);
+               public void set_from_image (Gdk.Image gdk_image, Gdk.Bitmap mask);
+               public void set_from_pixbuf (Gdk.Pixbuf pixbuf);
+               public void set_from_pixmap (Gdk.Pixmap? pixmap, Gdk.Bitmap? mask);
+               public void set_from_stock (string stock_id, Gtk.IconSize size);
+               public void set_pixel_size (int pixel_size);
+               [NoAccessorMethod]
+               public string file { owned get; set; }
+               [NoAccessorMethod]
+               public GLib.Icon gicon { owned get; set; }
+               [NoAccessorMethod]
+               public string icon_name { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.IconSet icon_set { owned get; set; }
+               [NoAccessorMethod]
+               public int icon_size { get; set; }
+               [NoAccessorMethod]
+               public Gdk.Image image { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixmap mask { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf pixbuf { owned get; set; }
+               [NoAccessorMethod]
+               public Gdk.PixbufAnimation pixbuf_animation { owned get; set; }
+               public int pixel_size { get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixmap pixmap { owned get; set; }
+               [NoAccessorMethod]
+               public string stock { owned get; set; }
+               public Gtk.ImageType storage_type { get; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImageAnimationData {
+               public weak Gdk.PixbufAnimation anim;
+               public uint frame_timeout;
+               public weak Gdk.PixbufAnimationIter iter;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImageGIconData {
+               public weak GLib.Icon icon;
+               public weak Gdk.Pixbuf pixbuf;
+               public uint theme_change_id;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImageIconNameData {
+               public weak string icon_name;
+               public weak Gdk.Pixbuf pixbuf;
+               public uint theme_change_id;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImageIconSetData {
+               public weak Gtk.IconSet icon_set;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImageImageData {
+               public weak Gdk.Image image;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ImageMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ImageMenuItem ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ImageMenuItem.from_stock (string stock_id, Gtk.AccelGroup? accel_group);
+               public bool get_always_show_image ();
+               public unowned Gtk.Widget get_image ();
+               public bool get_use_stock ();
+               public void set_accel_group (Gtk.AccelGroup accel_group);
+               public void set_always_show_image (bool always_show);
+               public void set_image (Gtk.Widget image);
+               public void set_use_stock (bool use_stock);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ImageMenuItem.with_label (string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ImageMenuItem.with_mnemonic (string label);
+               public Gtk.AccelGroup accel_group { set; }
+               public bool always_show_image { get; set construct; }
+               public Gtk.Widget image { get; set; }
+               public bool use_stock { get; set construct; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImagePixbufData {
+               public weak Gdk.Pixbuf pixbuf;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImagePixmapData {
+               public weak Gdk.Pixmap pixmap;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ImageStockData {
+               public weak string stock_id;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class InfoBar : Gtk.HBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public InfoBar ();
+               public void add_action_widget (Gtk.Widget child, int response_id);
+               public unowned Gtk.Button add_button (string button_text, int response_id);
+               public void add_buttons (...);
+               public unowned Gtk.Widget get_action_area ();
+               public unowned Gtk.Container get_content_area ();
+               public Gtk.MessageType get_message_type ();
+               public void set_default_response (int response_id);
+               public void set_message_type (Gtk.MessageType message_type);
+               public void set_response_sensitive (int response_id, bool setting);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public InfoBar.with_buttons (...);
+               public Gtk.MessageType message_type { get; set construct; }
+               public virtual signal void close ();
+               [HasEmitter]
+               public virtual signal void response (int response_id);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class InputDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+               [CCode (array_length = false)]
+               public weak Gtk.Widget[] axis_items;
+               public weak Gtk.Widget axis_list;
+               public weak Gtk.Widget axis_listbox;
+               public weak Gtk.Widget close_button;
+               public weak Gdk.Device current_device;
+               public weak Gtk.Widget keys_list;
+               public weak Gtk.Widget keys_listbox;
+               public weak Gtk.Widget mode_optionmenu;
+               public weak Gtk.Widget save_button;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public InputDialog ();
+               public virtual signal void disable_device (Gdk.Device device);
+               public virtual signal void enable_device (Gdk.Device device);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Invisible : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               public bool has_user_ref_count;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Invisible ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Invisible.for_screen (Gdk.Screen screen);
+               public unowned Gdk.Screen get_screen ();
+               public void set_screen (Gdk.Screen screen);
+               public Gdk.Screen screen { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Item : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               protected Item ();
+               [HasEmitter]
+               public virtual signal void deselect ();
+               [HasEmitter]
+               public virtual signal void select ();
+               [HasEmitter]
+               public virtual signal void toggle ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Label : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
+               public weak Pango.AttrList attrs;
+               public weak Pango.AttrList effective_attrs;
+               public uint have_transform;
+               public uint in_click;
+               public uint jtype;
+               public weak Pango.Layout layout;
+               public weak Gtk.Window mnemonic_window;
+               public uint pattern_set;
+               public weak Gtk.LabelSelectionInfo select_info;
+               public uint track_links;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Label (string? str);
+               public double get_angle ();
+               public unowned Pango.AttrList get_attributes ();
+               public unowned string get_current_uri ();
+               public Pango.EllipsizeMode get_ellipsize ();
+               public Gtk.Justification get_justify ();
+               public unowned string get_label ();
+               public unowned Pango.Layout get_layout ();
+               public void get_layout_offsets (out int x, out int y);
+               public bool get_line_wrap ();
+               public Pango.WrapMode get_line_wrap_mode ();
+               public int get_max_width_chars ();
+               public uint get_mnemonic_keyval ();
+               public unowned Gtk.Widget get_mnemonic_widget ();
+               public bool get_selectable ();
+               public bool get_selection_bounds (out int start, out int end);
+               public bool get_single_line_mode ();
+               public unowned string get_text ();
+               public bool get_track_visited_links ();
+               public bool get_use_markup ();
+               public bool get_use_underline ();
+               public int get_width_chars ();
+               public void select_region (int start_offset, int end_offset);
+               public void set_angle (double angle);
+               public void set_attributes (Pango.AttrList attrs);
+               public void set_ellipsize (Pango.EllipsizeMode mode);
+               public void set_justify (Gtk.Justification jtype);
+               public void set_label (string str);
+               public void set_line_wrap (bool wrap);
+               public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
+               public void set_markup (string str);
+               public void set_markup_with_mnemonic (string str);
+               public void set_max_width_chars (int n_chars);
+               public void set_mnemonic_widget (Gtk.Widget widget);
+               public void set_pattern (string pattern);
+               public void set_selectable (bool setting);
+               public void set_single_line_mode (bool single_line_mode);
+               public void set_text (string str);
+               public void set_text_with_mnemonic (string str);
+               public void set_track_visited_links (bool track_links);
+               public void set_use_markup (bool setting);
+               public void set_use_underline (bool setting);
+               public void set_width_chars (int n_chars);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Label.with_mnemonic (string str);
+               public double angle { get; set; }
+               public Pango.AttrList attributes { get; set; }
+               [NoAccessorMethod]
+               public int cursor_position { get; }
+               public Pango.EllipsizeMode ellipsize { get; set; }
+               public Gtk.Justification justify { get; set; }
+               public string label { get; set; }
+               public int max_width_chars { get; set; }
+               public uint mnemonic_keyval { get; }
+               public Gtk.Widget mnemonic_widget { get; set; }
+               public string pattern { set; }
+               public bool selectable { get; set; }
+               [NoAccessorMethod]
+               public int selection_bound { get; }
+               public bool single_line_mode { get; set; }
+               public bool track_visited_links { get; set; }
+               public bool use_markup { get; set; }
+               public bool use_underline { get; set; }
+               public int width_chars { get; set; }
+               [NoAccessorMethod]
+               public bool wrap { get; set; }
+               [NoAccessorMethod]
+               public Pango.WrapMode wrap_mode { get; set; }
+               public virtual signal void activate_current_link ();
+               public virtual signal bool activate_link (string uri);
+               public virtual signal void copy_clipboard ();
+               public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection);
+               public virtual signal void populate_popup (Gtk.Menu menu);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class LabelSelectionInfo {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Layout : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public weak Gdk.Window bin_window;
+               public weak GLib.List<Gtk.Widget> children;
+               public uint freeze_count;
+               public int scroll_x;
+               public int scroll_y;
+               public Gdk.VisibilityState visibility;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Layout (Gtk.Adjustment? hadjustment = null, Gtk.Adjustment? vadjustment = null);
+               public unowned Gdk.Window get_bin_window ();
+               public unowned Gtk.Adjustment get_hadjustment ();
+               public void get_size (out uint width, out uint height);
+               public unowned Gtk.Adjustment get_vadjustment ();
+               public void move (Gtk.Widget child_widget, int x, int y);
+               public void put (Gtk.Widget child_widget, int x, int y);
+               public void set_hadjustment (Gtk.Adjustment adjustment);
+               public void set_size (uint width, uint height);
+               public void set_vadjustment (Gtk.Adjustment adjustment);
+               public Gtk.Adjustment hadjustment { get; set; }
+               [NoAccessorMethod]
+               public uint height { get; set; }
+               public Gtk.Adjustment vadjustment { get; set; }
+               [NoAccessorMethod]
+               public uint width { get; set; }
+               public virtual signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class LinkButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public LinkButton (string uri);
+               public unowned string get_uri ();
+               public bool get_visited ();
+               public void set_uri (string uri);
+               public static void set_uri_hook (owned Gtk.LinkButtonUriFunc func);
+               public void set_visited (bool visited);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public LinkButton.with_label (string uri, string label);
+               public string uri { get; set; }
+               public bool visited { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ListStore : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource, Gtk.TreeDragDest, Gtk.TreeSortable, Gtk.Buildable {
+               [CCode (array_length = false)]
+               public weak GLib.Type[] column_headers;
+               public uint columns_dirty;
+               public void* default_sort_data;
+               public weak GLib.DestroyNotify default_sort_destroy;
+               public weak Gtk.TreeIterCompareFunc default_sort_func;
+               public int length;
+               public int n_columns;
+               public Gtk.SortType order;
+               public void* seq;
+               public int sort_column_id;
+               public weak GLib.List sort_list;
+               public int stamp;
+               [CCode (has_construct_function = false, sentinel = "")]
+               public ListStore (int n_columns, ...);
+               public void append (out Gtk.TreeIter iter);
+               public void clear ();
+               public void insert (out Gtk.TreeIter iter, int position);
+               public void insert_after (out Gtk.TreeIter iter, Gtk.TreeIter? sibling);
+               public void insert_before (out Gtk.TreeIter iter, Gtk.TreeIter? sibling);
+               [CCode (sentinel = "-1")]
+               public void insert_with_values (out Gtk.TreeIter iter, int position, ...);
+               public void insert_with_valuesv (out Gtk.TreeIter iter, int position, [CCode (array_length_pos = 4.1)] int[] columns, [CCode (array_length_pos = 4.1)] GLib.Value[] values);
+               public bool iter_is_valid (Gtk.TreeIter iter);
+               public void move_after (ref Gtk.TreeIter iter, Gtk.TreeIter? position);
+               public void move_before (ref Gtk.TreeIter iter, Gtk.TreeIter? position);
+               [CCode (cname = "gtk_list_store_newv", has_construct_function = false)]
+               public ListStore.newv ([CCode (array_length_pos = 0.9)] GLib.Type[] types);
+               public void prepend (out Gtk.TreeIter iter);
+               public bool remove (Gtk.TreeIter iter);
+               public void reorder ([CCode (array_length = false, array_null_terminated = true)] int[] new_order);
+               [CCode (sentinel = "-1")]
+               public void @set (Gtk.TreeIter iter, ...);
+               public void set_column_types ([CCode (array_length_pos = 0.9)] GLib.Type[] types);
+               public void set_valist (Gtk.TreeIter iter, va_list var_args);
+               public void set_value (Gtk.TreeIter iter, int column, GLib.Value value);
+               public void set_valuesv (Gtk.TreeIter iter, [CCode (array_length_pos = 3.1)] int[] columns, [CCode (array_length_pos = 3.1)] GLib.Value[] values);
+               public void swap (Gtk.TreeIter a, Gtk.TreeIter b);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Menu : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable {
+               public weak Gdk.Window bin_window;
+               public uint lower_arrow_prelight;
+               public uint lower_arrow_visible;
+               public weak Gdk.Region navigation_region;
+               public uint navigation_timeout;
+               public uint needs_destruction_ref_count;
+               public weak Gtk.Widget old_active_menu_item;
+               public weak Gtk.Widget parent_menu_item;
+               public weak Gtk.MenuPositionFunc position_func;
+               public void* position_func_data;
+               public int saved_scroll_offset;
+               public uint scroll_fast;
+               public int scroll_offset;
+               public int scroll_step;
+               public uint tearoff_active;
+               public weak Gtk.Adjustment tearoff_adjustment;
+               public weak Gtk.Widget tearoff_hbox;
+               public weak Gtk.Widget tearoff_scrollbar;
+               public weak Gtk.Widget tearoff_window;
+               public uint timeout_id;
+               public uint toggle_size;
+               public weak Gtk.Widget toplevel;
+               public uint torn_off;
+               public uint upper_arrow_prelight;
+               public uint upper_arrow_visible;
+               public weak Gdk.Window view_window;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Menu ();
+               public void attach (Gtk.Widget child, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach);
+               public void attach_to_widget (Gtk.Widget attach_widget, Gtk.MenuDetachFunc? detacher);
+               public void detach ();
+               public unowned Gtk.AccelGroup get_accel_group ();
+               public unowned string get_accel_path ();
+               public unowned Gtk.Widget get_active ();
+               public unowned Gtk.Widget get_attach_widget ();
+               public static unowned GLib.List<Gtk.Menu> get_for_attach_widget (Gtk.Widget widget);
+               public int get_monitor ();
+               public bool get_reserve_toggle_size ();
+               public bool get_tearoff_state ();
+               public unowned string get_title ();
+               public void popdown ();
+               public void popup (Gtk.Widget? parent_menu_shell, Gtk.Widget? parent_menu_item, Gtk.MenuPositionFunc? func, uint button, uint32 activate_time);
+               public void reorder_child (Gtk.Widget child, int position);
+               public void reposition ();
+               public void set_accel_group (Gtk.AccelGroup accel_group);
+               public void set_accel_path (string accel_path);
+               public void set_active (uint index_);
+               public void set_monitor (int monitor_num);
+               public void set_reserve_toggle_size (bool reserve_toggle_size);
+               public void set_screen (Gdk.Screen? screen);
+               public void set_tearoff_state (bool torn_off);
+               public void set_title (string title);
+               public Gtk.AccelGroup accel_group { get; set; }
+               public string accel_path { get; set; }
+               public int active { get; set; }
+               [NoAccessorMethod]
+               public Gtk.Widget attach_widget { owned get; set; }
+               public int monitor { get; set; }
+               public bool reserve_toggle_size { get; set; }
+               public bool tearoff_state { get; set; }
+               [NoAccessorMethod]
+               public string tearoff_title { owned get; set; }
+               public virtual signal void move_scroll (Gtk.ScrollType p0);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class MenuBar : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public MenuBar ();
+               public Gtk.PackDirection get_child_pack_direction ();
+               public Gtk.PackDirection get_pack_direction ();
+               public void set_child_pack_direction (Gtk.PackDirection child_pack_dir);
+               public void set_pack_direction (Gtk.PackDirection pack_dir);
+               public Gtk.PackDirection child_pack_direction { get; set; }
+               public Gtk.PackDirection pack_direction { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class MenuItem : Gtk.Item, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               public uint16 accelerator_width;
+               public weak Gdk.Window event_window;
+               public uint from_menubar;
+               public uint right_justify;
+               public uint show_submenu_indicator;
+               public uint submenu_direction;
+               public uint submenu_placement;
+               public uint timer;
+               public uint timer_from_keypress;
+               public uint16 toggle_size;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public MenuItem ();
+               public unowned string get_accel_path ();
+               public virtual unowned string get_label ();
+               public bool get_right_justified ();
+               public unowned Gtk.Widget get_submenu ();
+               public bool get_use_underline ();
+               public void set_accel_path (string accel_path);
+               public virtual void set_label (string label);
+               public void set_right_justified (bool right_justified);
+               public void set_submenu (Gtk.Widget submenu);
+               public void set_use_underline (bool setting);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public MenuItem.with_label (string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public MenuItem.with_mnemonic (string label);
+               public string accel_path { get; set; }
+               public string label { get; set; }
+               public bool right_justified { get; set; }
+               public Gtk.Menu submenu { get; set; }
+               public bool use_underline { get; set; }
+               [HasEmitter]
+               public virtual signal void activate ();
+               public virtual signal void activate_item ();
+               [HasEmitter]
+               public virtual signal void toggle_size_allocate (int allocation);
+               [HasEmitter]
+               public virtual signal void toggle_size_request (void* requisition);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public abstract class MenuShell : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public uint32 activate_time;
+               public uint active;
+               public weak Gtk.Widget active_menu_item;
+               public uint button;
+               public GLib.List<Gtk.MenuItem> children;
+               public uint have_grab;
+               public uint have_xgrab;
+               public uint ignore_enter;
+               public uint ignore_leave;
+               public uint keyboard_mode;
+               public uint menu_flag;
+               public weak Gtk.Widget parent_menu_shell;
+               [CCode (has_construct_function = false)]
+               protected MenuShell ();
+               public void activate_item (Gtk.Widget menu_item, bool force_deactivate);
+               public void append ([CCode (type = "GtkWidget*")] Gtk.MenuItem child);
+               public void deselect ();
+               [NoWrapper]
+               public virtual int get_popup_delay ();
+               public bool get_take_focus ();
+               public void prepend (Gtk.Widget child);
+               public void select_first (bool search_sensitive);
+               public virtual void select_item (Gtk.Widget menu_item);
+               public void set_take_focus (bool take_focus);
+               public bool take_focus { get; set; }
+               public virtual signal void activate_current (bool force_hide);
+               [HasEmitter]
+               public virtual signal void cancel ();
+               public virtual signal void cycle_focus (Gtk.DirectionType p0);
+               [HasEmitter]
+               public virtual signal void deactivate ();
+               [HasEmitter]
+               public virtual signal void insert (Gtk.Widget child, int position);
+               public virtual signal void move_current (Gtk.MenuDirectionType direction);
+               public virtual signal bool move_selected (int distance);
+               public virtual signal void selection_done ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class MenuToolButton : Gtk.ToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public MenuToolButton (Gtk.Widget? icon_widget, string? label);
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public MenuToolButton.from_stock (string stock_id);
+               public unowned Gtk.Widget get_menu ();
+               public void set_arrow_tooltip_markup (string markup);
+               public void set_arrow_tooltip_text (string text);
+               public void set_menu (Gtk.Widget menu);
+               public Gtk.Menu menu { get; set; }
+               public virtual signal void show_menu ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class MessageDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.Widget label;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               [PrintfFormat]
+               public MessageDialog (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...);
+               [PrintfFormat]
+               public void format_secondary_markup (string message_format, ...);
+               [PrintfFormat]
+               public void format_secondary_text (string message_format, ...);
+               public unowned Gtk.Widget get_image ();
+               public unowned Gtk.Widget get_message_area ();
+               public void set_image (Gtk.Widget image);
+               public void set_markup (string str);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               [PrintfFormat]
+               public MessageDialog.with_markup (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...);
+               [NoAccessorMethod]
+               public Gtk.ButtonsType buttons { construct; }
+               public Gtk.Widget image { get; set; }
+               public Gtk.Widget message_area { get; }
+               [NoAccessorMethod]
+               public Gtk.MessageType message_type { get; set construct; }
+               [NoAccessorMethod]
+               public string secondary_text { owned get; set; }
+               [NoAccessorMethod]
+               public bool secondary_use_markup { get; set; }
+               [NoAccessorMethod]
+               public string text { owned get; set; }
+               [NoAccessorMethod]
+               public bool use_markup { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Misc : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               protected Misc ();
+               public void get_alignment (float xalign, float yalign);
+               public void get_padding (int xpad, int ypad);
+               public void set_alignment (float xalign, float yalign);
+               public void set_padding (int xpad, int ypad);
+               [NoAccessorMethod]
+               public float xalign { get; set; }
+               [NoAccessorMethod]
+               public int xpad { get; set; }
+               [NoAccessorMethod]
+               public float yalign { get; set; }
+               [NoAccessorMethod]
+               public int ypad { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class MountOperation : GLib.MountOperation {
+               [CCode (has_construct_function = false, type = "GMountOperation*")]
+               public MountOperation (Gtk.Window? parent);
+               public unowned Gtk.Window get_parent ();
+               public unowned Gdk.Screen get_screen ();
+               public void set_parent (Gtk.Window parent);
+               public void set_screen (Gdk.Screen screen);
+               [NoAccessorMethod]
+               public bool is_showing { get; }
+               public Gtk.Window parent { get; set; }
+               public Gdk.Screen screen { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Notebook : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public uint button;
+               public uint child_has_focus;
+               public weak GLib.List children;
+               public uint click_child;
+               public weak Gtk.NotebookPage cur_page;
+               public weak Gdk.Window event_window;
+               public weak GLib.List first_tab;
+               public uint focus_out;
+               public uint has_after_next;
+               public uint has_after_previous;
+               public uint has_before_next;
+               public uint has_before_previous;
+               public uint have_visible_child;
+               public uint in_child;
+               public weak Gtk.Widget menu;
+               public uint need_timer;
+               public uint32 timer;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Notebook ();
+               public int append_page (Gtk.Widget child, Gtk.Widget? tab_label);
+               public int append_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label);
+               public unowned Gtk.Widget get_action_widget (Gtk.PackType pack_type);
+               public int get_current_page ();
+               public void* get_group ();
+               public unowned string get_group_name ();
+               public unowned Gtk.Widget get_menu_label (Gtk.Widget child);
+               public unowned string get_menu_label_text (Gtk.Widget child);
+               public int get_n_pages ();
+               public unowned Gtk.Widget get_nth_page (int page_num);
+               public bool get_scrollable ();
+               public bool get_show_border ();
+               public bool get_show_tabs ();
+               public bool get_tab_detachable (Gtk.Widget child);
+               public uint16 get_tab_hborder ();
+               public unowned Gtk.Widget get_tab_label (Gtk.Widget child);
+               public unowned string get_tab_label_text (Gtk.Widget child);
+               public Gtk.PositionType get_tab_pos ();
+               public bool get_tab_reorderable (Gtk.Widget child);
+               public uint16 get_tab_vborder ();
+               public int insert_page (Gtk.Widget child, Gtk.Widget? tab_label, int position);
+               [CCode (vfunc_name = "insert_page")]
+               public virtual int insert_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label, int position);
+               public void next_page ();
+               public int page_num (Gtk.Widget child);
+               public void popup_disable ();
+               public void popup_enable ();
+               public int prepend_page (Gtk.Widget child, Gtk.Widget? tab_label);
+               public int prepend_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label);
+               public void prev_page ();
+               public void query_tab_label_packing (Gtk.Widget child, bool? expand, bool? fill, Gtk.PackType? pack_type);
+               public void remove_page (int page_num);
+               public void reorder_child (Gtk.Widget child, int position);
+               public void set_action_widget (Gtk.Widget widget, Gtk.PackType pack_type);
+               public void set_current_page (int page_num);
+               public void set_group (void* group);
+               public void set_group_name (string group_name);
+               public void set_menu_label (Gtk.Widget child, Gtk.Widget? menu_label);
+               public void set_menu_label_text (Gtk.Widget child, string menu_text);
+               public void set_scrollable (bool scrollable);
+               public void set_show_border (bool show_border);
+               public void set_show_tabs (bool show_tabs);
+               public void set_tab_detachable (Gtk.Widget child, bool detachable);
+               public void set_tab_label (Gtk.Widget child, Gtk.Widget? tab_label);
+               public void set_tab_label_packing (Gtk.Widget child, bool expand, bool fill, Gtk.PackType pack_type);
+               public void set_tab_label_text (Gtk.Widget child, string tab_text);
+               public void set_tab_pos (Gtk.PositionType pos);
+               public void set_tab_reorderable (Gtk.Widget child, bool reorderable);
+               public static void set_window_creation_hook (owned Gtk.NotebookWindowCreationFunc func);
+               [NoAccessorMethod]
+               public bool enable_popup { get; set; }
+               [NoAccessorMethod]
+               public void* group { get; set; }
+               [NoAccessorMethod]
+               public int group_id { get; set; }
+               public string group_name { get; set; }
+               [NoAccessorMethod]
+               public bool homogeneous { get; set; }
+               [NoAccessorMethod]
+               public int page { get; set; }
+               public bool scrollable { get; set; }
+               public bool show_border { get; set; }
+               public bool show_tabs { get; set; }
+               [NoAccessorMethod]
+               public uint tab_border { set; }
+               [NoAccessorMethod]
+               public uint tab_hborder { get; set; }
+               public Gtk.PositionType tab_pos { get; set; }
+               [NoAccessorMethod]
+               public uint tab_vborder { get; set; }
+               public virtual signal bool change_current_page (int offset);
+               public virtual signal unowned Gtk.Notebook create_window (Gtk.Widget page, int x, int y);
+               public virtual signal bool focus_tab (Gtk.NotebookTab type);
+               public virtual signal void move_focus_out (Gtk.DirectionType direction);
+               public virtual signal void page_added (Gtk.Widget p0, uint p1);
+               public virtual signal void page_removed (Gtk.Widget p0, uint p1);
+               public virtual signal void page_reordered (Gtk.Widget p0, uint p1);
+               public virtual signal bool reorder_tab (Gtk.DirectionType direction, bool move_to_last);
+               public virtual signal bool select_page (bool move_focus);
+               public virtual signal void switch_page (Gtk.NotebookPage page, uint page_num);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class NotebookPage {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Object : GLib.InitiallyUnowned {
+               public uint32 flags;
+               [CCode (has_construct_function = false)]
+               protected Object ();
+               [NoWrapper]
+               public virtual void get_arg (Gtk.Arg arg, uint arg_id);
+               [NoWrapper]
+               public virtual void set_arg (Gtk.Arg arg, uint arg_id);
+               [NoAccessorMethod]
+               public void* user_data { get; set; }
+               [HasEmitter]
+               public virtual signal void destroy ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class OffscreenWindow : Gtk.Window, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public OffscreenWindow ();
+               public Gdk.Pixbuf get_pixbuf ();
+               public unowned Gdk.Pixmap get_pixmap ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class PageSetup : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public PageSetup ();
+               public Gtk.PageSetup copy ();
+               [CCode (has_construct_function = false)]
+               public PageSetup.from_file (string file_name) throws GLib.Error;
+               [CCode (has_construct_function = false)]
+               public PageSetup.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error;
+               public double get_bottom_margin (Gtk.Unit unit);
+               public double get_left_margin (Gtk.Unit unit);
+               public Gtk.PageOrientation get_orientation ();
+               public double get_page_height (Gtk.Unit unit);
+               public double get_page_width (Gtk.Unit unit);
+               public double get_paper_height (Gtk.Unit unit);
+               public unowned Gtk.PaperSize get_paper_size ();
+               public double get_paper_width (Gtk.Unit unit);
+               public double get_right_margin (Gtk.Unit unit);
+               public double get_top_margin (Gtk.Unit unit);
+               public bool load_file (string file_name) throws GLib.Error;
+               public bool load_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error;
+               public void set_bottom_margin (double margin, Gtk.Unit unit);
+               public void set_left_margin (double margin, Gtk.Unit unit);
+               public void set_orientation (Gtk.PageOrientation orientation);
+               public void set_paper_size (Gtk.PaperSize size);
+               public void set_paper_size_and_default_margins (Gtk.PaperSize size);
+               public void set_right_margin (double margin, Gtk.Unit unit);
+               public void set_top_margin (double margin, Gtk.Unit unit);
+               public bool to_file (string file_name) throws GLib.Error;
+               public void to_key_file (GLib.KeyFile key_file, string group_name);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Paned : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public weak Gtk.Widget child1;
+               public uint child1_resize;
+               public uint child1_shrink;
+               public int child1_size;
+               public weak Gtk.Widget child2;
+               public uint child2_resize;
+               public uint child2_shrink;
+               public Gdk.CursorType cursor_type;
+               public int drag_pos;
+               public weak Gdk.Window handle;
+               public Gdk.Rectangle handle_pos;
+               public uint handle_prelit;
+               public uint in_drag;
+               public uint in_recursion;
+               public int last_allocation;
+               public weak Gtk.Widget last_child1_focus;
+               public weak Gtk.Widget last_child2_focus;
+               public uint orientation;
+               public int original_position;
+               public weak Gdk.GC xor_gc;
+               [CCode (has_construct_function = false)]
+               protected Paned ();
+               public void add1 (Gtk.Widget child);
+               public void add2 (Gtk.Widget child);
+               public unowned Gtk.Widget get_child1 ();
+               public unowned Gtk.Widget get_child2 ();
+               public unowned Gdk.Window get_handle_window ();
+               public int get_position ();
+               public void pack1 (Gtk.Widget child, bool resize, bool shrink);
+               public void pack2 (Gtk.Widget child, bool resize, bool shrink);
+               public void set_position (int position);
+               [NoAccessorMethod]
+               public int max_position { get; }
+               [NoAccessorMethod]
+               public int min_position { get; }
+               public int position { get; set; }
+               [NoAccessorMethod]
+               public bool position_set { get; set; }
+               public virtual signal bool accept_position ();
+               public virtual signal bool cancel_position ();
+               public virtual signal bool cycle_child_focus (bool reverse);
+               public virtual signal bool cycle_handle_focus (bool reverse);
+               public virtual signal bool move_handle (Gtk.ScrollType scroll);
+               public virtual signal bool toggle_handle_focus ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_paper_size_copy", type_id = "gtk_paper_size_get_type ()")]
+       [Compact]
+       public class PaperSize {
+               [CCode (has_construct_function = false)]
+               public PaperSize (string name);
+               public Gtk.PaperSize copy ();
+               [CCode (has_construct_function = false)]
+               public PaperSize.custom (string name, string display_name, double width, double height, Gtk.Unit unit);
+               [CCode (has_construct_function = false)]
+               public PaperSize.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error;
+               [CCode (has_construct_function = false)]
+               public PaperSize.from_ppd (string ppd_name, string ppd_display_name, double width, double height);
+               public static unowned string get_default ();
+               public double get_default_bottom_margin (Gtk.Unit unit);
+               public double get_default_left_margin (Gtk.Unit unit);
+               public double get_default_right_margin (Gtk.Unit unit);
+               public double get_default_top_margin (Gtk.Unit unit);
+               public unowned string get_display_name ();
+               public double get_height (Gtk.Unit unit);
+               public unowned string get_name ();
+               public static GLib.List<Gtk.PaperSize> get_paper_sizes (bool include_custom);
+               public unowned string get_ppd_name ();
+               public double get_width (Gtk.Unit unit);
+               public bool is_custom ();
+               public bool is_equal (Gtk.PaperSize size2);
+               public void set_size (double width, double height, Gtk.Unit unit);
+               public void to_key_file (GLib.KeyFile key_file, string group_name);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Plug : Gtk.Window, Atk.Implementor, Gtk.Buildable {
+               public weak GLib.HashTable grabbed_keys;
+               public weak Gtk.WindowGroup modality_group;
+               public weak Gtk.Widget modality_window;
+               public uint same_app;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Plug (Gdk.NativeWindow socket_id);
+               public void @construct (Gdk.NativeWindow socket_id);
+               public void construct_for_display (Gdk.Display display, Gdk.NativeWindow socket_id);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Plug.for_display (Gdk.Display display, Gdk.NativeWindow socket_id);
+               public bool get_embedded ();
+               public Gdk.NativeWindow get_id ();
+               public unowned Gdk.Window get_socket_window ();
+               public bool embedded { get; }
+               public Gdk.Window socket_window { get; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class PrintContext : GLib.Object {
+               [CCode (has_construct_function = false)]
+               protected PrintContext ();
+               public Pango.Context create_pango_context ();
+               public Pango.Layout create_pango_layout ();
+               public unowned Cairo.Context get_cairo_context ();
+               public double get_dpi_x ();
+               public double get_dpi_y ();
+               public bool get_hard_margins (out double top, out double bottom, out double left, out double right);
+               public double get_height ();
+               public unowned Gtk.PageSetup get_page_setup ();
+               public unowned Pango.FontMap get_pango_fontmap ();
+               public double get_width ();
+               public void set_cairo_context (Cairo.Context cr, double dpi_x, double dpi_y);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class PrintOperation : GLib.Object, Gtk.PrintOperationPreview {
+               [CCode (has_construct_function = false)]
+               public PrintOperation ();
+               public void cancel ();
+               public void draw_page_finish ();
+               public unowned Gtk.PageSetup get_default_page_setup ();
+               public bool get_embed_page_setup ();
+               public void get_error () throws GLib.Error;
+               public bool get_has_selection ();
+               public int get_n_pages_to_print ();
+               public unowned Gtk.PrintSettings get_print_settings ();
+               public Gtk.PrintStatus get_status ();
+               public unowned string get_status_string ();
+               public bool get_support_selection ();
+               public bool is_finished ();
+               public Gtk.PrintOperationResult run (Gtk.PrintOperationAction action, Gtk.Window parent) throws GLib.Error;
+               public void set_allow_async (bool allow_async);
+               public void set_current_page (int current_page);
+               public void set_custom_tab_label (string label);
+               public void set_default_page_setup (Gtk.PageSetup default_page_setup);
+               public void set_defer_drawing ();
+               public void set_embed_page_setup (bool embed);
+               public void set_export_filename (string filename);
+               public void set_has_selection (bool has_selection);
+               public void set_job_name (string job_name);
+               public void set_n_pages (int n_pages);
+               public void set_print_settings (Gtk.PrintSettings print_settings);
+               public void set_show_progress (bool show_progress);
+               public void set_support_selection (bool support_selection);
+               public void set_track_print_status (bool track_status);
+               public void set_unit (Gtk.Unit unit);
+               public void set_use_full_page (bool full_page);
+               [NoAccessorMethod]
+               public bool allow_async { get; set; }
+               [NoAccessorMethod]
+               public int current_page { get; set; }
+               [NoAccessorMethod]
+               public string custom_tab_label { owned get; set; }
+               public Gtk.PageSetup default_page_setup { get; set; }
+               public bool embed_page_setup { get; set; }
+               [NoAccessorMethod]
+               public string export_filename { owned get; set; }
+               public bool has_selection { get; set; }
+               [NoAccessorMethod]
+               public string job_name { owned get; set; }
+               [NoAccessorMethod]
+               public int n_pages { get; set; }
+               public int n_pages_to_print { get; }
+               public Gtk.PrintSettings print_settings { get; set; }
+               [NoAccessorMethod]
+               public bool show_progress { get; set; }
+               public Gtk.PrintStatus status { get; }
+               public string status_string { get; }
+               public bool support_selection { get; set; }
+               [NoAccessorMethod]
+               public bool track_print_status { get; set; }
+               [NoAccessorMethod]
+               public Gtk.Unit unit { get; set; }
+               [NoAccessorMethod]
+               public bool use_full_page { get; set; }
+               public virtual signal void begin_print (Gtk.PrintContext context);
+               public virtual signal unowned GLib.Object create_custom_widget ();
+               public virtual signal void custom_widget_apply (Gtk.Widget widget);
+               public virtual signal void done (Gtk.PrintOperationResult result);
+               public virtual signal void draw_page (Gtk.PrintContext context, int page_nr);
+               public virtual signal void end_print (Gtk.PrintContext context);
+               public virtual signal bool paginate (Gtk.PrintContext context);
+               public virtual signal bool preview (Gtk.PrintOperationPreview preview, Gtk.PrintContext context, Gtk.Window parent);
+               public virtual signal void request_page_setup (Gtk.PrintContext context, int page_nr, Gtk.PageSetup setup);
+               public virtual signal void status_changed ();
+               public virtual signal void update_custom_widget (Gtk.Widget widget, Gtk.PageSetup setup, Gtk.PrintSettings settings);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class PrintSettings : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public PrintSettings ();
+               public Gtk.PrintSettings copy ();
+               public void @foreach (Gtk.PrintSettingsFunc func);
+               [CCode (has_construct_function = false)]
+               public PrintSettings.from_file (string file_name) throws GLib.Error;
+               [CCode (has_construct_function = false)]
+               public PrintSettings.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error;
+               public unowned string @get (string key);
+               public bool get_bool (string key);
+               public bool get_collate ();
+               public unowned string get_default_source ();
+               public unowned string get_dither ();
+               public double get_double (string key);
+               public double get_double_with_default (string key, double def);
+               public Gtk.PrintDuplex get_duplex ();
+               public unowned string get_finishings ();
+               public int get_int (string key);
+               public int get_int_with_default (string key, int def);
+               public double get_length (string key, Gtk.Unit unit);
+               public unowned string get_media_type ();
+               public int get_n_copies ();
+               public int get_number_up ();
+               public Gtk.NumberUpLayout get_number_up_layout ();
+               public Gtk.PageOrientation get_orientation ();
+               public unowned string get_output_bin ();
+               public Gtk.PageRange[] get_page_ranges ();
+               public Gtk.PageSet get_page_set ();
+               public double get_paper_height (Gtk.Unit unit);
+               public Gtk.PaperSize get_paper_size ();
+               public double get_paper_width (Gtk.Unit unit);
+               public Gtk.PrintPages get_print_pages ();
+               public unowned string get_printer ();
+               public double get_printer_lpi ();
+               public Gtk.PrintQuality get_quality ();
+               public int get_resolution ();
+               public int get_resolution_x ();
+               public int get_resolution_y ();
+               public bool get_reverse ();
+               public double get_scale ();
+               public bool get_use_color ();
+               public bool has_key (string key);
+               public bool load_file (string file_name) throws GLib.Error;
+               public bool load_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error;
+               public void @set (string key, string value);
+               public void set_bool (string key, bool value);
+               public void set_collate (bool collate);
+               public void set_default_source (string default_source);
+               public void set_dither (string dither);
+               public void set_double (string key, double value);
+               public void set_duplex (Gtk.PrintDuplex duplex);
+               public void set_finishings (string finishings);
+               public void set_int (string key, int value);
+               public void set_length (string key, double value, Gtk.Unit unit);
+               public void set_media_type (string media_type);
+               public void set_n_copies (int num_copies);
+               public void set_number_up (int number_up);
+               public void set_number_up_layout (Gtk.NumberUpLayout number_up_layout);
+               public void set_orientation (Gtk.PageOrientation orientation);
+               public void set_output_bin (string output_bin);
+               public void set_page_ranges ([CCode (array_length_pos = 1.1)] Gtk.PageRange[] page_ranges);
+               public void set_page_set (Gtk.PageSet page_set);
+               public void set_paper_height (double height, Gtk.Unit unit);
+               public void set_paper_size (Gtk.PaperSize paper_size);
+               public void set_paper_width (double width, Gtk.Unit unit);
+               public void set_print_pages (Gtk.PrintPages pages);
+               public void set_printer (string printer);
+               public void set_printer_lpi (double lpi);
+               public void set_quality (Gtk.PrintQuality quality);
+               public void set_resolution (int resolution);
+               public void set_resolution_xy (int resolution_x, int resolution_y);
+               public void set_reverse (bool reverse);
+               public void set_scale (double scale);
+               public void set_use_color (bool use_color);
+               public bool to_file (string file_name) throws GLib.Error;
+               public void to_key_file (GLib.KeyFile key_file, string group_name);
+               public void unset (string key);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ProgressBar : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+               public uint activity_dir;
+               public int activity_pos;
+               public uint blocks;
+               public uint dirty;
+               public int in_block;
+               public double pulse_fraction;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ProgressBar ();
+               public Pango.EllipsizeMode get_ellipsize ();
+               public double get_fraction ();
+               public Gtk.ProgressBarOrientation get_orientation ();
+               public double get_pulse_step ();
+               public unowned string get_text ();
+               public void pulse ();
+               public void set_ellipsize (Pango.EllipsizeMode mode);
+               public void set_fraction (double fraction);
+               public void set_orientation (Gtk.ProgressBarOrientation orientation);
+               public void set_pulse_step (double fraction);
+               public void set_text (string text);
+               [NoAccessorMethod]
+               public uint activity_blocks { get; set; }
+               [NoAccessorMethod]
+               public uint activity_step { get; set; }
+               [NoAccessorMethod]
+               public Gtk.Adjustment adjustment { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.ProgressBarStyle bar_style { get; set; }
+               [NoAccessorMethod]
+               public uint discrete_blocks { get; set; }
+               public Pango.EllipsizeMode ellipsize { get; set; }
+               public double fraction { get; set; }
+               public Gtk.ProgressBarOrientation orientation { get; set; }
+               public double pulse_step { get; set; }
+               public string text { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RadioAction : Gtk.ToggleAction, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               public RadioAction (string name, string? label, string? tooltip, string? stock_id, int value);
+               public int get_current_value ();
+               public unowned GLib.SList<Gtk.RadioAction> get_group ();
+               public void set_current_value (int current_value);
+               public void set_group (GLib.SList<Gtk.RadioAction> group);
+               public int current_value { get; set; }
+               [NoAccessorMethod]
+               public Gtk.RadioAction group { set; }
+               [NoAccessorMethod]
+               public int value { get; set; }
+               public virtual signal void changed (Gtk.RadioAction current);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RadioButton : Gtk.CheckButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioButton (GLib.SList<Gtk.RadioButton>? group);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioButton.from_widget (Gtk.RadioButton? radio_group_member);
+               public unowned GLib.SList<Gtk.RadioButton> get_group ();
+               public void set_group (GLib.SList<Gtk.RadioButton> group);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioButton.with_label (GLib.SList<Gtk.RadioButton>? group, string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioButton.with_label_from_widget (Gtk.RadioButton? radio_group_member, string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioButton.with_mnemonic (GLib.SList<Gtk.RadioButton>? group, string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioButton.with_mnemonic_from_widget (Gtk.RadioButton? radio_group_member, string label);
+               [NoAccessorMethod]
+               public Gtk.RadioButton group { set; }
+               public virtual signal void group_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RadioMenuItem : Gtk.CheckMenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioMenuItem (GLib.SList<Gtk.RadioMenuItem>? group);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioMenuItem.from_widget (Gtk.RadioMenuItem group);
+               public unowned GLib.SList<Gtk.RadioMenuItem>? get_group ();
+               public void set_group (GLib.SList<Gtk.RadioMenuItem>? group);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioMenuItem.with_label (GLib.SList<Gtk.RadioMenuItem>? group, string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioMenuItem.with_label_from_widget (Gtk.RadioMenuItem group, string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioMenuItem.with_mnemonic (GLib.SList<Gtk.RadioMenuItem>? group, string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RadioMenuItem.with_mnemonic_from_widget (Gtk.RadioMenuItem group, string label);
+               public Gtk.RadioMenuItem group { set; }
+               public virtual signal void group_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RadioToolButton : Gtk.ToggleToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public RadioToolButton (GLib.SList<Gtk.RadioToolButton>? group);
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public RadioToolButton.from_stock (GLib.SList<Gtk.RadioToolButton>? group, string stock_id);
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public RadioToolButton.from_widget (Gtk.RadioToolButton group);
+               public unowned GLib.SList<Gtk.RadioToolButton> get_group ();
+               public void set_group (GLib.SList<Gtk.RadioToolButton> group);
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public RadioToolButton.with_stock_from_widget (Gtk.RadioToolButton group, string stock_id);
+               public Gtk.RadioToolButton group { set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Range : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public weak Gdk.Window event_window;
+               public uint flippable;
+               public uint has_stepper_a;
+               public uint has_stepper_b;
+               public uint has_stepper_c;
+               public uint has_stepper_d;
+               public weak Gtk.RangeLayout layout;
+               public int min_slider_size;
+               public uint need_recalc;
+               public Gtk.Orientation orientation;
+               public Gdk.Rectangle range_rect;
+               public int slide_initial_coordinate;
+               public int slide_initial_slider_position;
+               public int slider_end;
+               public uint slider_size_fixed;
+               public int slider_start;
+               public weak Gtk.RangeStepTimer timer;
+               public uint trough_click_forward;
+               public uint update_pending;
+               public uint update_timeout_id;
+               [CCode (has_construct_function = false)]
+               protected Range ();
+               public unowned Gtk.Adjustment get_adjustment ();
+               public double get_fill_level ();
+               public bool get_flippable ();
+               public bool get_inverted ();
+               public Gtk.SensitivityType get_lower_stepper_sensitivity ();
+               public int get_min_slider_size ();
+               [NoWrapper]
+               public virtual void get_range_border (Gtk.Border border_);
+               public void get_range_rect (Gdk.Rectangle range_rect);
+               public bool get_restrict_to_fill_level ();
+               public int get_round_digits ();
+               public bool get_show_fill_level ();
+               public void get_slider_range (out int slider_start, out int slider_end);
+               public bool get_slider_size_fixed ();
+               public Gtk.UpdateType get_update_policy ();
+               public Gtk.SensitivityType get_upper_stepper_sensitivity ();
+               public double get_value ();
+               public void set_adjustment (Gtk.Adjustment adjustment);
+               public void set_fill_level (double fill_level);
+               public void set_flippable (bool flippable);
+               public void set_increments (double step, double page);
+               public void set_inverted (bool setting);
+               public void set_lower_stepper_sensitivity (Gtk.SensitivityType sensitivity);
+               public void set_min_slider_size (bool min_size);
+               public void set_range (double min, double max);
+               public void set_restrict_to_fill_level (bool restrict_to_fill_level);
+               public void set_round_digits (int round_digits);
+               public void set_show_fill_level (bool show_fill_level);
+               public void set_slider_size_fixed (bool size_fixed);
+               public void set_update_policy (Gtk.UpdateType policy);
+               public void set_upper_stepper_sensitivity (Gtk.SensitivityType sensitivity);
+               public void set_value (double value);
+               public Gtk.Adjustment adjustment { get; set construct; }
+               public double fill_level { get; set; }
+               public bool inverted { get; set; }
+               public Gtk.SensitivityType lower_stepper_sensitivity { get; set; }
+               public bool restrict_to_fill_level { get; set; }
+               public int round_digits { get; set; }
+               public bool show_fill_level { get; set; }
+               [NoAccessorMethod]
+               public Gtk.UpdateType update_policy { get; set; }
+               public Gtk.SensitivityType upper_stepper_sensitivity { get; set; }
+               public virtual signal void adjust_bounds (double new_value);
+               public virtual signal bool change_value (Gtk.ScrollType scroll, double new_value);
+               public virtual signal void move_slider (Gtk.ScrollType scroll);
+               public virtual signal void value_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class RangeLayout {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class RangeStepTimer {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class RcContext {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class RcProperty {
+               public weak string origin;
+               public GLib.Quark property_name;
+               public GLib.Quark type_name;
+               public GLib.Value value;
+               public static bool parse_border (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value);
+               public static bool parse_color (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value);
+               public static bool parse_enum (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value);
+               public static bool parse_flags (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value);
+               public static bool parse_requisition (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RcStyle : GLib.Object {
+               [CCode (array_length = false)]
+               public weak Gdk.Color[] @base;
+               [CCode (array_length = false)]
+               public weak Gdk.Color[] bg;
+               [CCode (array_length = false)]
+               public weak string[] bg_pixmap_name;
+               [CCode (array_length = false)]
+               public weak Gtk.RcFlags[] color_flags;
+               public uint engine_specified;
+               [CCode (array_length = false)]
+               public weak Gdk.Color[] fg;
+               public weak Pango.FontDescription font_desc;
+               public weak GLib.SList icon_factories;
+               public weak string name;
+               public weak GLib.Array rc_properties;
+               public weak GLib.SList rc_style_lists;
+               [CCode (array_length = false)]
+               public weak Gdk.Color[] text;
+               public int xthickness;
+               public int ythickness;
+               [CCode (has_construct_function = false)]
+               public RcStyle ();
+               public Gtk.RcStyle copy ();
+               [NoWrapper]
+               public virtual unowned Gtk.RcStyle create_rc_style ();
+               [NoWrapper]
+               public virtual Gtk.Style create_style ();
+               [NoWrapper]
+               public virtual void merge (Gtk.RcStyle src);
+               [NoWrapper]
+               public virtual uint parse (Gtk.Settings settings, GLib.Scanner scanner);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RecentAction : Gtk.Action, Gtk.Buildable, Gtk.RecentChooser {
+               [CCode (has_construct_function = false, type = "GtkAction*")]
+               public RecentAction (string name, string label, string tooltip, string stock_id);
+               [CCode (has_construct_function = false, type = "GtkAction*")]
+               public RecentAction.for_manager (string name, string label, string tooltip, string stock_id, Gtk.RecentManager manager);
+               public bool get_show_numbers ();
+               public void set_show_numbers (bool show_numbers);
+               public bool show_numbers { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RecentChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.RecentChooser {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RecentChooserDialog (string title, Gtk.Window parent, ...);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RecentChooserDialog.for_manager (string title, Gtk.Window parent, Gtk.RecentManager manager, ...);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RecentChooserMenu : Gtk.Menu, Atk.Implementor, Gtk.Buildable, Gtk.RecentChooser, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RecentChooserMenu ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RecentChooserMenu.for_manager (Gtk.RecentManager manager);
+               public bool get_show_numbers ();
+               public void set_show_numbers (bool show_numbers);
+               public bool show_numbers { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RecentChooserWidget : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.RecentChooser {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RecentChooserWidget ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public RecentChooserWidget.for_manager (Gtk.RecentManager manager);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RecentFilter : Gtk.Object {
+               [CCode (has_construct_function = false)]
+               public RecentFilter ();
+               public void add_age (int days);
+               public void add_application (string application);
+               public void add_custom (Gtk.RecentFilterFlags needed, owned Gtk.RecentFilterFunc func);
+               public void add_group (string group);
+               public void add_mime_type (string mime_type);
+               public void add_pattern (string pattern);
+               public void add_pixbuf_formats ();
+               public bool filter (Gtk.RecentFilterInfo filter_info);
+               public unowned string get_name ();
+               public Gtk.RecentFilterFlags get_needed ();
+               public void set_name (string name);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_recent_info_ref", type_id = "gtk_recent_info_get_type ()", unref_function = "gtk_recent_info_unref")]
+       [Compact]
+       public class RecentInfo {
+               public bool exists ();
+               public ulong get_added ();
+               public int get_age ();
+               public bool get_application_info (string app_name, out unowned string app_exec, out uint count, out ulong time_);
+               [CCode (array_length_type = "gsize")]
+               public string[] get_applications ();
+               public unowned string get_description ();
+               public unowned string get_display_name ();
+               [CCode (array_length_type = "gsize")]
+               public string[] get_groups ();
+               public Gdk.Pixbuf? get_icon (int size);
+               public unowned string get_mime_type ();
+               public ulong get_modified ();
+               public bool get_private_hint ();
+               public string get_short_name ();
+               public unowned string get_uri ();
+               public string? get_uri_display ();
+               public ulong get_visited ();
+               public bool has_application (string app_name);
+               public bool has_group (string group_name);
+               public bool is_local ();
+               public string last_application ();
+               public bool match (Gtk.RecentInfo info_b);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class RecentManager : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public RecentManager ();
+               public bool add_full (string uri, Gtk.RecentData recent_data);
+               public bool add_item (string uri);
+               public static GLib.Quark error_quark ();
+               public static unowned Gtk.RecentManager get_default ();
+               public GLib.List<Gtk.RecentInfo> get_items ();
+               public int get_limit ();
+               public bool has_item (string uri);
+               public Gtk.RecentInfo lookup_item (string uri) throws GLib.Error;
+               public bool move_item (string uri, string new_uri) throws GLib.Error;
+               public int purge_items () throws GLib.Error;
+               public bool remove_item (string uri) throws GLib.Error;
+               public void set_limit (int limit);
+               [NoAccessorMethod]
+               public string filename { owned get; construct; }
+               public int limit { get; set; }
+               [NoAccessorMethod]
+               public int size { get; }
+               public virtual signal void changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Ruler : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public weak Gdk.Pixmap backing_store;
+               public weak Gdk.GC non_gr_exp_gc;
+               public int slider_size;
+               public int xsrc;
+               public int ysrc;
+               [CCode (has_construct_function = false)]
+               protected Ruler ();
+               public virtual void draw_pos ();
+               public virtual void draw_ticks ();
+               public Gtk.MetricType get_metric ();
+               public void get_range (double lower, double upper, double position, double max_size);
+               public void set_metric (Gtk.MetricType metric);
+               public void set_range (double lower, double upper, double position, double max_size);
+               [NoAccessorMethod]
+               public double lower { get; set; }
+               [NoAccessorMethod]
+               public double max_size { get; set; }
+               public Gtk.MetricType metric { get; set; }
+               [NoAccessorMethod]
+               public double position { get; set; }
+               [NoAccessorMethod]
+               public double upper { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class RulerMetric {
+               public weak string abbrev;
+               public weak string metric_name;
+               public double pixels_per_unit;
+               [CCode (array_length = false)]
+               public weak double[] ruler_scale;
+               [CCode (array_length = false)]
+               public weak int[] subdivide;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Scale : Gtk.Range, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false)]
+               protected Scale ();
+               public void add_mark (double value, Gtk.PositionType position, string? markup);
+               public void clear_marks ();
+               public int get_digits ();
+               public bool get_draw_value ();
+               public unowned Pango.Layout get_layout ();
+               public virtual void get_layout_offsets (out int x, out int y);
+               public Gtk.PositionType get_value_pos ();
+               public void set_digits (int digits);
+               public void set_draw_value (bool draw_value);
+               public void set_value_pos (Gtk.PositionType pos);
+               public int digits { get; set; }
+               public bool draw_value { get; set; }
+               public Gtk.PositionType value_pos { get; set; }
+               public virtual signal string format_value (double value);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ScaleButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Orientable {
+               public weak Gtk.Widget minus_button;
+               public weak Gtk.Widget plus_button;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ScaleButton (Gtk.IconSize size, double min = 0.0, double max = 100.0, double step = 2.0, [CCode (array_length = false, array_null_terminated = true)] string[]? icons = null);
+               public unowned Gtk.Adjustment get_adjustment ();
+               public unowned Gtk.Widget get_minus_button ();
+               public unowned Gtk.Widget get_plus_button ();
+               public unowned Gtk.Widget get_popup ();
+               public double get_value ();
+               public void set_adjustment (Gtk.Adjustment adjustment);
+               public void set_icons ([CCode (array_length = false, array_null_terminated = true)] string[] icons);
+               public void set_value (double value);
+               public Gtk.Adjustment adjustment { get; set; }
+               [CCode (array_length = false, array_null_terminated = true)]
+               [NoAccessorMethod]
+               public string[] icons { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.IconSize size { get; set; }
+               public double value { get; set; }
+               public virtual signal void popdown ();
+               public virtual signal void popup ();
+               public virtual signal void value_changed (double value);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Scrollbar : Gtk.Range, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false)]
+               protected Scrollbar ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ScrolledWindow : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               public uint focus_out;
+               public weak Gtk.Widget hscrollbar;
+               public uint hscrollbar_visible;
+               public weak Gtk.Widget vscrollbar;
+               public uint vscrollbar_visible;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ScrolledWindow (Gtk.Adjustment? hadjustment, Gtk.Adjustment? vadjustment);
+               public void add_with_viewport (Gtk.Widget child);
+               public unowned Gtk.Adjustment get_hadjustment ();
+               public unowned Gtk.Widget get_hscrollbar ();
+               public Gtk.CornerType get_placement ();
+               public void get_policy (out Gtk.PolicyType hscrollbar_policy, out Gtk.PolicyType vscrollbar_policy);
+               public Gtk.ShadowType get_shadow_type ();
+               public unowned Gtk.Adjustment get_vadjustment ();
+               public unowned Gtk.Widget get_vscrollbar ();
+               public void set_hadjustment (Gtk.Adjustment hadjustment);
+               public void set_placement (Gtk.CornerType window_placement);
+               public void set_policy (Gtk.PolicyType hscrollbar_policy, Gtk.PolicyType vscrollbar_policy);
+               public void set_shadow_type (Gtk.ShadowType type);
+               public void set_vadjustment (Gtk.Adjustment vadjustment);
+               public void unset_placement ();
+               public Gtk.Adjustment hadjustment { get; set construct; }
+               [NoAccessorMethod]
+               public Gtk.PolicyType hscrollbar_policy { get; set; }
+               public Gtk.ShadowType shadow_type { get; set; }
+               public Gtk.Adjustment vadjustment { get; set construct; }
+               [NoAccessorMethod]
+               public Gtk.PolicyType vscrollbar_policy { get; set; }
+               [NoAccessorMethod]
+               public Gtk.CornerType window_placement { get; set; }
+               [NoAccessorMethod]
+               public bool window_placement_set { get; set; }
+               public virtual signal void move_focus_out (Gtk.DirectionType direction);
+               public virtual signal bool scroll_child (Gtk.ScrollType scroll, bool horizontal);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_selection_data_copy", type_id = "gtk_selection_data_get_type ()")]
+       [Compact]
+       public class SelectionData {
+               [CCode (array_length = false)]
+               public weak uchar[] data;
+               public weak Gdk.Display display;
+               public int format;
+               public int length;
+               public Gdk.Atom selection;
+               public Gdk.Atom target;
+               public Gdk.Atom type;
+               public Gtk.SelectionData copy ();
+               [CCode (array_length = false)]
+               public unowned uchar[] get_data ();
+               public Gdk.Atom get_data_type ();
+               public unowned Gdk.Display get_display ();
+               public int get_format ();
+               public int get_length ();
+               public Gdk.Pixbuf? get_pixbuf ();
+               public Gdk.Atom get_selection ();
+               public Gdk.Atom get_target ();
+               public bool get_targets (out Gdk.Atom[] targets);
+               public string? get_text ();
+               [CCode (array_length = false, array_null_terminated = true)]
+               public string[] get_uris ();
+               public void @set (Gdk.Atom type, int format, uchar[] data);
+               public bool set_pixbuf (Gdk.Pixbuf pixbuf);
+               public bool set_text (string str, int len);
+               public bool set_uris ([CCode (array_length = false, array_null_terminated = true)] string[] uris);
+               public bool targets_include_image (bool writable);
+               public bool targets_include_rich_text (Gtk.TextBuffer buffer);
+               public bool targets_include_text ();
+               public bool targets_include_uri ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Separator : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false)]
+               protected Separator ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class SeparatorMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public SeparatorMenuItem ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class SeparatorToolItem : Gtk.ToolItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public SeparatorToolItem ();
+               public bool get_draw ();
+               public void set_draw (bool draw);
+               public bool draw { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Settings : GLib.Object {
+               public weak Gtk.SettingsPropertyValue property_values;
+               public weak Gtk.RcContext rc_context;
+               public weak Gdk.Screen screen;
+               [CCode (has_construct_function = false)]
+               protected Settings ();
+               public static unowned Gtk.Settings get_default ();
+               public static unowned Gtk.Settings get_for_screen (Gdk.Screen screen);
+               public static void install_property (GLib.ParamSpec pspec);
+               public static void install_property_parser (GLib.ParamSpec pspec, Gtk.RcPropertyParser parser);
+               public void set_double_property (string name, double v_double, string origin);
+               public void set_long_property (string name, long v_long, string origin);
+               public void set_property_value (string name, Gtk.SettingsValue svalue);
+               public void set_string_property (string name, string v_string, string origin);
+               [NoAccessorMethod]
+               public GLib.HashTable<string,Gdk.Color> color_hash { owned get; }
+               [NoAccessorMethod]
+               public bool gtk_alternative_button_order { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_alternative_sort_arrows { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_auto_mnemonics { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_button_images { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_can_change_accels { get; set; }
+               [NoAccessorMethod]
+               public string gtk_color_palette { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_color_scheme { owned get; set; }
+               [NoAccessorMethod]
+               public bool gtk_cursor_blink { get; set; }
+               [NoAccessorMethod]
+               public int gtk_cursor_blink_time { get; set; }
+               [NoAccessorMethod]
+               public int gtk_cursor_blink_timeout { get; set; }
+               [NoAccessorMethod]
+               public string gtk_cursor_theme_name { owned get; set; }
+               [NoAccessorMethod]
+               public int gtk_cursor_theme_size { get; set; }
+               [NoAccessorMethod]
+               public int gtk_dnd_drag_threshold { get; set; }
+               [NoAccessorMethod]
+               public int gtk_double_click_distance { get; set; }
+               [NoAccessorMethod]
+               public int gtk_double_click_time { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_enable_accels { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_enable_animations { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_enable_event_sounds { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_enable_input_feedback_sounds { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_enable_mnemonics { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_enable_tooltips { get; set; }
+               [NoAccessorMethod]
+               public uint gtk_entry_password_hint_timeout { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_entry_select_on_focus { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_error_bell { get; set; }
+               [NoAccessorMethod]
+               public string gtk_fallback_icon_theme { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_file_chooser_backend { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_font_name { owned get; set; }
+               [NoAccessorMethod]
+               public uint gtk_fontconfig_timestamp { get; set; }
+               [NoAccessorMethod]
+               public string gtk_icon_sizes { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_icon_theme_name { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_im_module { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.IMPreeditStyle gtk_im_preedit_style { get; set; }
+               [NoAccessorMethod]
+               public Gtk.IMStatusStyle gtk_im_status_style { get; set; }
+               [NoAccessorMethod]
+               public string gtk_key_theme_name { owned get; set; }
+               [NoAccessorMethod]
+               public bool gtk_keynav_cursor_only { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_keynav_wrap_around { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_label_select_on_focus { get; set; }
+               [NoAccessorMethod]
+               public string gtk_menu_bar_accel { owned get; set; }
+               [NoAccessorMethod]
+               public int gtk_menu_bar_popup_delay { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_menu_images { get; set; }
+               [NoAccessorMethod]
+               public int gtk_menu_popdown_delay { get; set; }
+               [NoAccessorMethod]
+               public int gtk_menu_popup_delay { get; set; }
+               [NoAccessorMethod]
+               public string gtk_modules { owned get; set; }
+               [NoAccessorMethod]
+               public bool gtk_primary_button_warps_slider { get; set; }
+               [NoAccessorMethod]
+               public string gtk_print_backends { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_print_preview_command { owned get; set; }
+               [NoAccessorMethod]
+               public int gtk_recent_files_limit { get; set; }
+               [NoAccessorMethod]
+               public int gtk_recent_files_max_age { get; set; }
+               [NoAccessorMethod]
+               public Gtk.CornerType gtk_scrolled_window_placement { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_show_input_method_menu { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_show_unicode_menu { get; set; }
+               [NoAccessorMethod]
+               public string gtk_sound_theme_name { owned get; set; }
+               [NoAccessorMethod]
+               public bool gtk_split_cursor { get; set; }
+               [NoAccessorMethod]
+               public string gtk_theme_name { owned get; set; }
+               [NoAccessorMethod]
+               public int gtk_timeout_expand { get; set; }
+               [NoAccessorMethod]
+               public int gtk_timeout_initial { get; set; }
+               [NoAccessorMethod]
+               public int gtk_timeout_repeat { get; set; }
+               [NoAccessorMethod]
+               public Gtk.IconSize gtk_toolbar_icon_size { get; set; }
+               [NoAccessorMethod]
+               public Gtk.ToolbarStyle gtk_toolbar_style { get; set; }
+               [NoAccessorMethod]
+               public int gtk_tooltip_browse_mode_timeout { get; set; }
+               [NoAccessorMethod]
+               public int gtk_tooltip_browse_timeout { get; set; }
+               [NoAccessorMethod]
+               public int gtk_tooltip_timeout { get; set; }
+               [NoAccessorMethod]
+               public bool gtk_touchscreen_mode { get; set; }
+               [NoAccessorMethod]
+               public int gtk_xft_antialias { get; set; }
+               [NoAccessorMethod]
+               public int gtk_xft_dpi { get; set; }
+               [NoAccessorMethod]
+               public int gtk_xft_hinting { get; set; }
+               [NoAccessorMethod]
+               public string gtk_xft_hintstyle { owned get; set; }
+               [NoAccessorMethod]
+               public string gtk_xft_rgba { owned get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class SettingsPropertyValue {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class SizeGroup : GLib.Object, Gtk.Buildable {
+               public uint have_height;
+               public uint have_width;
+               public Gtk.Requisition requisition;
+               public weak GLib.SList widgets;
+               [CCode (has_construct_function = false)]
+               public SizeGroup (Gtk.SizeGroupMode mode);
+               public void add_widget (Gtk.Widget widget);
+               public bool get_ignore_hidden ();
+               public Gtk.SizeGroupMode get_mode ();
+               public unowned GLib.SList<Gtk.Widget> get_widgets ();
+               public void remove_widget (Gtk.Widget widget);
+               public void set_ignore_hidden (bool ignore_hidden);
+               public void set_mode (Gtk.SizeGroupMode mode);
+               public bool ignore_hidden { get; set; }
+               public Gtk.SizeGroupMode mode { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Socket : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public weak Gtk.AccelGroup accel_group;
+               public uint active;
+               public uint16 current_height;
+               public uint16 current_width;
+               public uint focus_in;
+               public uint have_size;
+               public uint is_mapped;
+               public uint need_map;
+               public weak Gtk.Widget plug_widget;
+               public weak Gdk.Window plug_window;
+               public uint16 request_height;
+               public uint16 request_width;
+               public uint same_app;
+               public weak Gtk.Widget toplevel;
+               public short xembed_version;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Socket ();
+               public void add_id (Gdk.NativeWindow window_id);
+               public Gdk.NativeWindow get_id ();
+               public unowned Gdk.Window get_plug_window ();
+               public virtual signal void plug_added ();
+               public virtual signal bool plug_removed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class SpinButton : Gtk.Entry, Atk.Implementor, Gtk.Buildable, Gtk.Editable, Gtk.CellEditable {
+               public uint button;
+               public uint click_child;
+               public uint in_child;
+               public uint need_timer;
+               public weak Gdk.Window panel;
+               public uint32 timer;
+               public uint timer_calls;
+               public double timer_step;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public SpinButton (Gtk.Adjustment adjustment, double climb_rate, uint digits);
+               public void configure (Gtk.Adjustment adjustment, double climb_rate, uint digits);
+               public unowned Gtk.Adjustment get_adjustment ();
+               public uint get_digits ();
+               public void get_increments (out double step, out double page);
+               public bool get_numeric ();
+               public void get_range (out double min, out double max);
+               public bool get_snap_to_ticks ();
+               public Gtk.SpinButtonUpdatePolicy get_update_policy ();
+               public double get_value ();
+               public int get_value_as_int ();
+               public bool get_wrap ();
+               public void set_adjustment (Gtk.Adjustment adjustment);
+               public void set_digits (uint digits);
+               public void set_increments (double step, double page);
+               public void set_numeric (bool numeric);
+               public void set_range (double min, double max);
+               public void set_snap_to_ticks (bool snap_to_ticks);
+               public void set_update_policy (Gtk.SpinButtonUpdatePolicy policy);
+               public void set_value (double value);
+               public void set_wrap (bool wrap);
+               public void spin (Gtk.SpinType direction, double increment);
+               public void update ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public SpinButton.with_range (double min, double max, double step);
+               public Gtk.Adjustment adjustment { get; set; }
+               [NoAccessorMethod]
+               public double climb_rate { get; set; }
+               public uint digits { get; set; }
+               public bool numeric { get; set; }
+               public bool snap_to_ticks { get; set; }
+               public Gtk.SpinButtonUpdatePolicy update_policy { get; set; }
+               public double value { get; set; }
+               public bool wrap { get; set; }
+               public virtual signal void change_value (Gtk.ScrollType scroll);
+               public virtual signal int input (out double new_value);
+               public virtual signal bool output ();
+               public virtual signal void value_changed ();
+               public virtual signal void wrapped ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Spinner : Gtk.DrawingArea, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Spinner ();
+               public void start ();
+               public void stop ();
+               [NoAccessorMethod]
+               public bool active { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class StatusIcon : GLib.Object {
+               [CCode (has_construct_function = false)]
+               public StatusIcon ();
+               [CCode (has_construct_function = false)]
+               public StatusIcon.from_file (string filename);
+               [CCode (has_construct_function = false)]
+               public StatusIcon.from_gicon (GLib.Icon icon);
+               [CCode (has_construct_function = false)]
+               public StatusIcon.from_icon_name (string icon_name);
+               [CCode (has_construct_function = false)]
+               public StatusIcon.from_pixbuf (Gdk.Pixbuf pixbuf);
+               [CCode (has_construct_function = false)]
+               public StatusIcon.from_stock (string stock_id);
+               public bool get_blinking ();
+               public bool get_geometry (out unowned Gdk.Screen screen, out Gdk.Rectangle area, out Gtk.Orientation orientation);
+               public unowned GLib.Icon get_gicon ();
+               public bool get_has_tooltip ();
+               public unowned string get_icon_name ();
+               public unowned Gdk.Pixbuf get_pixbuf ();
+               public unowned Gdk.Screen get_screen ();
+               public int get_size ();
+               public unowned string get_stock ();
+               public Gtk.ImageType get_storage_type ();
+               public unowned string get_title ();
+               public string get_tooltip_markup ();
+               public string get_tooltip_text ();
+               public bool get_visible ();
+               public uint32 get_x11_window_id ();
+               public bool is_embedded ();
+               [CCode (instance_pos = -1)]
+               public void position_menu (Gtk.Menu menu, ref int x, ref int y, out bool push_in);
+               public void set_blinking (bool blinking);
+               public void set_from_file (string filename);
+               public void set_from_gicon (GLib.Icon icon);
+               public void set_from_icon_name (string icon_name);
+               public void set_from_pixbuf (Gdk.Pixbuf pixbuf);
+               public void set_from_stock (string stock_id);
+               public void set_has_tooltip (bool has_tooltip);
+               public void set_name (string name);
+               public void set_screen (Gdk.Screen screen);
+               public void set_title (string title);
+               public void set_tooltip_markup (string markup);
+               public void set_tooltip_text (string text);
+               public void set_visible (bool visible);
+               public bool blinking { get; set; }
+               [NoAccessorMethod]
+               public bool embedded { get; }
+               [NoAccessorMethod]
+               public string file { set; }
+               [NoAccessorMethod]
+               public GLib.Icon gicon { owned get; set; }
+               public bool has_tooltip { get; set; }
+               [NoAccessorMethod]
+               public string icon_name { owned get; set; }
+               [NoAccessorMethod]
+               public Gtk.Orientation orientation { get; }
+               [NoAccessorMethod]
+               public Gdk.Pixbuf pixbuf { owned get; set; }
+               public Gdk.Screen screen { get; set; }
+               public int size { get; }
+               [NoAccessorMethod]
+               public string stock { owned get; set; }
+               public Gtk.ImageType storage_type { get; }
+               public string title { get; set; }
+               public string tooltip_markup { owned get; set; }
+               public string tooltip_text { owned get; set; }
+               public bool visible { get; set; }
+               public virtual signal void activate ();
+               public virtual signal bool button_press_event (Gdk.EventButton event);
+               public virtual signal bool button_release_event (Gdk.EventButton event);
+               public virtual signal void popup_menu (uint button, uint activate_time);
+               public virtual signal bool query_tooltip (int x, int y, bool keyboard_mode, Gtk.Tooltip tooltip);
+               public virtual signal bool scroll_event (Gdk.Event event);
+               public virtual signal bool size_changed (int size);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Statusbar : Gtk.HBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               public weak Gtk.Widget frame;
+               public weak Gdk.Window grip_window;
+               public weak GLib.SList keys;
+               public weak Gtk.Widget label;
+               public weak GLib.SList messages;
+               public uint seq_context_id;
+               public uint seq_message_id;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Statusbar ();
+               public uint get_context_id (string context_description);
+               public bool get_has_resize_grip ();
+               public unowned Gtk.Container get_message_area ();
+               public void pop (uint context_id);
+               public uint push (uint context_id, string text);
+               public void remove (uint context_id, uint message_id);
+               public void remove_all (uint context_id);
+               public void set_has_resize_grip (bool setting);
+               public bool has_resize_grip { get; set; }
+               public virtual signal void text_popped (uint context_id, string text);
+               public virtual signal void text_pushed (uint context_id, string text);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Style : GLib.Object {
+               public int attach_count;
+               [CCode (array_length = false)]
+               public Gdk.Color[] @base;
+               [CCode (array_length = false)]
+               public Gdk.GC[] base_gc;
+               [CCode (array_length = false)]
+               public Gdk.Color[] bg;
+               [CCode (array_length = false)]
+               public Gdk.GC[] bg_gc;
+               [CCode (array_length = false)]
+               public Gdk.Pixmap[] bg_pixmap;
+               public Gdk.Color black;
+               public weak Gdk.GC black_gc;
+               public weak Gdk.Colormap colormap;
+               [CCode (array_length = false)]
+               public Gdk.Color[] dark;
+               [CCode (array_length = false)]
+               public Gdk.GC[] dark_gc;
+               public int depth;
+               [CCode (array_length = false)]
+               public Gdk.Color[] fg;
+               [CCode (array_length = false)]
+               public Gdk.GC[] fg_gc;
+               public weak Pango.FontDescription font_desc;
+               public weak GLib.SList icon_factories;
+               [CCode (array_length = false)]
+               public Gdk.Color[] light;
+               [CCode (array_length = false)]
+               public Gdk.GC[] light_gc;
+               [CCode (array_length = false)]
+               public Gdk.Color[] mid;
+               [CCode (array_length = false)]
+               public Gdk.GC[] mid_gc;
+               public weak GLib.Array property_cache;
+               public weak Gtk.RcStyle rc_style;
+               public weak GLib.SList styles;
+               [CCode (array_length = false)]
+               public Gdk.Color[] text;
+               [CCode (array_length = false)]
+               public Gdk.Color[] text_aa;
+               [CCode (array_length = false)]
+               public Gdk.GC[] text_aa_gc;
+               [CCode (array_length = false)]
+               public Gdk.GC[] text_gc;
+               public Gdk.Color white;
+               public weak Gdk.GC white_gc;
+               public int xthickness;
+               public int ythickness;
+               [CCode (has_construct_function = false)]
+               public Style ();
+               public void apply_default_background (Gdk.Window window, bool set_bg, Gtk.StateType state_type, Gdk.Rectangle area, int x, int y, int width, int height);
+               public unowned Gtk.Style attach (Gdk.Window window);
+               [NoWrapper]
+               public virtual Gtk.Style clone ();
+               public Gtk.Style copy ();
+               [CCode (instance_pos = -1, vfunc_name = "copy")]
+               [NoWrapper]
+               public virtual void copy_to (Gtk.Style dest);
+               public void detach ();
+               [NoWrapper]
+               public virtual void draw_arrow (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, Gtk.ArrowType arrow_type, bool fill, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_box (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_box_gap (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width);
+               [NoWrapper]
+               public virtual void draw_check (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_diamond (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_expander (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, Gtk.ExpanderStyle expander_style);
+               [NoWrapper]
+               public virtual void draw_extension (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.PositionType gap_side);
+               [NoWrapper]
+               public virtual void draw_flat_box (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_focus (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_handle (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.Orientation orientation);
+               [NoWrapper]
+               public virtual void draw_hline (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x1, int x2, int y);
+               [NoWrapper]
+               public virtual void draw_layout (Gdk.Window window, Gtk.StateType state_type, bool use_text, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, Pango.Layout layout);
+               [NoWrapper]
+               public virtual void draw_option (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_polygon (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, Gdk.Point point, int npoints, bool fill);
+               [NoWrapper]
+               public virtual void draw_resize_grip (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, Gdk.WindowEdge edge, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_shadow (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_shadow_gap (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width);
+               [NoWrapper]
+               public virtual void draw_slider (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.Orientation orientation);
+               [NoWrapper]
+               public virtual void draw_spinner (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, uint step, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_string (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, string str);
+               [NoWrapper]
+               public virtual void draw_tab (Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, int width, int height);
+               [NoWrapper]
+               public virtual void draw_vline (Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int y1_, int y2_, int x);
+               public void @get (GLib.Type widget_type, ...);
+               public void get_style_property (GLib.Type widget_type, string property_name, out GLib.Value value);
+               public void get_valist (GLib.Type widget_type, string first_property_name, void* var_args);
+               [NoWrapper]
+               public virtual void init_from_rc (Gtk.RcStyle rc_style);
+               public bool lookup_color (string color_name, out Gdk.Color color);
+               public unowned Gtk.IconSet lookup_icon_set (string stock_id);
+               public virtual unowned Gdk.Pixbuf render_icon (Gtk.IconSource source, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail);
+               public virtual void set_background (Gdk.Window window, Gtk.StateType state_type);
+               public virtual signal void realize ();
+               public virtual signal void unrealize ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Table : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public weak GLib.List<Gtk.TableChild> children;
+               public weak Gtk.TableRowCol cols;
+               public uint16 ncols;
+               public uint16 nrows;
+               public weak Gtk.TableRowCol rows;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Table (uint rows, uint columns, bool homogeneous);
+               public void attach (Gtk.Widget child, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach, Gtk.AttachOptions xoptions, Gtk.AttachOptions yoptions, uint xpadding, uint ypadding);
+               public void attach_defaults (Gtk.Widget widget, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach);
+               public uint get_col_spacing (uint column);
+               public uint get_default_col_spacing ();
+               public uint get_default_row_spacing ();
+               public bool get_homogeneous ();
+               public uint get_row_spacing (uint row);
+               public void get_size (out uint rows, out uint columns);
+               public void resize (uint rows, uint columns);
+               public void set_col_spacing (uint column, uint spacing);
+               public void set_col_spacings (uint spacing);
+               public void set_homogeneous (bool homogeneous);
+               public void set_row_spacing (uint row, uint spacing);
+               public void set_row_spacings (uint spacing);
+               [NoAccessorMethod]
+               public uint column_spacing { get; set; }
+               public bool homogeneous { get; set; }
+               [NoAccessorMethod]
+               public uint n_columns { get; set; }
+               [NoAccessorMethod]
+               public uint n_rows { get; set; }
+               [NoAccessorMethod]
+               public uint row_spacing { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TableChild {
+               public uint16 bottom_attach;
+               public uint16 left_attach;
+               public uint16 right_attach;
+               public uint16 top_attach;
+               public weak Gtk.Widget widget;
+               public uint xexpand;
+               public uint xfill;
+               public uint16 xpadding;
+               public uint xshrink;
+               public uint yexpand;
+               public uint yfill;
+               public uint16 ypadding;
+               public uint yshrink;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TableRowCol {
+               public uint16 allocation;
+               public uint empty;
+               public uint expand;
+               public uint need_expand;
+               public uint need_shrink;
+               public uint16 requisition;
+               public uint shrink;
+               public uint16 spacing;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_target_list_ref", type_id = "gtk_target_list_get_type ()", unref_function = "gtk_target_list_unref")]
+       [Compact]
+       public class TargetList {
+               public weak GLib.List<Gtk.TargetPair> list;
+               public uint ref_count;
+               [CCode (has_construct_function = false)]
+               public TargetList (Gtk.TargetEntry[] targets);
+               public void add (Gdk.Atom target, uint flags, uint info);
+               public void add_image_targets (uint info, bool writable);
+               public void add_rich_text_targets (uint info, bool deserializable, Gtk.TextBuffer buffer);
+               public void add_table (Gtk.TargetEntry[]? targets);
+               public void add_text_targets (uint info);
+               public void add_uri_targets (uint info);
+               public bool find (Gdk.Atom target, out uint info);
+               public void remove (Gdk.Atom target);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TargetPair {
+               public uint flags;
+               public uint info;
+               public Gdk.Atom target;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TearoffMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               public uint torn_off;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public TearoffMenuItem ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_text_attributes_ref", type_id = "gtk_text_attributes_get_type ()", unref_function = "gtk_text_attributes_unref")]
+       [Compact]
+       public class TextAttributes {
+               public Gtk.TextAppearance appearance;
+               public uint bg_full_height;
+               public Gtk.TextDirection direction;
+               public uint editable;
+               public weak Pango.FontDescription font;
+               public double font_scale;
+               public int indent;
+               public uint invisible;
+               public Gtk.Justification justification;
+               public Pango.Language language;
+               public int left_margin;
+               public uint pad1;
+               public uint pad2;
+               public uint pad3;
+               public uint pad4;
+               public Gdk.Color pg_bg_color;
+               public int pixels_above_lines;
+               public int pixels_below_lines;
+               public int pixels_inside_wrap;
+               public uint realized;
+               public uint refcount;
+               public int right_margin;
+               public weak Pango.TabArray tabs;
+               public Gtk.WrapMode wrap_mode;
+               [CCode (has_construct_function = false)]
+               public TextAttributes ();
+               public Gtk.TextAttributes copy ();
+               public void copy_values (Gtk.TextAttributes dest);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TextBTree {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TextBuffer : GLib.Object {
+               public weak Gtk.TextBTree btree;
+               public weak GLib.SList clipboard_contents_buffers;
+               public weak Gtk.TextLogAttrCache log_attr_cache;
+               public uint modified;
+               public weak GLib.SList selection_clipboards;
+               public uint user_action_count;
+               [CCode (has_construct_function = false)]
+               public TextBuffer (Gtk.TextTagTable? table);
+               public void add_mark (Gtk.TextMark mark, Gtk.TextIter where);
+               public void add_selection_clipboard (Gtk.Clipboard clipboard);
+               public void apply_tag_by_name (string name, Gtk.TextIter start, Gtk.TextIter end);
+               public bool backspace (Gtk.TextIter iter, bool interactive, bool default_editable);
+               public void copy_clipboard (Gtk.Clipboard clipboard);
+               public unowned Gtk.TextChildAnchor create_child_anchor (Gtk.TextIter iter);
+               public unowned Gtk.TextMark create_mark (string? mark_name, Gtk.TextIter where, bool left_gravity);
+               public unowned Gtk.TextTag create_tag (string tag_name, ...);
+               public void cut_clipboard (Gtk.Clipboard clipboard, bool default_editable);
+               public void @delete (ref Gtk.TextIter start, ref Gtk.TextIter end);
+               public bool delete_interactive (ref Gtk.TextIter start_iter, ref Gtk.TextIter end_iter, bool default_editable);
+               public void delete_mark (Gtk.TextMark mark);
+               public void delete_mark_by_name (string name);
+               public bool delete_selection (bool interactive, bool default_editable);
+               public bool deserialize (Gtk.TextBuffer content_buffer, Gdk.Atom format, Gtk.TextIter iter, [CCode (array_length_type = "gsize")] uint8[] data) throws GLib.Error;
+               public bool deserialize_get_can_create_tags (Gdk.Atom format);
+               public void deserialize_set_can_create_tags (Gdk.Atom format, bool can_create_tags);
+               public void get_bounds (out Gtk.TextIter start, out Gtk.TextIter end);
+               public int get_char_count ();
+               public unowned Gtk.TargetList get_copy_target_list ();
+               public Gdk.Atom[] get_deserialize_formats ();
+               public void get_end_iter (out Gtk.TextIter iter);
+               public bool get_has_selection ();
+               public unowned Gtk.TextMark get_insert ();
+               public void get_iter_at_child_anchor (out Gtk.TextIter iter, Gtk.TextChildAnchor anchor);
+               public void get_iter_at_line (out Gtk.TextIter iter, int line_number);
+               public void get_iter_at_line_index (out Gtk.TextIter iter, int line_number, int byte_index);
+               public void get_iter_at_line_offset (out Gtk.TextIter iter, int line_number, int char_offset);
+               public void get_iter_at_mark (out Gtk.TextIter iter, Gtk.TextMark mark);
+               public void get_iter_at_offset (out Gtk.TextIter iter, int char_offset);
+               public int get_line_count ();
+               public unowned Gtk.TextMark get_mark (string name);
+               public bool get_modified ();
+               public unowned Gtk.TargetList get_paste_target_list ();
+               public unowned Gtk.TextMark get_selection_bound ();
+               public bool get_selection_bounds (out Gtk.TextIter start, out Gtk.TextIter end);
+               public Gdk.Atom[] get_serialize_formats ();
+               public string get_slice (Gtk.TextIter start, Gtk.TextIter end, bool include_hidden_chars);
+               public void get_start_iter (out Gtk.TextIter iter);
+               public unowned Gtk.TextTagTable get_tag_table ();
+               public string get_text (Gtk.TextIter start, Gtk.TextIter end, bool include_hidden_chars);
+               public void insert (ref Gtk.TextIter iter, string text, int len);
+               public void insert_at_cursor (string text, int len);
+               public bool insert_interactive (ref Gtk.TextIter iter, string text, int len, bool default_editable);
+               public bool insert_interactive_at_cursor (string text, int len, bool default_editable);
+               public void insert_range (ref Gtk.TextIter iter, Gtk.TextIter start, Gtk.TextIter end);
+               public bool insert_range_interactive (ref Gtk.TextIter iter, Gtk.TextIter start, Gtk.TextIter end, bool default_editable);
+               public void insert_with_tags (ref Gtk.TextIter iter, string text, int len, ...);
+               public void insert_with_tags_by_name (ref Gtk.TextIter iter, string text, int len, ...);
+               public void move_mark (Gtk.TextMark mark, Gtk.TextIter where);
+               public void move_mark_by_name (string name, Gtk.TextIter where);
+               public void paste_clipboard (Gtk.Clipboard clipboard, Gtk.TextIter? override_location, bool default_editable);
+               public void place_cursor (Gtk.TextIter where);
+               public Gdk.Atom register_deserialize_format (string mime_type, owned Gtk.TextBufferDeserializeFunc function);
+               public Gdk.Atom register_deserialize_tagset (string tagset_name);
+               public Gdk.Atom register_serialize_format (string mime_type, owned Gtk.TextBufferSerializeFunc function);
+               public Gdk.Atom register_serialize_tagset (string tagset_name);
+               public void remove_all_tags (Gtk.TextIter start, Gtk.TextIter end);
+               public void remove_selection_clipboard (Gtk.Clipboard clipboard);
+               public void remove_tag_by_name (string name, Gtk.TextIter start, Gtk.TextIter end);
+               public void select_range (Gtk.TextIter ins, Gtk.TextIter bound);
+               [CCode (array_length_type = "gsize")]
+               public uint8[] serialize (Gtk.TextBuffer content_buffer, Gdk.Atom format, Gtk.TextIter start, Gtk.TextIter end);
+               public void set_modified (bool setting);
+               public void set_text (string text, int len = -1);
+               public void unregister_deserialize_format (Gdk.Atom format);
+               public void unregister_serialize_format (Gdk.Atom format);
+               public Gtk.TargetList copy_target_list { get; }
+               [NoAccessorMethod]
+               public int cursor_position { get; }
+               public bool has_selection { get; }
+               public Gtk.TargetList paste_target_list { get; }
+               public Gtk.TextTagTable tag_table { get; construct; }
+               [NoAccessorMethod]
+               public string text { owned get; set; }
+               [HasEmitter]
+               public virtual signal void apply_tag (Gtk.TextTag tag, Gtk.TextIter start_char, Gtk.TextIter end_char);
+               [HasEmitter]
+               public virtual signal void begin_user_action ();
+               public virtual signal void changed ();
+               public virtual signal void delete_range (Gtk.TextIter start, Gtk.TextIter end);
+               [HasEmitter]
+               public virtual signal void end_user_action ();
+               [HasEmitter]
+               public virtual signal void insert_child_anchor (Gtk.TextIter pos, Gtk.TextChildAnchor anchor);
+               [HasEmitter]
+               public virtual signal void insert_pixbuf (Gtk.TextIter pos, Gdk.Pixbuf pixbuf);
+               public virtual signal void insert_text (ref Gtk.TextIter pos, string text, int length);
+               public virtual signal void mark_deleted (Gtk.TextMark mark);
+               public virtual signal void mark_set (Gtk.TextIter location, Gtk.TextMark mark);
+               public virtual signal void modified_changed ();
+               public virtual signal void paste_done (Gtk.Clipboard clipboard);
+               [HasEmitter]
+               public virtual signal void remove_tag (Gtk.TextTag tag, Gtk.TextIter start_char, Gtk.TextIter end_char);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TextChildAnchor : GLib.Object {
+               public void* segment;
+               [CCode (has_construct_function = false)]
+               public TextChildAnchor ();
+               public bool get_deleted ();
+               public GLib.List<weak Gtk.Widget> get_widgets ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TextLogAttrCache {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TextMark : GLib.Object {
+               public void* segment;
+               [CCode (has_construct_function = false)]
+               public TextMark (string? name, bool left_gravity = false);
+               public unowned Gtk.TextBuffer get_buffer ();
+               public bool get_deleted ();
+               public bool get_left_gravity ();
+               public unowned string get_name ();
+               public bool get_visible ();
+               public void set_visible (bool setting);
+               public bool left_gravity { get; construct; }
+               public string name { get; construct; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TextPendingScroll {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TextTag : GLib.Object {
+               public uint bg_color_set;
+               public uint bg_full_height_set;
+               public uint bg_stipple_set;
+               public uint fg_color_set;
+               public uint fg_stipple_set;
+               public uint pad1;
+               public uint pg_bg_color_set;
+               public int priority;
+               public weak Gtk.TextTagTable table;
+               public weak Gtk.TextAttributes values;
+               [CCode (has_construct_function = false)]
+               public TextTag (string? name = null);
+               public int get_priority ();
+               public void set_priority (int priority);
+               [NoAccessorMethod]
+               public bool accumulative_margin { get; set; }
+               [NoAccessorMethod]
+               public string background { set; }
+               [NoAccessorMethod]
+               public bool background_full_height { get; set; }
+               [NoAccessorMethod]
+               public bool background_full_height_set { get; set; }
+               [NoAccessorMethod]
+               public Gdk.Color background_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool background_set { get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixmap background_stipple { owned get; set; }
+               [NoAccessorMethod]
+               public bool background_stipple_set { get; set; }
+               [NoAccessorMethod]
+               public Gtk.TextDirection direction { get; set; }
+               [NoAccessorMethod]
+               public bool editable { get; set; }
+               [NoAccessorMethod]
+               public bool editable_set { get; set; }
+               [NoAccessorMethod]
+               public string family { owned get; set; }
+               [NoAccessorMethod]
+               public bool family_set { get; set; }
+               [NoAccessorMethod]
+               public string font { owned get; set; }
+               [NoAccessorMethod]
+               public Pango.FontDescription font_desc { owned get; set; }
+               [NoAccessorMethod]
+               public string foreground { set; }
+               [NoAccessorMethod]
+               public Gdk.Color foreground_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool foreground_set { get; set; }
+               [NoAccessorMethod]
+               public Gdk.Pixmap foreground_stipple { owned get; set; }
+               [NoAccessorMethod]
+               public bool foreground_stipple_set { get; set; }
+               [NoAccessorMethod]
+               public int indent { get; set; }
+               [NoAccessorMethod]
+               public bool indent_set { get; set; }
+               [NoAccessorMethod]
+               public bool invisible { get; set; }
+               [NoAccessorMethod]
+               public bool invisible_set { get; set; }
+               [NoAccessorMethod]
+               public Gtk.Justification justification { get; set; }
+               [NoAccessorMethod]
+               public bool justification_set { get; set; }
+               [NoAccessorMethod]
+               public string language { owned get; set; }
+               [NoAccessorMethod]
+               public bool language_set { get; set; }
+               [NoAccessorMethod]
+               public int left_margin { get; set; }
+               [NoAccessorMethod]
+               public bool left_margin_set { get; set; }
+               [NoAccessorMethod]
+               public string name { owned get; construct; }
+               [NoAccessorMethod]
+               public string paragraph_background { set; }
+               [NoAccessorMethod]
+               public Gdk.Color paragraph_background_gdk { get; set; }
+               [NoAccessorMethod]
+               public bool paragraph_background_set { get; set; }
+               [NoAccessorMethod]
+               public int pixels_above_lines { get; set; }
+               [NoAccessorMethod]
+               public bool pixels_above_lines_set { get; set; }
+               [NoAccessorMethod]
+               public int pixels_below_lines { get; set; }
+               [NoAccessorMethod]
+               public bool pixels_below_lines_set { get; set; }
+               [NoAccessorMethod]
+               public int pixels_inside_wrap { get; set; }
+               [NoAccessorMethod]
+               public bool pixels_inside_wrap_set { get; set; }
+               [NoAccessorMethod]
+               public int right_margin { get; set; }
+               [NoAccessorMethod]
+               public bool right_margin_set { get; set; }
+               [NoAccessorMethod]
+               public int rise { get; set; }
+               [NoAccessorMethod]
+               public bool rise_set { get; set; }
+               [NoAccessorMethod]
+               public double scale { get; set; }
+               [NoAccessorMethod]
+               public bool scale_set { get; set; }
+               [NoAccessorMethod]
+               public int size { get; set; }
+               [NoAccessorMethod]
+               public double size_points { get; set; }
+               [NoAccessorMethod]
+               public bool size_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Stretch stretch { get; set; }
+               [NoAccessorMethod]
+               public bool stretch_set { get; set; }
+               [NoAccessorMethod]
+               public bool strikethrough { get; set; }
+               [NoAccessorMethod]
+               public bool strikethrough_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Style style { get; set; }
+               [NoAccessorMethod]
+               public bool style_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.TabArray tabs { owned get; set; }
+               [NoAccessorMethod]
+               public bool tabs_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Underline underline { get; set; }
+               [NoAccessorMethod]
+               public bool underline_set { get; set; }
+               [NoAccessorMethod]
+               public Pango.Variant variant { get; set; }
+               [NoAccessorMethod]
+               public bool variant_set { get; set; }
+               [NoAccessorMethod]
+               public int weight { get; set; }
+               [NoAccessorMethod]
+               public bool weight_set { get; set; }
+               [NoAccessorMethod]
+               public Gtk.WrapMode wrap_mode { get; set; }
+               [NoAccessorMethod]
+               public bool wrap_mode_set { get; set; }
+               [HasEmitter]
+               public virtual signal bool event (GLib.Object event_object, Gdk.Event event, Gtk.TextIter iter);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TextTagTable : GLib.Object, Gtk.Buildable {
+               public int anon_count;
+               public weak GLib.SList anonymous;
+               public weak GLib.SList buffers;
+               public weak GLib.HashTable hash;
+               [CCode (has_construct_function = false)]
+               public TextTagTable ();
+               public void add (Gtk.TextTag tag);
+               public void @foreach (Gtk.TextTagTableForeach func);
+               public int get_size ();
+               public unowned Gtk.TextTag lookup (string name);
+               public void remove (Gtk.TextTag tag);
+               public virtual signal void tag_added (Gtk.TextTag tag);
+               public virtual signal void tag_changed (Gtk.TextTag tag, bool size_changed);
+               public virtual signal void tag_removed (Gtk.TextTag tag);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TextView : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public uint blink_timeout;
+               public weak Gtk.TextWindow bottom_window;
+               public weak GLib.SList children;
+               public weak Gtk.TextMark dnd_mark;
+               public int drag_start_x;
+               public int drag_start_y;
+               public weak Gtk.TextMark first_para_mark;
+               public int first_para_pixels;
+               public uint first_validate_idle;
+               public weak Gtk.Adjustment hadjustment;
+               public int height;
+               public weak Gtk.IMContext im_context;
+               public uint incremental_validate_idle;
+               public Gtk.Justification justify;
+               public weak Gtk.TextWindow left_window;
+               public uint mouse_cursor_obscured;
+               public uint need_im_reset;
+               public uint onscreen_validated;
+               public uint overwrite_mode;
+               public int pending_place_cursor_button;
+               public weak Gtk.TextPendingScroll pending_scroll;
+               public weak Gtk.Widget popup_menu;
+               public weak Gtk.TextWindow right_window;
+               public uint scroll_timeout;
+               public uint selection_drag_handler;
+               public weak Gtk.TextWindow text_window;
+               public weak Gtk.TextWindow top_window;
+               public weak Gtk.Adjustment vadjustment;
+               public int virtual_cursor_x;
+               public int virtual_cursor_y;
+               public int width;
+               public uint width_changed;
+               public int xoffset;
+               public int yoffset;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public TextView ();
+               public void add_child_at_anchor (Gtk.Widget child, Gtk.TextChildAnchor anchor);
+               public void add_child_in_window (Gtk.Widget child, Gtk.TextWindowType which_window, int xpos, int ypos);
+               public bool backward_display_line (Gtk.TextIter iter);
+               public bool backward_display_line_start (Gtk.TextIter iter);
+               public void buffer_to_window_coords (Gtk.TextWindowType win, int buffer_x, int buffer_y, out int window_x, out int window_y);
+               public bool forward_display_line (Gtk.TextIter iter);
+               public bool forward_display_line_end (Gtk.TextIter iter);
+               public bool get_accepts_tab ();
+               public int get_border_window_size (Gtk.TextWindowType type);
+               public unowned Gtk.TextBuffer get_buffer ();
+               public bool get_cursor_visible ();
+               public Gtk.TextAttributes get_default_attributes ();
+               public bool get_editable ();
+               public unowned Gtk.Adjustment get_hadjustment ();
+               public int get_indent ();
+               public void get_iter_at_location (out Gtk.TextIter iter, int x, int y);
+               public void get_iter_at_position (out Gtk.TextIter iter, out int trailing, int x, int y);
+               public void get_iter_location (Gtk.TextIter iter, out Gdk.Rectangle location);
+               public Gtk.Justification get_justification ();
+               public int get_left_margin ();
+               public void get_line_at_y (out Gtk.TextIter target_iter, int y, out int line_top);
+               public void get_line_yrange (Gtk.TextIter iter, out int y, out int height);
+               public bool get_overwrite ();
+               public int get_pixels_above_lines ();
+               public int get_pixels_below_lines ();
+               public int get_pixels_inside_wrap ();
+               public int get_right_margin ();
+               public Pango.TabArray get_tabs ();
+               public unowned Gtk.Adjustment get_vadjustment ();
+               public void get_visible_rect (out Gdk.Rectangle visible_rect);
+               public unowned Gdk.Window get_window (Gtk.TextWindowType win);
+               public Gtk.TextWindowType get_window_type (Gdk.Window window);
+               public Gtk.WrapMode get_wrap_mode ();
+               public bool im_context_filter_keypress (Gdk.EventKey event);
+               public void move_child (Gtk.Widget child, int xpos, int ypos);
+               [NoWrapper]
+               public virtual void move_focus (Gtk.DirectionType direction);
+               public bool move_mark_onscreen (Gtk.TextMark mark);
+               public bool move_visually (Gtk.TextIter iter, int count);
+               public bool place_cursor_onscreen ();
+               public void reset_im_context ();
+               public void scroll_mark_onscreen (Gtk.TextMark mark);
+               public bool scroll_to_iter (Gtk.TextIter iter, double within_margin, bool use_align, double xalign, double yalign);
+               public void scroll_to_mark (Gtk.TextMark mark, double within_margin, bool use_align, double xalign, double yalign);
+               public void set_accepts_tab (bool accepts_tab);
+               public void set_border_window_size (Gtk.TextWindowType type, int size);
+               public void set_buffer (Gtk.TextBuffer buffer);
+               public void set_cursor_visible (bool setting);
+               public void set_editable (bool setting);
+               public void set_indent (int indent);
+               public void set_justification (Gtk.Justification justification);
+               public void set_left_margin (int left_margin);
+               public void set_overwrite (bool overwrite);
+               public void set_pixels_above_lines (int pixels_above_lines);
+               public void set_pixels_below_lines (int pixels_below_lines);
+               public void set_pixels_inside_wrap (int pixels_inside_wrap);
+               public void set_right_margin (int right_margin);
+               public void set_tabs (Pango.TabArray tabs);
+               public void set_wrap_mode (Gtk.WrapMode wrap_mode);
+               public bool starts_display_line (Gtk.TextIter iter);
+               public void window_to_buffer_coords (Gtk.TextWindowType win, int window_x, int window_y, out int buffer_x, out int buffer_y);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public TextView.with_buffer (Gtk.TextBuffer buffer);
+               public bool accepts_tab { get; set; }
+               public Gtk.TextBuffer buffer { get; set; }
+               public bool cursor_visible { get; set; }
+               public bool editable { get; set; }
+               [NoAccessorMethod]
+               public string im_module { owned get; set; }
+               public int indent { get; set; }
+               public Gtk.Justification justification { get; set; }
+               public int left_margin { get; set; }
+               public bool overwrite { get; set; }
+               public int pixels_above_lines { get; set; }
+               public int pixels_below_lines { get; set; }
+               public int pixels_inside_wrap { get; set; }
+               public int right_margin { get; set; }
+               public Pango.TabArray tabs { owned get; set; }
+               public Gtk.WrapMode wrap_mode { get; set; }
+               public virtual signal void backspace ();
+               public virtual signal void copy_clipboard ();
+               public virtual signal void cut_clipboard ();
+               public virtual signal void delete_from_cursor (Gtk.DeleteType type, int count);
+               public virtual signal void insert_at_cursor (string str);
+               public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection);
+               public virtual signal void move_viewport (Gtk.ScrollStep p0, int p1);
+               public virtual signal void page_horizontally (int count, bool extend_selection);
+               public virtual signal void paste_clipboard ();
+               public virtual signal void populate_popup (Gtk.Menu menu);
+               public virtual signal void preedit_changed (string p0);
+               public virtual signal void select_all (bool p0);
+               public virtual signal void set_anchor ();
+               public virtual signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+               public virtual signal void toggle_cursor_visible ();
+               public virtual signal void toggle_overwrite ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class TextWindow {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class ThemeEngine {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToggleAction : Gtk.Action, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               public ToggleAction (string name, string? label, string? tooltip, string? stock_id);
+               public bool get_active ();
+               public bool get_draw_as_radio ();
+               public void set_active (bool is_active);
+               public void set_draw_as_radio (bool draw_as_radio);
+               public bool active { get; set; }
+               public bool draw_as_radio { get; set; }
+               [HasEmitter]
+               public virtual signal void toggled ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToggleButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ToggleButton ();
+               public bool get_active ();
+               public bool get_inconsistent ();
+               public bool get_mode ();
+               public void set_active (bool is_active);
+               public void set_inconsistent (bool setting);
+               public void set_mode (bool draw_indicator);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ToggleButton.with_label (string label);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ToggleButton.with_mnemonic (string label);
+               public bool active { get; set; }
+               [NoAccessorMethod]
+               public bool draw_indicator { get; set; }
+               public bool inconsistent { get; set; }
+               [HasEmitter]
+               public virtual signal void toggled ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToggleToolButton : Gtk.ToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public ToggleToolButton ();
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public ToggleToolButton.from_stock (string stock_id);
+               public bool get_active ();
+               public void set_active (bool is_active);
+               public bool active { get; set; }
+               public virtual signal void toggled ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToolButton : Gtk.ToolItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public ToolButton (Gtk.Widget? icon_widget, string? label);
+               [CCode (has_construct_function = false, type = "GtkToolItem*")]
+               public ToolButton.from_stock (string stock_id);
+               public unowned string get_icon_name ();
+               public unowned Gtk.Widget get_icon_widget ();
+               public unowned string get_label ();
+               public unowned Gtk.Widget get_label_widget ();
+               public unowned string get_stock_id ();
+               public bool get_use_underline ();
+               public void set_icon_name (string icon_name);
+               public void set_icon_widget (Gtk.Widget icon_widget);
+               public void set_label (string label);
+               public void set_label_widget (Gtk.Widget label_widget);
+               public void set_stock_id (string stock_id);
+               public void set_use_underline (bool use_underline);
+               public string icon_name { get; set; }
+               public Gtk.Widget icon_widget { get; set; }
+               public string label { get; set; }
+               public Gtk.Widget label_widget { get; set; }
+               public string stock_id { get; set; }
+               public bool use_underline { get; set; }
+               public virtual signal void clicked ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToolItem : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Activatable {
+               [CCode (has_construct_function = false)]
+               public ToolItem ();
+               public Pango.EllipsizeMode get_ellipsize_mode ();
+               public bool get_expand ();
+               public bool get_homogeneous ();
+               public Gtk.IconSize get_icon_size ();
+               public bool get_is_important ();
+               public Gtk.Orientation get_orientation ();
+               public unowned Gtk.Widget get_proxy_menu_item (string menu_item_id);
+               public Gtk.ReliefStyle get_relief_style ();
+               public float get_text_alignment ();
+               public Gtk.Orientation get_text_orientation ();
+               public unowned Gtk.SizeGroup get_text_size_group ();
+               public Gtk.ToolbarStyle get_toolbar_style ();
+               public bool get_use_drag_window ();
+               public bool get_visible_horizontal ();
+               public bool get_visible_vertical ();
+               public void rebuild_menu ();
+               public unowned Gtk.Widget retrieve_proxy_menu_item ();
+               public void set_expand (bool expand);
+               public void set_homogeneous (bool homogeneous);
+               public void set_is_important (bool is_important);
+               public void set_proxy_menu_item (string menu_item_id, Gtk.Widget menu_item);
+               public void set_tooltip_markup (string markup);
+               public void set_tooltip_text (string text);
+               public void set_use_drag_window (bool use_drag_window);
+               public void set_visible_horizontal (bool visible_horizontal);
+               public void set_visible_vertical (bool visible_vertical);
+               public bool is_important { get; set; }
+               public bool visible_horizontal { get; set; }
+               public bool visible_vertical { get; set; }
+               public virtual signal bool create_menu_proxy ();
+               public virtual signal void toolbar_reconfigured ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToolItemGroup : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.ToolShell {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ToolItemGroup (string label);
+               public bool get_collapsed ();
+               public unowned Gtk.ToolItem get_drop_item (int x, int y);
+               public Pango.EllipsizeMode get_ellipsize ();
+               public Gtk.ReliefStyle get_header_relief ();
+               public int get_item_position (Gtk.ToolItem item);
+               public unowned string get_label ();
+               public unowned Gtk.Widget get_label_widget ();
+               public uint get_n_items ();
+               public unowned Gtk.ToolItem get_nth_item (uint index);
+               public void insert (Gtk.ToolItem item, int position);
+               public void set_collapsed (bool collapsed);
+               public void set_ellipsize (Pango.EllipsizeMode ellipsize);
+               public void set_header_relief (Gtk.ReliefStyle style);
+               public void set_item_position (Gtk.ToolItem item, int position);
+               public void set_label (string label);
+               public void set_label_widget (Gtk.Widget label_widget);
+               public bool collapsed { get; set; }
+               public Pango.EllipsizeMode ellipsize { get; set; }
+               public Gtk.ReliefStyle header_relief { get; set; }
+               public string label { get; set; }
+               public Gtk.Widget label_widget { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class ToolPalette : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public ToolPalette ();
+               public void add_drag_dest (Gtk.Widget widget, Gtk.DestDefaults flags, Gtk.ToolPaletteDragTargets targets, Gdk.DragAction actions);
+               public unowned Gtk.Widget get_drag_item (Gtk.SelectionData selection);
+               public static Gtk.TargetEntry get_drag_target_group ();
+               public static Gtk.TargetEntry get_drag_target_item ();
+               public unowned Gtk.ToolItemGroup get_drop_group (int x, int y);
+               public unowned Gtk.ToolItem get_drop_item (int x, int y);
+               public bool get_exclusive (Gtk.ToolItemGroup group);
+               public bool get_expand (Gtk.ToolItemGroup group);
+               public int get_group_position (Gtk.ToolItemGroup group);
+               public unowned Gtk.Adjustment get_hadjustment ();
+               public Gtk.IconSize get_icon_size ();
+               public Gtk.ToolbarStyle get_style ();
+               public unowned Gtk.Adjustment get_vadjustment ();
+               public void set_drag_source (Gtk.ToolPaletteDragTargets targets);
+               public void set_exclusive (Gtk.ToolItemGroup group, bool exclusive);
+               public void set_expand (Gtk.ToolItemGroup group, bool expand);
+               public void set_group_position (Gtk.ToolItemGroup group, int position);
+               public void set_icon_size (Gtk.IconSize icon_size);
+               public void set_style (Gtk.ToolbarStyle style);
+               public void unset_icon_size ();
+               public void unset_style ();
+               public Gtk.IconSize icon_size { get; set; }
+               [NoAccessorMethod]
+               public bool icon_size_set { get; set; }
+               [NoAccessorMethod]
+               public Gtk.ToolbarStyle toolbar_style { get; set; }
+               public virtual signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Toolbar : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.ToolShell, Gtk.Orientable {
+               public int button_maxh;
+               public int button_maxw;
+               public weak GLib.List children;
+               public int num_children;
+               public Gtk.Orientation orientation;
+               public Gtk.ToolbarStyle style;
+               public uint style_set;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Toolbar ();
+               public int get_drop_index (int x, int y);
+               public int get_item_index (Gtk.ToolItem item);
+               public int get_n_items ();
+               public unowned Gtk.ToolItem get_nth_item (int n);
+               public bool get_show_arrow ();
+               public void insert (Gtk.ToolItem item, int pos);
+               public void set_drop_highlight_item (Gtk.ToolItem tool_item, int index_);
+               public void set_icon_size (Gtk.IconSize icon_size);
+               public void set_show_arrow (bool show_arrow);
+               public void set_style (Gtk.ToolbarStyle style);
+               public void unset_icon_size ();
+               public void unset_style ();
+               public int icon_size { get; set; }
+               [NoAccessorMethod]
+               public bool icon_size_set { get; set; }
+               public bool show_arrow { get; set; }
+               [NoAccessorMethod]
+               public Gtk.ToolbarStyle toolbar_style { get; set; }
+               [NoAccessorMethod]
+               public bool tooltips { get; set; }
+               public virtual signal bool focus_home_or_end (bool p0);
+               public virtual signal void orientation_changed (Gtk.Orientation orientation);
+               public virtual signal bool popup_context_menu (int x, int y, int button_number);
+               public virtual signal void style_changed (Gtk.ToolbarStyle style);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Tooltip : GLib.Object {
+               [CCode (has_construct_function = false)]
+               protected Tooltip ();
+               public void set_custom (Gtk.Widget custom_widget);
+               public void set_icon (Gdk.Pixbuf pixbuf);
+               public void set_icon_from_gicon (GLib.Icon gicon, Gtk.IconSize size);
+               public void set_icon_from_icon_name (string icon_name, Gtk.IconSize size);
+               public void set_icon_from_stock (string stock_id, Gtk.IconSize size);
+               public void set_markup (string markup);
+               public void set_text (string text);
+               public void set_tip_area (Gdk.Rectangle rect);
+               public static void trigger_tooltip_query (Gdk.Display display);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TreeModelFilter : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource {
+               [CCode (has_construct_function = false, type = "GtkTreeModel*")]
+               public TreeModelFilter (Gtk.TreeModel child_model, Gtk.TreePath? root);
+               public void clear_cache ();
+               public bool convert_child_iter_to_iter (out Gtk.TreeIter filter_iter, Gtk.TreeIter child_iter);
+               public Gtk.TreePath convert_child_path_to_path (Gtk.TreePath child_path);
+               public void convert_iter_to_child_iter (out Gtk.TreeIter child_iter, Gtk.TreeIter filter_iter);
+               public Gtk.TreePath convert_path_to_child_path (Gtk.TreePath filter_path);
+               public unowned Gtk.TreeModel get_model ();
+               public void refilter ();
+               public void set_modify_func ([CCode (array_length_pos = 0.9)] GLib.Type[] types, owned Gtk.TreeModelFilterModifyFunc func);
+               public void set_visible_column (int column);
+               public void set_visible_func (owned Gtk.TreeModelFilterVisibleFunc func);
+               [NoAccessorMethod]
+               public Gtk.TreeModel child_model { owned get; construct; }
+               [NoAccessorMethod]
+               public Gtk.TreePath virtual_root { owned get; construct; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TreeModelSort : GLib.Object, Gtk.TreeModel, Gtk.TreeSortable, Gtk.TreeDragSource {
+               public uint changed_id;
+               public uint child_flags;
+               public weak Gtk.TreeModel child_model;
+               public void* default_sort_data;
+               public weak GLib.DestroyNotify default_sort_destroy;
+               public weak Gtk.TreeIterCompareFunc default_sort_func;
+               public uint deleted_id;
+               public uint has_child_toggled_id;
+               public uint inserted_id;
+               public Gtk.SortType order;
+               public uint reordered_id;
+               public void* root;
+               public int sort_column_id;
+               public weak GLib.List sort_list;
+               public int stamp;
+               public int zero_ref_count;
+               [CCode (has_construct_function = false)]
+               protected TreeModelSort ();
+               public void clear_cache ();
+               public bool convert_child_iter_to_iter (out Gtk.TreeIter sort_iter, Gtk.TreeIter child_iter);
+               public Gtk.TreePath convert_child_path_to_path (Gtk.TreePath child_path);
+               public void convert_iter_to_child_iter (out Gtk.TreeIter child_iter, Gtk.TreeIter sorted_iter);
+               public Gtk.TreePath convert_path_to_child_path (Gtk.TreePath sorted_path);
+               public unowned Gtk.TreeModel get_model ();
+               public bool iter_is_valid (Gtk.TreeIter iter);
+               public void reset_default_sort_func ();
+               [CCode (has_construct_function = false, type = "GtkTreeModel*")]
+               public TreeModelSort.with_model (Gtk.TreeModel child_model);
+               public Gtk.TreeModel model { get; construct; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", const_cname = "GtkTreePath", copy_function = "gtk_tree_path_copy", type_id = "gtk_tree_path_get_type ()")]
+       [Compact]
+       [Immutable]
+       public class TreePath {
+               [CCode (has_construct_function = false)]
+               public TreePath ();
+               public void append_index (int index_);
+               public int compare (Gtk.TreePath b);
+               public Gtk.TreePath copy ();
+               public void down ();
+               [CCode (has_construct_function = false)]
+               public TreePath.first ();
+               [CCode (has_construct_function = false, sentinel = "-1")]
+               public TreePath.from_indices (...);
+               [CCode (has_construct_function = false)]
+               public TreePath.from_string (string path);
+               public int get_depth ();
+               [CCode (array_length = false)]
+               public unowned int[] get_indices ();
+               public int get_indices_with_depth (int depth);
+               public bool is_ancestor (Gtk.TreePath descendant);
+               public bool is_descendant (Gtk.TreePath ancestor);
+               public void next ();
+               public void prepend_index (int index_);
+               public bool prev ();
+               public string to_string ();
+               public bool up ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_tree_row_reference_copy", type_id = "gtk_tree_row_reference_get_type ()")]
+       [Compact]
+       [Immutable]
+       public class TreeRowReference {
+               [CCode (has_construct_function = false)]
+               public TreeRowReference (Gtk.TreeModel model, Gtk.TreePath path);
+               public Gtk.TreeRowReference copy ();
+               public static void deleted (GLib.Object proxy, Gtk.TreePath path);
+               public unowned Gtk.TreeModel get_model ();
+               public Gtk.TreePath get_path ();
+               public static void inserted (GLib.Object proxy, Gtk.TreePath path);
+               [CCode (has_construct_function = false)]
+               public TreeRowReference.proxy (GLib.Object proxy, Gtk.TreeModel model, Gtk.TreePath path);
+               public static void reordered (GLib.Object proxy, Gtk.TreePath path, Gtk.TreeIter iter, int[] new_order);
+               public bool valid ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TreeSelection : GLib.Object {
+               public weak GLib.DestroyNotify destroy;
+               public weak Gtk.TreeView tree_view;
+               public Gtk.SelectionMode type;
+               public void* user_data;
+               public weak Gtk.TreeSelectionFunc user_func;
+               [CCode (has_construct_function = false)]
+               protected TreeSelection ();
+               public int count_selected_rows ();
+               public Gtk.SelectionMode get_mode ();
+               public unowned Gtk.TreeSelectionFunc get_select_function ();
+               public bool get_selected (out unowned Gtk.TreeModel model, out Gtk.TreeIter iter);
+               public GLib.List<Gtk.TreePath> get_selected_rows (out unowned Gtk.TreeModel model);
+               public unowned Gtk.TreeView get_tree_view ();
+               public void* get_user_data ();
+               public bool iter_is_selected (Gtk.TreeIter iter);
+               public bool path_is_selected (Gtk.TreePath path);
+               public void select_all ();
+               public void select_iter (Gtk.TreeIter iter);
+               public void select_path (Gtk.TreePath path);
+               public void select_range (Gtk.TreePath start_path, Gtk.TreePath end_path);
+               public void selected_foreach (Gtk.TreeSelectionForeachFunc func);
+               public void set_mode (Gtk.SelectionMode type);
+               public void set_select_function (owned Gtk.TreeSelectionFunc func);
+               public void unselect_all ();
+               public void unselect_iter (Gtk.TreeIter iter);
+               public void unselect_path (Gtk.TreePath path);
+               public void unselect_range (Gtk.TreePath start_path, Gtk.TreePath end_path);
+               public virtual signal void changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TreeStore : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource, Gtk.TreeDragDest, Gtk.TreeSortable, Gtk.Buildable {
+               [CCode (array_length = false)]
+               public weak GLib.Type[] column_headers;
+               public uint columns_dirty;
+               public void* default_sort_data;
+               public weak GLib.DestroyNotify default_sort_destroy;
+               public weak Gtk.TreeIterCompareFunc default_sort_func;
+               public void* last;
+               public int n_columns;
+               public Gtk.SortType order;
+               public void* root;
+               public int sort_column_id;
+               public weak GLib.List sort_list;
+               public int stamp;
+               [CCode (has_construct_function = false, sentinel = "")]
+               public TreeStore (int n_columns, ...);
+               public void append (out Gtk.TreeIter iter, Gtk.TreeIter? parent);
+               public void clear ();
+               public void insert (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int position);
+               public void insert_after (out Gtk.TreeIter iter, Gtk.TreeIter? parent, Gtk.TreeIter? sibling);
+               public void insert_before (out Gtk.TreeIter iter, Gtk.TreeIter? parent, Gtk.TreeIter? sibling);
+               [CCode (sentinel = "-1")]
+               public void insert_with_values (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int position, ...);
+               public void insert_with_valuesv (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int position, [CCode (array_length_pos = 5.1)] int[] columns, [CCode (array_length_pos = 5.1)] GLib.Value[] values);
+               public bool is_ancestor (Gtk.TreeIter iter, Gtk.TreeIter descendant);
+               public int iter_depth (Gtk.TreeIter iter);
+               public bool iter_is_valid (Gtk.TreeIter iter);
+               public void move_after (ref Gtk.TreeIter iter, Gtk.TreeIter? position);
+               public void move_before (ref Gtk.TreeIter iter, Gtk.TreeIter? position);
+               [CCode (cname = "gtk_tree_store_newv", has_construct_function = false)]
+               public TreeStore.newv ([CCode (array_length_pos = 0.9)] GLib.Type[] types);
+               public void prepend (out Gtk.TreeIter iter, Gtk.TreeIter? parent);
+               public bool remove (ref Gtk.TreeIter iter);
+               public void reorder (Gtk.TreeIter? parent, int new_order);
+               [CCode (sentinel = "-1")]
+               public void @set (Gtk.TreeIter iter, ...);
+               public void set_column_types ([CCode (array_length_pos = 0.9)] GLib.Type[] types);
+               public void set_valist (Gtk.TreeIter iter, void* var_args);
+               public void set_value (Gtk.TreeIter iter, int column, GLib.Value value);
+               public void set_valuesv (Gtk.TreeIter iter, int columns, GLib.Value[] values);
+               public void swap (Gtk.TreeIter a, Gtk.TreeIter b);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TreeView : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public TreeView ();
+               public int append_column (Gtk.TreeViewColumn column);
+               public void collapse_all ();
+               public bool collapse_row (Gtk.TreePath path);
+               public void columns_autosize ();
+               public void convert_bin_window_to_tree_coords (int bx, int by, out int tx, out int ty);
+               public void convert_bin_window_to_widget_coords (int bx, int by, out int wx, out int wy);
+               public void convert_tree_to_bin_window_coords (int tx, int ty, out int bx, out int by);
+               public void convert_tree_to_widget_coords (int tx, int ty, out int wx, out int wy);
+               public void convert_widget_to_bin_window_coords (int wx, int wy, out int bx, out int by);
+               public void convert_widget_to_tree_coords (int wx, int wy, out int tx, out int ty);
+               public Gdk.Pixmap create_row_drag_icon (Gtk.TreePath path);
+               public void enable_model_drag_dest (Gtk.TargetEntry[] targets, Gdk.DragAction actions);
+               public void enable_model_drag_source (Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions);
+               public void expand_all ();
+               public bool expand_row (Gtk.TreePath path, bool open_all);
+               public void expand_to_path (Gtk.TreePath path);
+               public void get_background_area (Gtk.TreePath? path, Gtk.TreeViewColumn? column, out Gdk.Rectangle rect);
+               public unowned Gdk.Window get_bin_window ();
+               public void get_cell_area (Gtk.TreePath? path, Gtk.TreeViewColumn? column, out Gdk.Rectangle rect);
+               public unowned Gtk.TreeViewColumn get_column (int n);
+               public GLib.List<weak Gtk.TreeViewColumn> get_columns ();
+               public void get_cursor (out Gtk.TreePath? path, out unowned Gtk.TreeViewColumn? focus_column);
+               public bool get_dest_row_at_pos (int drag_x, int drag_y, out Gtk.TreePath? path, out Gtk.TreeViewDropPosition pos);
+               public void get_drag_dest_row (out Gtk.TreePath? path, out Gtk.TreeViewDropPosition pos);
+               public bool get_enable_search ();
+               public bool get_enable_tree_lines ();
+               public unowned Gtk.TreeViewColumn get_expander_column ();
+               public bool get_fixed_height_mode ();
+               public Gtk.TreeViewGridLines get_grid_lines ();
+               public unowned Gtk.Adjustment get_hadjustment ();
+               public bool get_headers_clickable ();
+               public bool get_headers_visible ();
+               public bool get_hover_expand ();
+               public bool get_hover_selection ();
+               public int get_level_indentation ();
+               public unowned Gtk.TreeModel get_model ();
+               public bool get_path_at_pos (int x, int y, out Gtk.TreePath? path, out unowned Gtk.TreeViewColumn? column, out int cell_x, out int cell_y);
+               public bool get_reorderable ();
+               public unowned Gtk.TreeViewRowSeparatorFunc get_row_separator_func ();
+               public bool get_rubber_banding ();
+               public bool get_rules_hint ();
+               public int get_search_column ();
+               public unowned Gtk.Entry get_search_entry ();
+               public unowned Gtk.TreeViewSearchEqualFunc get_search_equal_func ();
+               public unowned Gtk.TreeViewSearchPositionFunc get_search_position_func ();
+               public unowned Gtk.TreeSelection get_selection ();
+               public bool get_show_expanders ();
+               public int get_tooltip_column ();
+               public bool get_tooltip_context (ref int x, ref int y, bool keyboard_tip, out unowned Gtk.TreeModel model, out unowned Gtk.TreePath path, out Gtk.TreeIter iter);
+               public unowned Gtk.Adjustment get_vadjustment ();
+               public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path);
+               public void get_visible_rect (out Gdk.Rectangle visible_rect);
+               public int insert_column (Gtk.TreeViewColumn column, int position);
+               public int insert_column_with_attributes (int position, string? title, Gtk.CellRenderer cell, ...);
+               public int insert_column_with_data_func (int position, string title, Gtk.CellRenderer cell, owned Gtk.TreeCellDataFunc func);
+               [CCode (cname = "gtk_tree_view_row_expanded")]
+               public bool is_row_expanded (Gtk.TreePath path);
+               public bool is_rubber_banding_active ();
+               public void map_expanded_rows (Gtk.TreeViewMappingFunc func);
+               public void move_column_after (Gtk.TreeViewColumn column, Gtk.TreeViewColumn base_column);
+               public int remove_column (Gtk.TreeViewColumn column);
+               public void scroll_to_cell (Gtk.TreePath? path, Gtk.TreeViewColumn? column, bool use_align, float row_align, float col_align);
+               public void scroll_to_point (int tree_x, int tree_y);
+               public void set_column_drag_function (owned Gtk.TreeViewColumnDropFunc func);
+               public void set_cursor (Gtk.TreePath path, Gtk.TreeViewColumn? focus_column, bool start_editing);
+               public void set_cursor_on_cell (Gtk.TreePath path, Gtk.TreeViewColumn focus_column, Gtk.CellRenderer focus_cell, bool start_editing);
+               public void set_destroy_count_func (owned Gtk.TreeDestroyCountFunc func);
+               public void set_drag_dest_row (Gtk.TreePath? path, Gtk.TreeViewDropPosition pos);
+               public void set_enable_search (bool enable_search);
+               public void set_enable_tree_lines (bool enabled);
+               public void set_expander_column (Gtk.TreeViewColumn column);
+               public void set_fixed_height_mode (bool enable);
+               public void set_grid_lines (Gtk.TreeViewGridLines grid_lines);
+               public void set_hadjustment (Gtk.Adjustment adjustment);
+               public void set_headers_clickable (bool setting);
+               public void set_headers_visible (bool headers_visible);
+               public void set_hover_expand (bool expand);
+               public void set_hover_selection (bool hover);
+               public void set_level_indentation (int indentation);
+               public void set_model (Gtk.TreeModel? model);
+               public void set_reorderable (bool reorderable);
+               public void set_row_separator_func (owned Gtk.TreeViewRowSeparatorFunc func);
+               public void set_rubber_banding (bool enable);
+               public void set_rules_hint (bool setting);
+               public void set_search_column (int column);
+               public void set_search_entry (Gtk.Entry entry);
+               public void set_search_equal_func (owned Gtk.TreeViewSearchEqualFunc search_equal_func);
+               public void set_search_position_func (owned Gtk.TreeViewSearchPositionFunc func);
+               public void set_show_expanders (bool enabled);
+               public void set_tooltip_cell (Gtk.Tooltip tooltip, Gtk.TreePath path, Gtk.TreeViewColumn column, Gtk.CellRenderer cell);
+               public void set_tooltip_column (int column);
+               public void set_tooltip_row (Gtk.Tooltip tooltip, Gtk.TreePath path);
+               public void set_vadjustment (Gtk.Adjustment adjustment);
+               public void unset_rows_drag_dest ();
+               public void unset_rows_drag_source ();
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public TreeView.with_model (Gtk.TreeModel model);
+               [NoAccessorMethod]
+               public Gtk.TreeViewGridLines enable_grid_lines { get; set; }
+               public bool enable_search { get; set; }
+               public bool enable_tree_lines { get; set; }
+               public Gtk.TreeViewColumn expander_column { get; set; }
+               public bool fixed_height_mode { get; set; }
+               public Gtk.Adjustment hadjustment { get; set; }
+               public bool headers_clickable { get; set; }
+               public bool headers_visible { get; set; }
+               public bool hover_expand { get; set; }
+               public bool hover_selection { get; set; }
+               public int level_indentation { get; set; }
+               public Gtk.TreeModel model { get; set; }
+               public bool reorderable { get; set; }
+               public bool rubber_banding { get; set; }
+               public bool rules_hint { get; set; }
+               public int search_column { get; set; }
+               public bool show_expanders { get; set; }
+               public int tooltip_column { get; set; }
+               public Gtk.Adjustment vadjustment { get; set; }
+               public virtual signal void columns_changed ();
+               public virtual signal void cursor_changed ();
+               public virtual signal bool expand_collapse_cursor_row (bool logical, bool expand, bool open_all);
+               public virtual signal bool move_cursor (Gtk.MovementStep step, int count);
+               [HasEmitter]
+               public virtual signal void row_activated (Gtk.TreePath path, Gtk.TreeViewColumn column);
+               public virtual signal void row_collapsed (Gtk.TreeIter iter, Gtk.TreePath path);
+               public virtual signal void row_expanded (Gtk.TreeIter iter, Gtk.TreePath path);
+               public virtual signal bool select_all ();
+               public virtual signal bool select_cursor_parent ();
+               public virtual signal bool select_cursor_row (bool start_editing);
+               public virtual signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+               public virtual signal bool start_interactive_search ();
+               public virtual signal bool test_collapse_row (Gtk.TreeIter iter, Gtk.TreePath path);
+               public virtual signal bool test_expand_row (Gtk.TreeIter iter, Gtk.TreePath path);
+               public virtual signal bool toggle_cursor_row ();
+               public virtual signal bool unselect_all ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class TreeViewColumn : Gtk.Object, Gtk.CellLayout, Gtk.Buildable {
+               public weak Gtk.Widget arrow;
+               public weak Gtk.Widget button;
+               public int button_request;
+               public weak GLib.List cell_list;
+               public weak Gtk.Widget child;
+               public Gtk.TreeViewColumnSizing column_type;
+               public uint dirty;
+               public int drag_x;
+               public int drag_y;
+               public weak Gtk.CellEditable editable_widget;
+               public uint maybe_reordered;
+               public uint property_changed_signal;
+               public int requested_width;
+               public int resized_width;
+               public uint show_sort_indicator;
+               public uint sort_clicked_signal;
+               public uint sort_column_changed_signal;
+               public weak Gtk.Widget tree_view;
+               public uint use_resized_width;
+               public weak Gdk.Window window;
+               public float xalign;
+               [CCode (has_construct_function = false)]
+               public TreeViewColumn ();
+               public bool cell_get_position (Gtk.CellRenderer cell_renderer, out int start_pos, out int width);
+               public void cell_get_size (out Gdk.Rectangle cell_area, out int x_offset, out int y_offset, out int width, out int height);
+               public bool cell_is_visible ();
+               public void cell_set_cell_data (Gtk.TreeModel tree_model, Gtk.TreeIter iter, bool is_expander, bool is_expanded);
+               public void focus_cell (Gtk.CellRenderer cell);
+               public float get_alignment ();
+               public bool get_clickable ();
+               public bool get_expand ();
+               public int get_fixed_width ();
+               public int get_max_width ();
+               public int get_min_width ();
+               public bool get_reorderable ();
+               public bool get_resizable ();
+               public Gtk.TreeViewColumnSizing get_sizing ();
+               public int get_sort_column_id ();
+               public bool get_sort_indicator ();
+               public Gtk.SortType get_sort_order ();
+               public int get_spacing ();
+               public unowned string get_title ();
+               public unowned Gtk.Widget get_tree_view ();
+               public bool get_visible ();
+               public unowned Gtk.Widget get_widget ();
+               public int get_width ();
+               public void queue_resize ();
+               public void set_alignment (float xalign);
+               public void set_attributes (Gtk.CellRenderer cell_renderer, ...);
+               public void set_clickable (bool clickable);
+               public void set_expand (bool expand);
+               public void set_fixed_width (int fixed_width);
+               public void set_max_width (int max_width);
+               public void set_min_width (int min_width);
+               public void set_reorderable (bool reorderable);
+               public void set_resizable (bool resizable);
+               public void set_sizing (Gtk.TreeViewColumnSizing type);
+               public void set_sort_column_id (int sort_column_id);
+               public void set_sort_indicator (bool setting);
+               public void set_sort_order (Gtk.SortType order);
+               public void set_spacing (int spacing);
+               public void set_title (string title);
+               public void set_visible (bool visible);
+               public void set_widget (Gtk.Widget widget);
+               [CCode (has_construct_function = false)]
+               public TreeViewColumn.with_attributes (string? title, Gtk.CellRenderer cell, ...);
+               public float alignment { get; set; }
+               public bool clickable { get; set; }
+               public bool expand { get; set; }
+               public int fixed_width { get; set; }
+               public int max_width { get; set; }
+               public int min_width { get; set; }
+               public bool reorderable { get; set; }
+               public bool resizable { get; set; }
+               public Gtk.TreeViewColumnSizing sizing { get; set; }
+               public int sort_column_id { get; set; }
+               public bool sort_indicator { get; set; }
+               public Gtk.SortType sort_order { get; set; }
+               public int spacing { get; set; }
+               public string title { get; set; }
+               public bool visible { get; set; }
+               public Gtk.Widget widget { get; set; }
+               public int width { get; }
+               [HasEmitter]
+               public virtual signal void clicked ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class UIManager : GLib.Object, Gtk.Buildable {
+               [CCode (has_construct_function = false)]
+               public UIManager ();
+               public void add_ui (uint merge_id, string path, string name, string? action, Gtk.UIManagerItemType type, bool top);
+               public uint add_ui_from_file (string filename) throws GLib.Error;
+               public uint add_ui_from_string (string buffer, ssize_t length) throws GLib.Error;
+               public void ensure_update ();
+               public unowned Gtk.AccelGroup get_accel_group ();
+               public virtual unowned Gtk.Action get_action (string path);
+               public unowned GLib.List<Gtk.ActionGroup> get_action_groups ();
+               public bool get_add_tearoffs ();
+               public GLib.SList<weak Gtk.Widget> get_toplevels (Gtk.UIManagerItemType types);
+               public string get_ui ();
+               public virtual unowned Gtk.Widget get_widget (string path);
+               public void insert_action_group (Gtk.ActionGroup action_group, int pos);
+               public uint new_merge_id ();
+               public void remove_action_group (Gtk.ActionGroup action_group);
+               public void remove_ui (uint merge_id);
+               public void set_add_tearoffs (bool add_tearoffs);
+               public bool add_tearoffs { get; set; }
+               public string ui { owned get; }
+               public virtual signal void actions_changed ();
+               public virtual signal void add_widget (Gtk.Widget widget);
+               public virtual signal void connect_proxy (Gtk.Action action, Gtk.Widget proxy);
+               public virtual signal void disconnect_proxy (Gtk.Action action, Gtk.Widget proxy);
+               public virtual signal void post_activate (Gtk.Action action);
+               public virtual signal void pre_activate (Gtk.Action action);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VBox (bool homogeneous, int spacing);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VButtonBox ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VPaned ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VRuler : Gtk.Ruler, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VRuler ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VScale (Gtk.Adjustment? adjustment);
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VScale.with_range (double min, double max, double step);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VScrollbar : Gtk.Scrollbar, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VScrollbar (Gtk.Adjustment? adjustment);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VSeparator ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Viewport : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               public weak Gdk.Window bin_window;
+               public weak Gdk.Window view_window;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Viewport (Gtk.Adjustment? hadjustment, Gtk.Adjustment? vadjustment);
+               public unowned Gdk.Window get_bin_window ();
+               public unowned Gtk.Adjustment get_hadjustment ();
+               public Gtk.ShadowType get_shadow_type ();
+               public unowned Gtk.Adjustment get_vadjustment ();
+               public unowned Gdk.Window get_view_window ();
+               public void set_hadjustment (Gtk.Adjustment adjustment);
+               public void set_shadow_type (Gtk.ShadowType type);
+               public void set_vadjustment (Gtk.Adjustment adjustment);
+               public Gtk.Adjustment hadjustment { get; set construct; }
+               public Gtk.ShadowType shadow_type { get; set; }
+               public Gtk.Adjustment vadjustment { get; set construct; }
+               public virtual signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class VolumeButton : Gtk.ScaleButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Orientable {
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public VolumeButton ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Widget : Gtk.Object, Atk.Implementor, Gtk.Buildable {
+               public Gtk.Allocation allocation;
+               public Gtk.Requisition requisition;
+               public uchar saved_state;
+               public class uint set_scroll_adjustments_signal;
+               public uchar state;
+               public Gdk.Window window;
+               [CCode (construct_function = "gtk_widget_new", has_new_function = false)]
+               public Widget (...);
+               public bool activate ();
+               public void add_accelerator (string accel_signal, Gtk.AccelGroup accel_group, uint accel_key, Gdk.ModifierType accel_mods, Gtk.AccelFlags accel_flags);
+               public void add_events (int events);
+               public void add_mnemonic_label (Gtk.Widget label);
+               public bool child_focus (Gtk.DirectionType direction);
+               public void class_path (out uint path_length, out string path, out string path_reversed);
+               public Pango.Context create_pango_context ();
+               public Pango.Layout create_pango_layout (string? text);
+               public void destroyed (out unowned Gtk.Widget widget_pointer);
+               [NoWrapper]
+               public virtual void dispatch_child_properties_changed ([CCode (array_length_pos = 0.5)] out GLib.ParamSpec[] pspecs);
+               public void ensure_style ();
+               public void error_bell ();
+               [CCode (cname = "gtk_widget_class_find_style_property")]
+               public class unowned GLib.ParamSpec find_style_property (string property_name);
+               public void freeze_child_notify ();
+               public virtual unowned Atk.Object get_accessible ();
+               public void get_allocation (out Gtk.Allocation allocation);
+               public unowned Gtk.Widget get_ancestor (GLib.Type widget_type);
+               public bool get_app_paintable ();
+               public bool get_can_default ();
+               public bool get_can_focus ();
+               public void get_child_requisition (out Gtk.Requisition requisition);
+               public bool get_child_visible ();
+               public unowned Gtk.Clipboard get_clipboard (Gdk.Atom selection);
+               public unowned Gdk.Colormap get_colormap ();
+               public string get_composite_name ();
+               public static unowned Gdk.Colormap get_default_colormap ();
+               public static Gtk.TextDirection get_default_direction ();
+               public static unowned Gtk.Style get_default_style ();
+               public static unowned Gdk.Visual get_default_visual ();
+               public Gtk.TextDirection get_direction ();
+               public unowned Gdk.Display get_display ();
+               public bool get_double_buffered ();
+               public int get_events ();
+               public Gdk.ExtensionMode get_extension_events ();
+               [CCode (cname = "GTK_WIDGET_FLAGS")]
+               public Gtk.WidgetFlags get_flags ();
+               public bool get_has_tooltip ();
+               public bool get_has_window ();
+               public bool get_mapped ();
+               public unowned Gtk.RcStyle get_modifier_style ();
+               public bool get_no_show_all ();
+               public unowned Pango.Context get_pango_context ();
+               [CCode (type = "GtkWidget*")]
+               public unowned Gtk.Container? get_parent ();
+               public unowned Gdk.Window get_parent_window ();
+               public void get_pointer (out int x, out int y);
+               public bool get_realized ();
+               public bool get_receives_default ();
+               public Gtk.Requisition get_requisition ();
+               public unowned Gdk.Window get_root_window ();
+               public unowned Gdk.Screen get_screen ();
+               public bool get_sensitive ();
+               public unowned Gtk.Settings get_settings ();
+               public void get_size_request (out int width, out int height);
+               public unowned Gdk.Pixmap get_snapshot (Gdk.Rectangle clip_rect);
+               public Gtk.StateType get_state ();
+               public unowned Gtk.Style get_style ();
+               public string get_tooltip_markup ();
+               public string get_tooltip_text ();
+               public unowned Gtk.Window get_tooltip_window ();
+               public unowned Gtk.Widget get_toplevel ();
+               public bool get_visible ();
+               public unowned Gdk.Visual get_visual ();
+               public unowned Gdk.Window get_window ();
+               public void grab_default ();
+               [CCode (cname = "GTK_WIDGET_HAS_GRAB")]
+               public bool has_grab ();
+               public bool has_rc_style ();
+               public bool has_screen ();
+               public virtual void hide_all ();
+               public bool hide_on_delete ();
+               public void input_shape_combine_mask (Gdk.Bitmap? shape_mask, int offset_x, int offset_y);
+               [CCode (cname = "gtk_widget_class_install_style_property")]
+               public class void install_style_property (GLib.ParamSpec pspec);
+               [CCode (cname = "gtk_widget_class_install_style_property_parser")]
+               public class void install_style_property_parser (GLib.ParamSpec pspec, Gtk.RcPropertyParser parser);
+               public bool intersect (Gdk.Rectangle area, Gdk.Rectangle? intersection);
+               public bool is_ancestor (Gtk.Widget ancestor);
+               public bool is_composited ();
+               [CCode (cname = "GTK_WIDGET_DOUBLE_BUFFERED")]
+               public bool is_double_buffered ();
+               [CCode (cname = "GTK_WIDGET_DRAWABLE")]
+               public bool is_drawable ();
+               [CCode (cname = "GTK_WIDGET_MAPPED")]
+               public bool is_mapped ();
+               [CCode (cname = "GTK_WIDGET_NO_WINDOW")]
+               public bool is_no_window ();
+               [CCode (cname = "GTK_WIDGET_PARENT_SENSITIVE")]
+               public bool is_parent_sensitive ();
+               [CCode (cname = "GTK_WIDGET_RC_STYLE")]
+               public bool is_rc_style ();
+               [CCode (cname = "GTK_WIDGET_REALIZED")]
+               public bool is_realized ();
+               public bool is_sensitive ();
+               [CCode (cname = "GTK_WIDGET_TOPLEVEL")]
+               public bool is_toplevel ();
+               public GLib.List<weak GLib.Closure> list_accel_closures ();
+               public GLib.List<weak Gtk.Widget> list_mnemonic_labels ();
+               [CCode (array_length_type = "guint", cname = "gtk_widget_class_list_style_properties")]
+               public class (unowned GLib.ParamSpec)[] list_style_properties ();
+               public void modify_base (Gtk.StateType state, Gdk.Color? color);
+               public void modify_bg (Gtk.StateType state, Gdk.Color? color);
+               public void modify_cursor (Gdk.Color? primary, Gdk.Color? secondary);
+               public void modify_fg (Gtk.StateType state, Gdk.Color? color);
+               public void modify_font (Pango.FontDescription? font_desc);
+               public void modify_style (Gtk.RcStyle style);
+               public void modify_text (Gtk.StateType state, Gdk.Color? color);
+               public void path (out uint path_length, out string path, out string path_reversed);
+               public static void pop_colormap ();
+               public static void pop_composite_child ();
+               public static void push_colormap (Gdk.Colormap cmap);
+               public static void push_composite_child ();
+               public void queue_draw ();
+               public void queue_draw_area (int x, int y, int width, int height);
+               public void queue_resize ();
+               public void queue_resize_no_redraw ();
+               public Gdk.Region region_intersect (Gdk.Region region);
+               public bool remove_accelerator (Gtk.AccelGroup accel_group, uint accel_key, Gdk.ModifierType accel_mods);
+               public void remove_mnemonic_label (Gtk.Widget label);
+               public Gdk.Pixbuf render_icon (string stock_id, Gtk.IconSize size, string? detail);
+               public void reparent (Gtk.Widget new_parent);
+               public void reset_rc_styles ();
+               public void reset_shapes ();
+               public int send_expose (Gdk.Event event);
+               public bool send_focus_change (Gdk.Event event);
+               public void set_accel_path (string accel_path, Gtk.AccelGroup accel_group);
+               public void set_allocation (Gtk.Allocation allocation);
+               public void set_app_paintable (bool app_paintable);
+               public void set_can_default (bool can_default);
+               public void set_can_focus (bool can_focus);
+               public void set_child_visible (bool is_visible);
+               public void set_colormap (Gdk.Colormap colormap);
+               public void set_composite_name (string name);
+               public static void set_default_colormap (Gdk.Colormap colormap);
+               public static void set_default_direction (Gtk.TextDirection dir);
+               public void set_direction (Gtk.TextDirection dir);
+               public void set_double_buffered (bool double_buffered);
+               public void set_events (int events);
+               public void set_extension_events (Gdk.ExtensionMode mode);
+               [CCode (cname = "GTK_WIDGET_SET_FLAGS")]
+               public void set_flags (Gtk.WidgetFlags flags);
+               public void set_has_tooltip (bool has_tooltip);
+               public void set_has_window (bool has_window);
+               public void set_mapped (bool mapped);
+               public void set_no_show_all (bool no_show_all);
+               public void set_parent ([CCode (type = "GtkWidget*")] Gtk.Container parent);
+               public void set_parent_window (Gdk.Window parent_window);
+               public void set_realized (bool realized);
+               public void set_receives_default (bool receives_default);
+               public void set_redraw_on_allocate (bool redraw_on_allocate);
+               public bool set_scroll_adjustments (Gtk.Adjustment? hadjustment, Gtk.Adjustment? vadjustment);
+               public void set_sensitive (bool sensitive);
+               public void set_size_request (int width, int height);
+               public void set_state (Gtk.StateType state);
+               public void set_style (Gtk.Style? style);
+               public void set_tooltip_markup (string markup);
+               public void set_tooltip_text (string text);
+               public void set_tooltip_window (Gtk.Window custom_window);
+               public void set_visible (bool visible);
+               public void set_window (Gdk.Window window);
+               public void shape_combine_mask (Gdk.Bitmap? shape_mask, int offset_x, int offset_y);
+               public virtual void show_all ();
+               public void show_now ();
+               public void style_attach ();
+               public void style_get (...);
+               public void style_get_property (string property_name, ref GLib.Value value);
+               public void style_get_valist (string first_property_name, va_list var_args);
+               public void thaw_child_notify ();
+               public bool translate_coordinates (Gtk.Widget dest_widget, int src_x, int src_y, out int dest_x, out int dest_y);
+               public void trigger_tooltip_query ();
+               public void unparent ();
+               [CCode (cname = "GTK_WIDGET_UNSET_FLAGS")]
+               public void unset_flags (Gtk.WidgetFlags flags);
+               public bool app_paintable { get; set; }
+               public bool can_default { get; set; }
+               [NoAccessorMethod]
+               public bool can_focus { get; set; }
+               [NoAccessorMethod]
+               public bool composite_child { get; }
+               public bool double_buffered { get; set; }
+               public Gdk.EventMask events { get; set; }
+               public Gdk.ExtensionMode extension_events { get; set; }
+               [NoAccessorMethod]
+               public bool has_default { get; set; }
+               [NoAccessorMethod]
+               public bool has_focus { get; set; }
+               public bool has_tooltip { get; set; }
+               [NoAccessorMethod]
+               public int height_request { get; set; }
+               [NoAccessorMethod]
+               public bool is_focus { get; set; }
+               public string name { get; set; }
+               public bool no_show_all { get; set; }
+               public Gtk.Container parent { get; set; }
+               public bool receives_default { get; set; }
+               public bool sensitive { get; set; }
+               public Gtk.Style style { get; set; }
+               public string tooltip_markup { owned get; set; }
+               public string tooltip_text { owned get; set; }
+               public bool visible { get; set; }
+               [NoAccessorMethod]
+               public int width_request { get; set; }
+               public virtual signal void accel_closures_changed ();
+               public virtual signal bool button_press_event (Gdk.EventButton event);
+               public virtual signal bool button_release_event (Gdk.EventButton event);
+               [HasEmitter]
+               public virtual signal bool can_activate_accel (uint signal_id);
+               [HasEmitter]
+               public virtual signal void child_notify (GLib.ParamSpec pspec);
+               public virtual signal bool client_event (Gdk.EventClient event);
+               public virtual signal void composited_changed ();
+               public virtual signal bool configure_event (Gdk.EventConfigure event);
+               public virtual signal bool damage_event (Gdk.Event p0);
+               public virtual signal bool delete_event (Gdk.Event event);
+               public virtual signal bool destroy_event (Gdk.Event event);
+               public virtual signal void direction_changed (Gtk.TextDirection previous_direction);
+               public virtual signal void drag_begin (Gdk.DragContext context);
+               public virtual signal void drag_data_delete (Gdk.DragContext context);
+               public virtual signal void drag_data_get (Gdk.DragContext context, Gtk.SelectionData selection_data, uint info, uint time_);
+               public virtual signal void drag_data_received (Gdk.DragContext context, int x, int y, Gtk.SelectionData selection_data, uint info, uint time_);
+               public virtual signal bool drag_drop (Gdk.DragContext context, int x, int y, uint time_);
+               public virtual signal void drag_end (Gdk.DragContext context);
+               public virtual signal bool drag_failed (Gdk.DragContext p0, Gtk.DragResult p1);
+               public virtual signal void drag_leave (Gdk.DragContext context, uint time_);
+               public virtual signal bool drag_motion (Gdk.DragContext context, int x, int y, uint time_);
+               public virtual signal bool enter_notify_event (Gdk.EventCrossing event);
+               [HasEmitter]
+               public virtual signal bool event (Gdk.Event event);
+               public virtual signal void event_after (Gdk.Event p0);
+               public virtual signal bool expose_event (Gdk.EventExpose event);
+               public virtual signal bool focus (Gtk.DirectionType direction);
+               public virtual signal bool focus_in_event (Gdk.EventFocus event);
+               public virtual signal bool focus_out_event (Gdk.EventFocus event);
+               public virtual signal bool grab_broken_event (Gdk.Event event);
+               [HasEmitter]
+               public virtual signal void grab_focus ();
+               public virtual signal void grab_notify (bool was_grabbed);
+               [HasEmitter]
+               public virtual signal void hide ();
+               public virtual signal void hierarchy_changed (Gtk.Widget? previous_toplevel);
+               public virtual signal bool key_press_event (Gdk.EventKey event);
+               public virtual signal bool key_release_event (Gdk.EventKey event);
+               [HasEmitter]
+               public virtual signal bool keynav_failed (Gtk.DirectionType p0);
+               public virtual signal bool leave_notify_event (Gdk.EventCrossing event);
+               [HasEmitter]
+               public virtual signal void map ();
+               public virtual signal bool map_event (Gdk.Event event);
+               [HasEmitter]
+               public virtual signal bool mnemonic_activate (bool group_cycling);
+               public virtual signal bool motion_notify_event (Gdk.EventMotion event);
+               public virtual signal void move_focus (Gtk.DirectionType p0);
+               public virtual signal bool no_expose_event (Gdk.EventNoExpose event);
+               public virtual signal void parent_set (Gtk.Widget? previous_parent);
+               public virtual signal bool popup_menu ();
+               public virtual signal bool property_notify_event (Gdk.EventProperty event);
+               public virtual signal bool proximity_in_event (Gdk.EventProximity event);
+               public virtual signal bool proximity_out_event (Gdk.EventProximity event);
+               public virtual signal bool query_tooltip (int x, int y, bool keyboard_tooltip, Gtk.Tooltip tooltip);
+               [HasEmitter]
+               public virtual signal void realize ();
+               public virtual signal void screen_changed (Gdk.Screen previous_screen);
+               public virtual signal bool scroll_event (Gdk.EventScroll event);
+               public virtual signal bool selection_clear_event (Gdk.EventSelection event);
+               public virtual signal void selection_get (Gtk.SelectionData selection_data, uint info, uint time_);
+               public virtual signal bool selection_notify_event (Gdk.EventSelection event);
+               public virtual signal void selection_received (Gtk.SelectionData selection_data, uint time_);
+               public virtual signal bool selection_request_event (Gdk.EventSelection event);
+               [HasEmitter]
+               public virtual signal void show ();
+               public virtual signal bool show_help (Gtk.WidgetHelpType help_type);
+               [HasEmitter]
+               public virtual signal void size_allocate (Gdk.Rectangle allocation);
+               [HasEmitter]
+               public virtual signal void size_request (out Gtk.Requisition requisition);
+               public virtual signal void state_changed (Gtk.StateType previous_state);
+               public virtual signal void style_set (Gtk.Style? previous_style);
+               [HasEmitter]
+               public virtual signal void unmap ();
+               public virtual signal bool unmap_event (Gdk.Event event);
+               [HasEmitter]
+               public virtual signal void unrealize ();
+               public virtual signal bool visibility_notify_event (Gdk.Event event);
+               public virtual signal bool window_state_event (Gdk.EventWindowState event);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class WidgetAuxInfo {
+               public int height;
+               public int width;
+               public int x;
+               public uint x_set;
+               public int y;
+               public uint y_set;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class WidgetShapeInfo {
+               public int16 offset_x;
+               public int16 offset_y;
+               public weak Gdk.Bitmap shape_mask;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class Window : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+               public uint configure_notify_received;
+               public uint16 configure_request_count;
+               public weak Gtk.Widget default_widget;
+               public weak Gtk.Widget focus_widget;
+               public weak Gdk.Window frame;
+               public uint frame_bottom;
+               public uint frame_left;
+               public uint frame_right;
+               public uint frame_top;
+               public weak Gtk.WindowGeometryInfo geometry_info;
+               public weak Gtk.WindowGroup group;
+               public uint has_focus;
+               public uint has_frame;
+               public uint has_user_ref_count;
+               public uint iconify_initially;
+               public uint keys_changed_handler;
+               public uint maximize_initially;
+               public Gdk.ModifierType mnemonic_modifier;
+               public uint need_default_position;
+               public uint need_default_size;
+               public uint position;
+               public uint stick_initially;
+               public weak Gtk.Window transient_parent;
+               public weak string wm_role;
+               public weak string wmclass_class;
+               public weak string wmclass_name;
+               [CCode (has_construct_function = false, type = "GtkWidget*")]
+               public Window (Gtk.WindowType type = Gtk.WindowType.TOPLEVEL);
+               public bool activate_default ();
+               public bool activate_focus ();
+               public bool activate_key (Gdk.EventKey event);
+               public void add_accel_group (Gtk.AccelGroup accel_group);
+               public void add_embedded_xid (Gdk.NativeWindow xid);
+               public void add_mnemonic (uint keyval, Gtk.Widget target);
+               public void begin_move_drag (int button, int root_x, int root_y, uint32 timestamp);
+               public void begin_resize_drag (Gdk.WindowEdge edge, int button, int root_x, int root_y, uint32 timestamp);
+               public void deiconify ();
+               public void fullscreen ();
+               public bool get_accept_focus ();
+               public bool get_decorated ();
+               public static GLib.List<weak Gdk.Pixbuf> get_default_icon_list ();
+               public static unowned string get_default_icon_name ();
+               public void get_default_size (out int width, out int height);
+               public unowned Gtk.Widget get_default_widget ();
+               public bool get_deletable ();
+               public bool get_destroy_with_parent ();
+               public unowned Gtk.Widget get_focus ();
+               public bool get_focus_on_map ();
+               public void get_frame_dimensions (int left, int top, int right, int bottom);
+               public Gdk.Gravity get_gravity ();
+               public unowned Gtk.WindowGroup get_group ();
+               public bool get_has_frame ();
+               public unowned Gdk.Pixbuf get_icon ();
+               public GLib.List<weak Gdk.Pixbuf> get_icon_list ();
+               public unowned string get_icon_name ();
+               public Gdk.ModifierType get_mnemonic_modifier ();
+               public bool get_mnemonics_visible ();
+               public bool get_modal ();
+               public double get_opacity ();
+               public void get_position (out int root_x, out int root_y);
+               public bool get_resizable ();
+               public unowned string get_role ();
+               public unowned Gdk.Screen get_screen ();
+               public void get_size (out int width, out int height);
+               public bool get_skip_pager_hint ();
+               public bool get_skip_taskbar_hint ();
+               public unowned string get_title ();
+               public unowned Gtk.Window get_transient_for ();
+               public Gdk.WindowTypeHint get_type_hint ();
+               public bool get_urgency_hint ();
+               public Gtk.WindowType get_window_type ();
+               public bool has_group ();
+               public void iconify ();
+               public static GLib.List<weak Gtk.Window> list_toplevels ();
+               public void maximize ();
+               public bool mnemonic_activate (uint keyval, Gdk.ModifierType modifier);
+               public void move (int x, int y);
+               [NoWrapper]
+               public virtual void move_focus (Gtk.DirectionType direction);
+               public bool parse_geometry (string geometry);
+               public void present ();
+               public void present_with_time (uint32 timestamp);
+               public bool propagate_key_event (Gdk.EventKey event);
+               public void remove_accel_group (Gtk.AccelGroup accel_group);
+               public void remove_embedded_xid (Gdk.NativeWindow xid);
+               public void remove_mnemonic (uint keyval, Gtk.Widget target);
+               public void reshow_with_initial_size ();
+               public void resize (int width, int height);
+               public void set_accept_focus (bool setting);
+               public static void set_auto_startup_notification (bool setting);
+               public void set_decorated (bool setting);
+               public void set_default (Gtk.Widget default_widget);
+               public static void set_default_icon (Gdk.Pixbuf icon);
+               public static bool set_default_icon_from_file (string filename) throws GLib.Error;
+               public static void set_default_icon_list (owned GLib.List<weak Gdk.Pixbuf> list);
+               public static void set_default_icon_name (string name);
+               public void set_default_size (int width, int height);
+               public void set_deletable (bool setting);
+               public void set_destroy_with_parent (bool setting);
+               public void set_focus_on_map (bool setting);
+               public void set_frame_dimensions (int left, int top, int right, int bottom);
+               public void set_geometry_hints (Gtk.Widget geometry_widget, Gdk.Geometry geometry, Gdk.WindowHints geom_mask);
+               public void set_gravity (Gdk.Gravity gravity);
+               public void set_has_frame (bool setting);
+               public void set_icon (Gdk.Pixbuf icon);
+               public bool set_icon_from_file (string filename) throws GLib.Error;
+               public void set_icon_list (GLib.List<Gdk.Pixbuf> list);
+               public void set_icon_name (string name);
+               public void set_keep_above (bool setting);
+               public void set_keep_below (bool setting);
+               public void set_mnemonic_modifier (Gdk.ModifierType modifier);
+               public void set_mnemonics_visible (bool setting);
+               public void set_modal (bool modal);
+               public void set_opacity (double opacity);
+               public void set_position (Gtk.WindowPosition position);
+               public void set_resizable (bool resizable);
+               public void set_role (string role);
+               public void set_screen (Gdk.Screen screen);
+               public void set_skip_pager_hint (bool setting);
+               public void set_skip_taskbar_hint (bool setting);
+               public void set_startup_id (string startup_id);
+               public void set_title (string title);
+               public void set_transient_for (Gtk.Window parent);
+               public void set_type_hint (Gdk.WindowTypeHint hint);
+               public void set_urgency_hint (bool setting);
+               public void set_wmclass (string wmclass_name, string wmclass_class);
+               public void stick ();
+               public void unfullscreen ();
+               public void unmaximize ();
+               public void unstick ();
+               public bool accept_focus { get; set; }
+               [NoAccessorMethod]
+               public bool allow_grow { get; set; }
+               [NoAccessorMethod]
+               public bool allow_shrink { get; set; }
+               public bool decorated { get; set; }
+               [NoAccessorMethod]
+               public int default_height { get; set; }
+               [NoAccessorMethod]
+               public int default_width { get; set; }
+               public bool deletable { get; set; }
+               public bool destroy_with_parent { get; set; }
+               public bool focus_on_map { get; set; }
+               public Gdk.Gravity gravity { get; set; }
+               [NoAccessorMethod]
+               public bool has_toplevel_focus { get; }
+               public Gdk.Pixbuf icon { get; set; }
+               public string icon_name { get; set; }
+               [NoAccessorMethod]
+               public bool is_active { get; }
+               public bool mnemonics_visible { get; set; }
+               public bool modal { get; set; }
+               public double opacity { get; set; }
+               public bool resizable { get; set; }
+               public string role { get; set; }
+               public Gdk.Screen screen { get; set; }
+               public bool skip_pager_hint { get; set; }
+               public bool skip_taskbar_hint { get; set; }
+               public string startup_id { set; }
+               public string title { get; set; }
+               public Gtk.Window transient_for { get; set construct; }
+               [NoAccessorMethod]
+               public Gtk.WindowType type { get; construct; }
+               public Gdk.WindowTypeHint type_hint { get; set; }
+               public bool urgency_hint { get; set; }
+               [NoAccessorMethod]
+               public Gtk.WindowPosition window_position { get; set; }
+               [CCode (cname = "activate_default")]
+               [Version (experimental = true)]
+               public virtual signal void default_activated ();
+               [CCode (cname = "activate_focus")]
+               [Version (experimental = true)]
+               public virtual signal void focus_activated ();
+               public virtual signal bool frame_event (Gdk.Event event);
+               public virtual signal void keys_changed ();
+               [HasEmitter]
+               public virtual signal void set_focus (Gtk.Widget? focus);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Compact]
+       public class WindowGeometryInfo {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public class WindowGroup : GLib.Object {
+               public weak GLib.SList grabs;
+               [CCode (has_construct_function = false)]
+               public WindowGroup ();
+               public void add_window (Gtk.Window window);
+               public unowned Gtk.Widget get_current_grab ();
+               public GLib.List<weak Gtk.Window> list_windows ();
+               public void remove_window (Gtk.Window window);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface Activatable : GLib.Object {
+               public void do_set_related_action (Gtk.Action action);
+               public unowned Gtk.Action get_related_action ();
+               public bool get_use_action_appearance ();
+               public void set_related_action (Gtk.Action action);
+               public void set_use_action_appearance (bool use_appearance);
+               public abstract void sync_action_properties (Gtk.Action action);
+               [NoWrapper]
+               public abstract void update (Gtk.Action action, string property_name);
+               public Gtk.Action related_action { get; set; }
+               public bool use_action_appearance { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface Buildable : GLib.Object {
+               public abstract void add_child (Gtk.Builder builder, GLib.Object child, string? type);
+               public abstract GLib.Object construct_child (Gtk.Builder builder, string name);
+               public abstract void custom_finished (Gtk.Builder builder, GLib.Object? child, string tagname, void* data);
+               public abstract void custom_tag_end (Gtk.Builder builder, GLib.Object? child, string tagname, out void* data);
+               public abstract bool custom_tag_start (Gtk.Builder builder, GLib.Object? child, string tagname, out GLib.MarkupParser parser, out void* data);
+               public abstract unowned GLib.Object get_internal_child (Gtk.Builder builder, string childname);
+               public abstract unowned string get_name ();
+               public abstract void parser_finished (Gtk.Builder builder);
+               public abstract void set_buildable_property (Gtk.Builder builder, string name, GLib.Value value);
+               public abstract void set_name (string name);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface CellEditable : Gtk.Widget {
+               public abstract void start_editing (Gdk.Event? event);
+               [NoAccessorMethod]
+               public bool editing_canceled { get; set; }
+               [HasEmitter]
+               public signal void editing_done ();
+               [HasEmitter]
+               public signal void remove_widget ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface CellLayout : GLib.Object {
+               public abstract void add_attribute (Gtk.CellRenderer cell, string attribute, int column);
+               public abstract void clear ();
+               public abstract void clear_attributes (Gtk.CellRenderer cell);
+               public abstract GLib.List<weak Gtk.CellRenderer> get_cells ();
+               public abstract void pack_end (Gtk.CellRenderer cell, bool expand);
+               public abstract void pack_start (Gtk.CellRenderer cell, bool expand);
+               public abstract void reorder (Gtk.CellRenderer cell, int position);
+               public void set_attributes (Gtk.CellRenderer cell, ...);
+               public abstract void set_cell_data_func (Gtk.CellRenderer cell, owned Gtk.CellLayoutDataFunc func);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface Editable : GLib.Object {
+               public void copy_clipboard ();
+               public void cut_clipboard ();
+               public void delete_selection ();
+               [NoWrapper]
+               public abstract void do_delete_text (int start_pos, int end_pos);
+               [NoWrapper]
+               public abstract void do_insert_text (string text, int length, ref int position);
+               public abstract string get_chars (int start_pos, int end_pos);
+               public bool get_editable ();
+               public abstract int get_position ();
+               public abstract bool get_selection_bounds (out int start_pos, out int end_pos);
+               public void paste_clipboard ();
+               [CCode (vfunc_name = "set_selection_bounds")]
+               public abstract void select_region (int start_pos, int end_pos);
+               public void set_editable (bool is_editable);
+               public abstract void set_position (int position);
+               public signal void changed ();
+               [HasEmitter]
+               public signal void delete_text (int start_pos, int end_pos);
+               [HasEmitter]
+               public signal void insert_text (string text, int length, ref int position);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface FileChooser : Gtk.Widget {
+               public void add_filter (owned Gtk.FileFilter filter);
+               public bool add_shortcut_folder (string folder) throws GLib.Error;
+               public bool add_shortcut_folder_uri (string uri) throws GLib.Error;
+               public static GLib.Quark error_quark ();
+               public Gtk.FileChooserAction get_action ();
+               public bool get_create_folders ();
+               public string get_current_folder ();
+               public GLib.File get_current_folder_file ();
+               public string get_current_folder_uri ();
+               public bool get_do_overwrite_confirmation ();
+               public unowned Gtk.Widget get_extra_widget ();
+               public GLib.File get_file ();
+               public string get_filename ();
+               public GLib.SList<string> get_filenames ();
+               public GLib.SList<GLib.File> get_files ();
+               public unowned Gtk.FileFilter get_filter ();
+               public bool get_local_only ();
+               public GLib.File get_preview_file ();
+               public string get_preview_filename ();
+               public string get_preview_uri ();
+               public unowned Gtk.Widget get_preview_widget ();
+               public bool get_preview_widget_active ();
+               public bool get_select_multiple ();
+               public bool get_show_hidden ();
+               public string get_uri ();
+               public GLib.SList<string> get_uris ();
+               public bool get_use_preview_label ();
+               public GLib.SList<weak Gtk.FileFilter> list_filters ();
+               public GLib.SList<string>? list_shortcut_folder_uris ();
+               public GLib.SList<string>? list_shortcut_folders ();
+               public void remove_filter (Gtk.FileFilter filter);
+               public bool remove_shortcut_folder (string folder) throws GLib.Error;
+               public bool remove_shortcut_folder_uri (string uri) throws GLib.Error;
+               public void select_all ();
+               public bool select_file (GLib.File file) throws GLib.Error;
+               public bool select_filename (string filename);
+               public bool select_uri (string uri);
+               public void set_action (Gtk.FileChooserAction action);
+               public void set_create_folders (bool create_folders);
+               public bool set_current_folder (string filename);
+               public bool set_current_folder_file (GLib.File file) throws GLib.Error;
+               public bool set_current_folder_uri (string uri);
+               public void set_current_name (string name);
+               public void set_do_overwrite_confirmation (bool do_overwrite_confirmation);
+               public void set_extra_widget (Gtk.Widget extra_widget);
+               public bool set_file (GLib.File file) throws GLib.Error;
+               public bool set_filename (string filename);
+               public void set_filter (Gtk.FileFilter filter);
+               public void set_local_only (bool local_only);
+               public void set_preview_widget (Gtk.Widget preview_widget);
+               public void set_preview_widget_active (bool active);
+               public void set_select_multiple (bool select_multiple);
+               public void set_show_hidden (bool show_hidden);
+               public bool set_uri (string uri);
+               public void set_use_preview_label (bool use_label);
+               public void unselect_all ();
+               public void unselect_file (GLib.File file);
+               public void unselect_filename (string filename);
+               public void unselect_uri (string uri);
+               public Gtk.FileChooserAction action { get; set; }
+               public bool create_folders { get; set; }
+               public bool do_overwrite_confirmation { get; set; }
+               public Gtk.Widget extra_widget { get; set; }
+               public string file_system_backend { construct; }
+               public Gtk.FileFilter filter { get; set; }
+               public bool local_only { get; set; }
+               public Gtk.Widget preview_widget { get; set; }
+               public bool preview_widget_active { get; set; }
+               public bool select_multiple { get; set; }
+               public bool show_hidden { get; set; }
+               public bool use_preview_label { get; set; }
+               public signal Gtk.FileChooserConfirmation confirm_overwrite ();
+               public signal void current_folder_changed ();
+               public signal void file_activated ();
+               public signal void selection_changed ();
+               public signal void update_preview ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface FileChooserEmbed : GLib.Object {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface Orientable : GLib.Object {
+               public Gtk.Orientation get_orientation ();
+               public void set_orientation (Gtk.Orientation orientation);
+               public Gtk.Orientation orientation { get; set; }
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface PrintOperationPreview : GLib.Object {
+               public abstract void end_preview ();
+               public abstract bool is_selected (int page_nr);
+               public abstract void render_page (int page_nr);
+               public signal void got_page_size (Gtk.PrintContext context, Gtk.PageSetup page_setup);
+               public signal void ready (Gtk.PrintContext context);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface RecentChooser : GLib.Object {
+               public abstract void add_filter (Gtk.RecentFilter filter);
+               public static GLib.Quark error_quark ();
+               public Gtk.RecentInfo get_current_item ();
+               public abstract string get_current_uri ();
+               public unowned Gtk.RecentFilter get_filter ();
+               public abstract GLib.List<Gtk.RecentInfo> get_items ();
+               public int get_limit ();
+               public bool get_local_only ();
+               [NoWrapper]
+               public abstract unowned Gtk.RecentManager get_recent_manager ();
+               public bool get_select_multiple ();
+               public bool get_show_icons ();
+               public bool get_show_not_found ();
+               public bool get_show_private ();
+               public bool get_show_tips ();
+               public Gtk.RecentSortType get_sort_type ();
+               public string[] get_uris ();
+               public abstract GLib.SList<weak Gtk.RecentFilter> list_filters ();
+               public abstract void remove_filter (Gtk.RecentFilter filter);
+               public abstract void select_all ();
+               public abstract bool select_uri (string uri) throws GLib.Error;
+               public abstract bool set_current_uri (string uri) throws GLib.Error;
+               public void set_filter (Gtk.RecentFilter filter);
+               public void set_limit (int limit);
+               public void set_local_only (bool local_only);
+               public void set_select_multiple (bool select_multiple);
+               public void set_show_icons (bool show_icons);
+               public void set_show_not_found (bool show_not_found);
+               public void set_show_private (bool show_private);
+               public void set_show_tips (bool show_tips);
+               public abstract void set_sort_func (owned Gtk.RecentSortFunc sort_func);
+               public void set_sort_type (Gtk.RecentSortType sort_type);
+               public abstract void unselect_all ();
+               public abstract void unselect_uri (string uri);
+               public Gtk.RecentFilter filter { get; set; }
+               public int limit { get; set; }
+               public bool local_only { get; set; }
+               public Gtk.RecentManager recent_manager { construct; }
+               public bool select_multiple { get; set; }
+               public bool show_icons { get; set; }
+               public bool show_not_found { get; set; }
+               public bool show_private { get; set; }
+               public bool show_tips { get; set; }
+               public Gtk.RecentSortType sort_type { get; set; }
+               public signal void item_activated ();
+               public signal void selection_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface ToolShell : Gtk.Widget {
+               public abstract Pango.EllipsizeMode get_ellipsize_mode ();
+               public abstract Gtk.IconSize get_icon_size ();
+               public abstract Gtk.Orientation get_orientation ();
+               public abstract Gtk.ReliefStyle get_relief_style ();
+               public abstract Gtk.ToolbarStyle get_style ();
+               public abstract float get_text_alignment ();
+               public abstract Gtk.Orientation get_text_orientation ();
+               public abstract unowned Gtk.SizeGroup get_text_size_group ();
+               public abstract void rebuild_menu ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface TreeDragDest : GLib.Object {
+               public abstract bool drag_data_received (Gtk.TreePath dest, Gtk.SelectionData selection_data);
+               public abstract bool row_drop_possible (Gtk.TreePath dest_path, Gtk.SelectionData selection_data);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface TreeDragSource : GLib.Object {
+               public abstract bool drag_data_delete (Gtk.TreePath path);
+               public abstract bool drag_data_get (Gtk.TreePath path, Gtk.SelectionData selection_data);
+               public abstract bool row_draggable (Gtk.TreePath path);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface TreeModel : GLib.Object {
+               public void @foreach (Gtk.TreeModelForeachFunc func);
+               [CCode (sentinel = "-1")]
+               public void @get (Gtk.TreeIter iter, ...);
+               public abstract GLib.Type get_column_type (int index_);
+               public abstract Gtk.TreeModelFlags get_flags ();
+               public abstract bool get_iter (out Gtk.TreeIter iter, Gtk.TreePath path);
+               public bool get_iter_first (out Gtk.TreeIter iter);
+               public bool get_iter_from_string (out Gtk.TreeIter iter, string path_string);
+               public abstract int get_n_columns ();
+               public abstract Gtk.TreePath? get_path (Gtk.TreeIter iter);
+               public string get_string_from_iter (Gtk.TreeIter iter);
+               public void get_valist (Gtk.TreeIter iter, void* var_args);
+               public abstract void get_value (Gtk.TreeIter iter, int column, out GLib.Value value);
+               public abstract bool iter_children (out Gtk.TreeIter iter, Gtk.TreeIter? parent);
+               public abstract bool iter_has_child (Gtk.TreeIter iter);
+               public abstract int iter_n_children (Gtk.TreeIter? iter);
+               public abstract bool iter_next (ref Gtk.TreeIter iter);
+               public abstract bool iter_nth_child (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int n);
+               public abstract bool iter_parent (out Gtk.TreeIter iter, Gtk.TreeIter child);
+               public virtual void ref_node (Gtk.TreeIter iter);
+               public virtual void unref_node (Gtk.TreeIter iter);
+               [HasEmitter]
+               public signal void row_changed (Gtk.TreePath path, Gtk.TreeIter iter);
+               [HasEmitter]
+               public signal void row_deleted (Gtk.TreePath path);
+               [HasEmitter]
+               public signal void row_has_child_toggled (Gtk.TreePath path, Gtk.TreeIter iter);
+               [HasEmitter]
+               public signal void row_inserted (Gtk.TreePath path, Gtk.TreeIter iter);
+               [HasEmitter]
+               public signal void rows_reordered (Gtk.TreePath path, Gtk.TreeIter? iter, void* new_order);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public interface TreeSortable : Gtk.TreeModel, GLib.Object {
+               public abstract bool get_sort_column_id (out int sort_column_id, out Gtk.SortType order);
+               public abstract bool has_default_sort_func ();
+               public abstract void set_default_sort_func (owned Gtk.TreeIterCompareFunc sort_func);
+               public abstract void set_sort_column_id (int sort_column_id, Gtk.SortType order);
+               public abstract void set_sort_func (int sort_column_id, owned Gtk.TreeIterCompareFunc sort_func);
+               [HasEmitter]
+               public signal void sort_column_changed ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct AccelGroupEntry {
+               public Gtk.AccelKey key;
+               public weak GLib.Closure closure;
+               public GLib.Quark accel_path_quark;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct AccelKey {
+               public uint accel_key;
+               public Gdk.ModifierType accel_mods;
+               public uint accel_flags;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct ActionEntry {
+               public weak string name;
+               public weak string stock_id;
+               public weak string label;
+               public weak string accelerator;
+               public weak string tooltip;
+               [CCode (delegate_target = false, type = "GCallback")]
+               public weak Gtk.ActionCallback callback;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct Allocation : Gdk.Rectangle {
+       }
+       [CCode (cheader_filename = "gtk/gtk.h,gtk/gtkimmodule.h")]
+       public struct IMContextInfo {
+               public weak string context_id;
+               public weak string context_name;
+               public weak string domain;
+               public weak string domain_dirname;
+               public weak string default_locales;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct PageRange {
+               public int start;
+               public int end;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct RadioActionEntry {
+               public weak string name;
+               public weak string stock_id;
+               public weak string label;
+               public weak string accelerator;
+               public weak string tooltip;
+               public int value;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", has_copy_function = false, has_destroy_function = false)]
+       public struct RecentData {
+               public string display_name;
+               public string description;
+               public string mime_type;
+               public string app_name;
+               public string app_exec;
+               [CCode (array_length = false, array_null_terminated = true)]
+               public string[] groups;
+               public bool is_private;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct RecentFilterInfo {
+               public Gtk.RecentFilterFlags contains;
+               public weak string uri;
+               public weak string display_name;
+               public weak string mime_type;
+               [CCode (array_length = false, array_null_terminated = true)]
+               public weak string[] applications;
+               [CCode (array_length = false, array_null_terminated = true)]
+               public weak string[] groups;
+               public int age;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct Requisition {
+               public int width;
+               public int height;
+               public Gtk.Requisition copy ();
+               public void free ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct SettingsValue {
+               public weak string origin;
+               public GLib.Value value;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct StockItem {
+               public weak string stock_id;
+               public weak string label;
+               public Gdk.ModifierType modifier;
+               public uint keyval;
+               public weak string translation_domain;
+               public Gtk.StockItem copy ();
+               public void free ();
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct TargetEntry {
+               public weak string target;
+               public uint flags;
+               public uint info;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct TextAppearance {
+               public Gdk.Color bg_color;
+               public Gdk.Color fg_color;
+               public weak Gdk.Bitmap bg_stipple;
+               public weak Gdk.Bitmap fg_stipple;
+               public int rise;
+               public uint underline;
+               public uint strikethrough;
+               public uint draw_bg;
+               public uint inside_selection;
+               public uint is_text;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct TextIter {
+               public bool backward_char ();
+               public bool backward_chars (int count);
+               public bool backward_cursor_position ();
+               public bool backward_cursor_positions (int count);
+               public bool backward_find_char (Gtk.TextCharPredicate pred, Gtk.TextIter limit);
+               public bool backward_line ();
+               public bool backward_lines (int count);
+               public bool backward_search (string str, Gtk.TextSearchFlags flags, out Gtk.TextIter match_start, out Gtk.TextIter match_end, Gtk.TextIter? limit);
+               public bool backward_sentence_start ();
+               public bool backward_sentence_starts (int count);
+               public bool backward_to_tag_toggle (Gtk.TextTag? tag);
+               public bool backward_visible_cursor_position ();
+               public bool backward_visible_cursor_positions (int count);
+               public bool backward_visible_line ();
+               public bool backward_visible_lines (int count);
+               public bool backward_visible_word_start ();
+               public bool backward_visible_word_starts (int count);
+               public bool backward_word_start ();
+               public bool backward_word_starts (int count);
+               public bool begins_tag (Gtk.TextTag? tag);
+               public bool can_insert (bool default_editability);
+               public int compare (Gtk.TextIter rhs);
+               public Gtk.TextIter copy ();
+               public bool editable (bool default_setting);
+               public bool ends_line ();
+               public bool ends_sentence ();
+               public bool ends_tag (Gtk.TextTag? tag);
+               public bool ends_word ();
+               public bool equal (Gtk.TextIter rhs);
+               public bool forward_char ();
+               public bool forward_chars (int count);
+               public bool forward_cursor_position ();
+               public bool forward_cursor_positions (int count);
+               public bool forward_find_char (Gtk.TextCharPredicate pred, Gtk.TextIter? limit);
+               public bool forward_line ();
+               public bool forward_lines (int count);
+               public bool forward_search (string str, Gtk.TextSearchFlags flags, out Gtk.TextIter match_start, out Gtk.TextIter match_end, Gtk.TextIter? limit);
+               public bool forward_sentence_end ();
+               public bool forward_sentence_ends (int count);
+               public void forward_to_end ();
+               public bool forward_to_line_end ();
+               public bool forward_to_tag_toggle (Gtk.TextTag? tag);
+               public bool forward_visible_cursor_position ();
+               public bool forward_visible_cursor_positions (int count);
+               public bool forward_visible_line ();
+               public bool forward_visible_lines (int count);
+               public bool forward_visible_word_end ();
+               public bool forward_visible_word_ends (int count);
+               public bool forward_word_end ();
+               public bool forward_word_ends (int count);
+               public void free ();
+               public bool get_attributes (Gtk.TextAttributes values);
+               public unowned Gtk.TextBuffer get_buffer ();
+               public int get_bytes_in_line ();
+               public unichar get_char ();
+               public int get_chars_in_line ();
+               public unowned Gtk.TextChildAnchor get_child_anchor ();
+               public Pango.Language get_language ();
+               public int get_line ();
+               public int get_line_index ();
+               public int get_line_offset ();
+               public GLib.SList<weak Gtk.TextMark> get_marks ();
+               public int get_offset ();
+               public unowned Gdk.Pixbuf get_pixbuf ();
+               public string get_slice (Gtk.TextIter end);
+               public GLib.SList<weak Gtk.TextTag> get_tags ();
+               public string get_text (Gtk.TextIter end);
+               public GLib.SList<weak Gtk.TextTag> get_toggled_tags (bool toggled_on);
+               public int get_visible_line_index ();
+               public int get_visible_line_offset ();
+               public string get_visible_slice (Gtk.TextIter end);
+               public string get_visible_text (Gtk.TextIter end);
+               public bool has_tag (Gtk.TextTag tag);
+               public bool in_range (Gtk.TextIter start, Gtk.TextIter end);
+               public bool inside_sentence ();
+               public bool inside_word ();
+               public bool is_cursor_position ();
+               public bool is_end ();
+               public bool is_start ();
+               public void order (Gtk.TextIter second);
+               public void set_line (int line_number);
+               public void set_line_index (int byte_on_line);
+               public void set_line_offset (int char_on_line);
+               public void set_offset (int char_offset);
+               public void set_visible_line_index (int byte_on_line);
+               public void set_visible_line_offset (int char_on_line);
+               public bool starts_line ();
+               public bool starts_sentence ();
+               public bool starts_word ();
+               public bool toggles_tag (Gtk.TextTag tag);
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct ToggleActionEntry {
+               public weak string name;
+               public weak string stock_id;
+               public weak string label;
+               public weak string accelerator;
+               public weak string tooltip;
+               [CCode (delegate_target = false, type = "GCallback")]
+               public weak Gtk.ActionCallback callback;
+               public bool is_active;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public struct TreeIter {
+               public int stamp;
+               public void* user_data;
+               public void* user_data2;
+               public void* user_data3;
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ACCEL_")]
+       [Flags]
+       public enum AccelFlags {
+               VISIBLE,
+               LOCKED,
+               MASK
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ANCHOR_")]
+       public enum AnchorType {
+               CENTER,
+               NORTH,
+               NORTH_WEST,
+               NORTH_EAST,
+               SOUTH,
+               SOUTH_WEST,
+               SOUTH_EAST,
+               WEST,
+               EAST,
+               N,
+               NW,
+               NE,
+               S,
+               SW,
+               SE,
+               W,
+               E
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ARG_")]
+       [Flags]
+       public enum ArgFlags {
+               READABLE,
+               WRITABLE,
+               CONSTRUCT,
+               CONSTRUCT_ONLY,
+               CHILD_ARG
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ARROWS_")]
+       public enum ArrowPlacement {
+               BOTH,
+               START,
+               END
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ARROW_")]
+       public enum ArrowType {
+               UP,
+               DOWN,
+               LEFT,
+               RIGHT,
+               NONE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ASSISTANT_PAGE_")]
+       public enum AssistantPageType {
+               CONTENT,
+               INTRO,
+               CONFIRM,
+               SUMMARY,
+               PROGRESS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_")]
+       [Flags]
+       public enum AttachOptions {
+               EXPAND,
+               SHRINK,
+               FILL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUTTON_")]
+       [Flags]
+       public enum ButtonAction {
+               IGNORED,
+               SELECTS,
+               DRAGS,
+               EXPANDS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUTTONBOX_")]
+       public enum ButtonBoxStyle {
+               DEFAULT_STYLE,
+               SPREAD,
+               EDGE,
+               START,
+               END,
+               CENTER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUTTONS_")]
+       public enum ButtonsType {
+               NONE,
+               OK,
+               CLOSE,
+               CANCEL,
+               YES_NO,
+               OK_CANCEL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CLIST_DRAG_")]
+       public enum CListDragPos {
+               NONE,
+               BEFORE,
+               INTO,
+               AFTER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CTREE_EXPANDER_")]
+       public enum CTreeExpanderStyle {
+               NONE,
+               SQUARE,
+               TRIANGLE,
+               CIRCULAR
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CTREE_EXPANSION_")]
+       public enum CTreeExpansionType {
+               EXPAND,
+               EXPAND_RECURSIVE,
+               COLLAPSE,
+               COLLAPSE_RECURSIVE,
+               TOGGLE,
+               TOGGLE_RECURSIVE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CTREE_LINES_")]
+       public enum CTreeLineStyle {
+               NONE,
+               SOLID,
+               DOTTED,
+               TABBED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CTREE_POS_")]
+       public enum CTreePos {
+               BEFORE,
+               AS_CHILD,
+               AFTER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CALENDAR_")]
+       [Flags]
+       public enum CalendarDisplayOptions {
+               SHOW_HEADING,
+               SHOW_DAY_NAMES,
+               NO_MONTH_CHANGE,
+               SHOW_WEEK_NUMBERS,
+               WEEK_START_MONDAY,
+               SHOW_DETAILS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_RENDERER_ACCEL_MODE_")]
+       public enum CellRendererAccelMode {
+               GTK,
+               OTHER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_RENDERER_MODE_")]
+       public enum CellRendererMode {
+               INERT,
+               ACTIVATABLE,
+               EDITABLE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_RENDERER_")]
+       [Flags]
+       public enum CellRendererState {
+               SELECTED,
+               PRELIT,
+               INSENSITIVE,
+               SORTED,
+               FOCUSED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_")]
+       public enum CellType {
+               EMPTY,
+               TEXT,
+               PIXMAP,
+               PIXTEXT,
+               WIDGET
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CORNER_")]
+       public enum CornerType {
+               TOP_LEFT,
+               BOTTOM_LEFT,
+               TOP_RIGHT,
+               BOTTOM_RIGHT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CURVE_TYPE_")]
+       public enum CurveType {
+               LINEAR,
+               SPLINE,
+               FREE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DEBUG_")]
+       [Flags]
+       public enum DebugFlag {
+               MISC,
+               PLUGSOCKET,
+               TEXT,
+               TREE,
+               UPDATES,
+               KEYBINDINGS,
+               MULTIHEAD,
+               MODULES,
+               GEOMETRY,
+               ICONTHEME,
+               PRINTING,
+               BUILDER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DELETE_")]
+       public enum DeleteType {
+               CHARS,
+               WORD_ENDS,
+               WORDS,
+               DISPLAY_LINES,
+               DISPLAY_LINE_ENDS,
+               PARAGRAPH_ENDS,
+               PARAGRAPHS,
+               WHITESPACE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DEST_DEFAULT_")]
+       [Flags]
+       public enum DestDefaults {
+               MOTION,
+               HIGHLIGHT,
+               DROP,
+               ALL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DIALOG_")]
+       [Flags]
+       public enum DialogFlags {
+               MODAL,
+               DESTROY_WITH_PARENT,
+               NO_SEPARATOR
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DIR_")]
+       public enum DirectionType {
+               TAB_FORWARD,
+               TAB_BACKWARD,
+               UP,
+               DOWN,
+               LEFT,
+               RIGHT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DRAG_RESULT_")]
+       public enum DragResult {
+               SUCCESS,
+               NO_TARGET,
+               USER_CANCELLED,
+               TIMEOUT_EXPIRED,
+               GRAB_BROKEN,
+               ERROR
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ENTRY_ICON_")]
+       public enum EntryIconPosition {
+               PRIMARY,
+               SECONDARY
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_EXPANDER_")]
+       public enum ExpanderStyle {
+               COLLAPSED,
+               SEMI_COLLAPSED,
+               SEMI_EXPANDED,
+               EXPANDED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_CHOOSER_ACTION_")]
+       public enum FileChooserAction {
+               OPEN,
+               SAVE,
+               SELECT_FOLDER,
+               CREATE_FOLDER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_CHOOSER_CONFIRMATION_")]
+       public enum FileChooserConfirmation {
+               CONFIRM,
+               ACCEPT_FILENAME,
+               SELECT_AGAIN
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_FILTER_")]
+       [Flags]
+       public enum FileFilterFlags {
+               FILENAME,
+               URI,
+               DISPLAY_NAME,
+               MIME_TYPE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_IM_PREEDIT_")]
+       public enum IMPreeditStyle {
+               NOTHING,
+               CALLBACK,
+               NONE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_IM_STATUS_")]
+       public enum IMStatusStyle {
+               NOTHING,
+               CALLBACK,
+               NONE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_LOOKUP_")]
+       [Flags]
+       public enum IconLookupFlags {
+               NO_SVG,
+               FORCE_SVG,
+               USE_BUILTIN,
+               GENERIC_FALLBACK,
+               FORCE_SIZE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_SIZE_")]
+       public enum IconSize {
+               INVALID,
+               MENU,
+               SMALL_TOOLBAR,
+               LARGE_TOOLBAR,
+               BUTTON,
+               DND,
+               DIALOG
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_VIEW_")]
+       public enum IconViewDropPosition {
+               NO_DROP,
+               DROP_INTO,
+               DROP_LEFT,
+               DROP_RIGHT,
+               DROP_ABOVE,
+               DROP_BELOW
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_IMAGE_")]
+       public enum ImageType {
+               EMPTY,
+               PIXMAP,
+               IMAGE,
+               PIXBUF,
+               STOCK,
+               ICON_SET,
+               ANIMATION,
+               ICON_NAME,
+               GICON
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_JUSTIFY_")]
+       public enum Justification {
+               LEFT,
+               RIGHT,
+               CENTER,
+               FILL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MATCH_")]
+       public enum MatchType {
+               ALL,
+               ALL_TAIL,
+               HEAD,
+               TAIL,
+               EXACT,
+               LAST
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MENU_DIR_")]
+       public enum MenuDirectionType {
+               PARENT,
+               CHILD,
+               NEXT,
+               PREV
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MESSAGE_")]
+       public enum MessageType {
+               INFO,
+               WARNING,
+               QUESTION,
+               ERROR,
+               OTHER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_")]
+       public enum MetricType {
+               PIXELS,
+               INCHES,
+               CENTIMETERS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MOVEMENT_")]
+       public enum MovementStep {
+               LOGICAL_POSITIONS,
+               VISUAL_POSITIONS,
+               WORDS,
+               DISPLAY_LINES,
+               DISPLAY_LINE_ENDS,
+               PARAGRAPHS,
+               PARAGRAPH_ENDS,
+               PAGES,
+               BUFFER_ENDS,
+               HORIZONTAL_PAGES
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_NOTEBOOK_TAB_")]
+       public enum NotebookTab {
+               FIRST,
+               LAST
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_NUMBER_UP_LAYOUT_")]
+       public enum NumberUpLayout {
+               LEFT_TO_RIGHT_TOP_TO_BOTTOM,
+               LEFT_TO_RIGHT_BOTTOM_TO_TOP,
+               RIGHT_TO_LEFT_TOP_TO_BOTTOM,
+               RIGHT_TO_LEFT_BOTTOM_TO_TOP,
+               TOP_TO_BOTTOM_LEFT_TO_RIGHT,
+               TOP_TO_BOTTOM_RIGHT_TO_LEFT,
+               BOTTOM_TO_TOP_LEFT_TO_RIGHT,
+               BOTTOM_TO_TOP_RIGHT_TO_LEFT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_")]
+       [Flags]
+       public enum ObjectFlags {
+               IN_DESTRUCTION,
+               FLOATING,
+               RESERVED_1,
+               RESERVED_2
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ORIENTATION_")]
+       public enum Orientation {
+               HORIZONTAL,
+               VERTICAL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PACK_DIRECTION_")]
+       public enum PackDirection {
+               LTR,
+               RTL,
+               TTB,
+               BTT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PACK_")]
+       public enum PackType {
+               START,
+               END
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PAGE_ORIENTATION_")]
+       public enum PageOrientation {
+               PORTRAIT,
+               LANDSCAPE,
+               REVERSE_PORTRAIT,
+               REVERSE_LANDSCAPE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PAGE_SET_")]
+       public enum PageSet {
+               ALL,
+               EVEN,
+               ODD
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PATH_PRIO_")]
+       public enum PathPriorityType {
+               LOWEST,
+               GTK,
+               APPLICATION,
+               THEME,
+               RC,
+               HIGHEST
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PATH_")]
+       public enum PathType {
+               WIDGET,
+               WIDGET_CLASS,
+               CLASS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_POLICY_")]
+       public enum PolicyType {
+               ALWAYS,
+               AUTOMATIC,
+               NEVER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_POS_")]
+       public enum PositionType {
+               LEFT,
+               RIGHT,
+               TOP,
+               BOTTOM
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PREVIEW_")]
+       public enum PreviewType {
+               COLOR,
+               GRAYSCALE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_DUPLEX_")]
+       public enum PrintDuplex {
+               SIMPLEX,
+               HORIZONTAL,
+               VERTICAL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_OPERATION_ACTION_")]
+       public enum PrintOperationAction {
+               PRINT_DIALOG,
+               PRINT,
+               PREVIEW,
+               EXPORT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_OPERATION_RESULT_")]
+       public enum PrintOperationResult {
+               ERROR,
+               APPLY,
+               CANCEL,
+               IN_PROGRESS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_PAGES_")]
+       public enum PrintPages {
+               ALL,
+               CURRENT,
+               RANGES,
+               SELECTION
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_QUALITY_")]
+       public enum PrintQuality {
+               LOW,
+               NORMAL,
+               HIGH,
+               DRAFT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_STATUS_")]
+       public enum PrintStatus {
+               INITIAL,
+               PREPARING,
+               GENERATING_DATA,
+               SENDING_DATA,
+               PENDING,
+               PENDING_ISSUE,
+               PRINTING,
+               FINISHED,
+               FINISHED_ABORTED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "PRIVATE_GTK_")]
+       [Flags]
+       public enum PrivateFlags {
+               USER_STYLE,
+               RESIZE_PENDING,
+               HAS_POINTER,
+               SHADOWED,
+               HAS_SHAPE_MASK,
+               IN_REPARENT,
+               DIRECTION_SET,
+               DIRECTION_LTR,
+               ANCHORED,
+               CHILD_VISIBLE,
+               REDRAW_ON_ALLOC,
+               ALLOC_NEEDED,
+               REQUEST_NEEDED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PROGRESS_")]
+       public enum ProgressBarOrientation {
+               LEFT_TO_RIGHT,
+               RIGHT_TO_LEFT,
+               BOTTOM_TO_TOP,
+               TOP_TO_BOTTOM
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PROGRESS_")]
+       public enum ProgressBarStyle {
+               CONTINUOUS,
+               DISCRETE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RC_")]
+       [Flags]
+       public enum RcFlags {
+               FG,
+               BG,
+               TEXT,
+               BASE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RC_TOKEN_")]
+       public enum RcTokenType {
+               INVALID,
+               INCLUDE,
+               NORMAL,
+               ACTIVE,
+               PRELIGHT,
+               SELECTED,
+               INSENSITIVE,
+               FG,
+               BG,
+               TEXT,
+               BASE,
+               XTHICKNESS,
+               YTHICKNESS,
+               FONT,
+               FONTSET,
+               FONT_NAME,
+               BG_PIXMAP,
+               PIXMAP_PATH,
+               STYLE,
+               BINDING,
+               BIND,
+               WIDGET,
+               WIDGET_CLASS,
+               CLASS,
+               LOWEST,
+               GTK,
+               APPLICATION,
+               THEME,
+               RC,
+               HIGHEST,
+               ENGINE,
+               MODULE_PATH,
+               IM_MODULE_PATH,
+               IM_MODULE_FILE,
+               STOCK,
+               LTR,
+               RTL,
+               COLOR,
+               UNBIND,
+               LAST
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_FILTER_")]
+       [Flags]
+       public enum RecentFilterFlags {
+               URI,
+               DISPLAY_NAME,
+               MIME_TYPE,
+               APPLICATION,
+               GROUP,
+               AGE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_SORT_")]
+       public enum RecentSortType {
+               NONE,
+               MRU,
+               LRU,
+               CUSTOM
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RELIEF_")]
+       public enum ReliefStyle {
+               NORMAL,
+               HALF,
+               NONE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RESIZE_")]
+       public enum ResizeMode {
+               PARENT,
+               QUEUE,
+               IMMEDIATE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RESPONSE_")]
+       public enum ResponseType {
+               NONE,
+               REJECT,
+               ACCEPT,
+               DELETE_EVENT,
+               OK,
+               CANCEL,
+               CLOSE,
+               YES,
+               NO,
+               APPLY,
+               HELP
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SCROLL_")]
+       public enum ScrollStep {
+               STEPS,
+               PAGES,
+               ENDS,
+               HORIZONTAL_STEPS,
+               HORIZONTAL_PAGES,
+               HORIZONTAL_ENDS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SCROLL_")]
+       public enum ScrollType {
+               NONE,
+               JUMP,
+               STEP_BACKWARD,
+               STEP_FORWARD,
+               PAGE_BACKWARD,
+               PAGE_FORWARD,
+               STEP_UP,
+               STEP_DOWN,
+               PAGE_UP,
+               PAGE_DOWN,
+               STEP_LEFT,
+               STEP_RIGHT,
+               PAGE_LEFT,
+               PAGE_RIGHT,
+               START,
+               END
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SELECTION_")]
+       public enum SelectionMode {
+               NONE,
+               SINGLE,
+               BROWSE,
+               MULTIPLE,
+               EXTENDED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SENSITIVITY_")]
+       public enum SensitivityType {
+               AUTO,
+               ON,
+               OFF
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SHADOW_")]
+       public enum ShadowType {
+               NONE,
+               IN,
+               OUT,
+               ETCHED_IN,
+               ETCHED_OUT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SIDE_")]
+       public enum SideType {
+               TOP,
+               BOTTOM,
+               LEFT,
+               RIGHT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RUN_")]
+       [Flags]
+       public enum SignalRunType {
+               FIRST,
+               LAST,
+               BOTH,
+               NO_RECURSE,
+               ACTION,
+               NO_HOOKS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SIZE_GROUP_")]
+       public enum SizeGroupMode {
+               NONE,
+               HORIZONTAL,
+               VERTICAL,
+               BOTH
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cname = "gint")]
+       public enum SortColumn {
+               [CCode (cname = "GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID")]
+               DEFAULT,
+               [CCode (cname = "GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID")]
+               UNSORTED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SORT_")]
+       public enum SortType {
+               ASCENDING,
+               DESCENDING
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UPDATE_")]
+       public enum SpinButtonUpdatePolicy {
+               ALWAYS,
+               IF_VALID
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SPIN_")]
+       public enum SpinType {
+               STEP_FORWARD,
+               STEP_BACKWARD,
+               PAGE_FORWARD,
+               PAGE_BACKWARD,
+               HOME,
+               END,
+               USER_DEFINED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_STATE_")]
+       public enum StateType {
+               NORMAL,
+               ACTIVE,
+               PRELIGHT,
+               SELECTED,
+               INSENSITIVE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DIRECTION_")]
+       public enum SubmenuDirection {
+               LEFT,
+               RIGHT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_")]
+       public enum SubmenuPlacement {
+               TOP_BOTTOM,
+               LEFT_RIGHT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TARGET_")]
+       [Flags]
+       public enum TargetFlags {
+               SAME_APP,
+               SAME_WIDGET,
+               OTHER_APP,
+               OTHER_WIDGET
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_BUFFER_TARGET_INFO_")]
+       public enum TextBufferTargetInfo {
+               BUFFER_CONTENTS,
+               RICH_TEXT,
+               TEXT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_DIR_")]
+       public enum TextDirection {
+               NONE,
+               LTR,
+               RTL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_SEARCH_")]
+       [Flags]
+       public enum TextSearchFlags {
+               VISIBLE_ONLY,
+               TEXT_ONLY
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_WINDOW_")]
+       public enum TextWindowType {
+               PRIVATE,
+               WIDGET,
+               TEXT,
+               LEFT,
+               RIGHT,
+               TOP,
+               BOTTOM
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOL_PALETTE_DRAG_")]
+       [Flags]
+       public enum ToolPaletteDragTargets {
+               ITEMS,
+               GROUPS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOLBAR_CHILD_")]
+       public enum ToolbarChildType {
+               SPACE,
+               BUTTON,
+               TOGGLEBUTTON,
+               RADIOBUTTON,
+               WIDGET
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOLBAR_SPACE_")]
+       public enum ToolbarSpaceStyle {
+               EMPTY,
+               LINE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOLBAR_")]
+       public enum ToolbarStyle {
+               ICONS,
+               TEXT,
+               BOTH,
+               BOTH_HORIZ
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_MODEL_")]
+       [Flags]
+       public enum TreeModelFlags {
+               ITERS_PERSIST,
+               LIST_ONLY
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_COLUMN_")]
+       public enum TreeViewColumnSizing {
+               GROW_ONLY,
+               AUTOSIZE,
+               FIXED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_DROP_")]
+       public enum TreeViewDropPosition {
+               BEFORE,
+               AFTER,
+               INTO_OR_BEFORE,
+               INTO_OR_AFTER
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_GRID_LINES_")]
+       public enum TreeViewGridLines {
+               NONE,
+               HORIZONTAL,
+               VERTICAL,
+               BOTH
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_")]
+       public enum TreeViewMode {
+               LINE,
+               ITEM
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UI_MANAGER_")]
+       [Flags]
+       public enum UIManagerItemType {
+               AUTO,
+               MENUBAR,
+               MENU,
+               TOOLBAR,
+               PLACEHOLDER,
+               POPUP,
+               MENUITEM,
+               TOOLITEM,
+               SEPARATOR,
+               ACCELERATOR,
+               POPUP_WITH_ACCELS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UNIT_")]
+       public enum Unit {
+               PIXEL,
+               POINTS,
+               INCH,
+               MM
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UPDATE_")]
+       public enum UpdateType {
+               CONTINUOUS,
+               DISCONTINUOUS,
+               DELAYED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_VISIBILITY_")]
+       public enum Visibility {
+               NONE,
+               PARTIAL,
+               FULL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_")]
+       [Flags]
+       public enum WidgetFlags {
+               TOPLEVEL,
+               NO_WINDOW,
+               REALIZED,
+               MAPPED,
+               VISIBLE,
+               SENSITIVE,
+               PARENT_SENSITIVE,
+               CAN_FOCUS,
+               HAS_FOCUS,
+               CAN_DEFAULT,
+               HAS_DEFAULT,
+               HAS_GRAB,
+               RC_STYLE,
+               COMPOSITE_CHILD,
+               NO_REPARENT,
+               APP_PAINTABLE,
+               RECEIVES_DEFAULT,
+               DOUBLE_BUFFERED,
+               NO_SHOW_ALL
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WIDGET_HELP_")]
+       public enum WidgetHelpType {
+               TOOLTIP,
+               WHATS_THIS
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WIN_POS_")]
+       public enum WindowPosition {
+               NONE,
+               CENTER,
+               MOUSE,
+               CENTER_ALWAYS,
+               CENTER_ON_PARENT
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WINDOW_")]
+       public enum WindowType {
+               TOPLEVEL,
+               POPUP
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WRAP_")]
+       public enum WrapMode {
+               NONE,
+               CHAR,
+               WORD,
+               WORD_CHAR
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUILDER_ERROR_")]
+       public errordomain BuilderError {
+               INVALID_TYPE_FUNCTION,
+               UNHANDLED_TAG,
+               MISSING_ATTRIBUTE,
+               INVALID_ATTRIBUTE,
+               INVALID_TAG,
+               MISSING_PROPERTY_VALUE,
+               INVALID_VALUE,
+               VERSION_MISMATCH,
+               DUPLICATE_ID
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_CHOOSER_ERROR_")]
+       public errordomain FileChooserError {
+               NONEXISTENT,
+               BAD_FILENAME,
+               ALREADY_EXISTS,
+               INCOMPLETE_HOSTNAME
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_THEME_")]
+       public errordomain IconThemeError {
+               NOT_FOUND,
+               FAILED
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_ERROR_")]
+       public errordomain PrintError {
+               GENERAL,
+               INTERNAL_ERROR,
+               NOMEM,
+               INVALID_FILE
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_CHOOSER_ERROR_")]
+       public errordomain RecentChooserError {
+               NOT_FOUND,
+               INVALID_URI
+       }
+       [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_MANAGER_ERROR_")]
+       public errordomain RecentManagerError {
+               NOT_FOUND,
+               INVALID_URI,
+               INVALID_ENCODING,
+               NOT_REGISTERED,
+               READ,
+               WRITE,
+               UNKNOWN
+       }
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void AboutDialogActivateLinkFunc (Gtk.AboutDialog about, string link_);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool AccelGroupActivate (Gtk.AccelGroup accel_group, GLib.Object acceleratable, uint keyval, Gdk.ModifierType modifier);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool AccelGroupFindFunc (Gtk.AccelKey key, GLib.Closure closure);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void AccelMapForeach (void* data, string accel_path, uint accel_key, Gdk.ModifierType accel_mods, bool changed);
+       [CCode (cheader_filename = "gtk/gtk.h", type_cname = "GCallback")]
+       public delegate void ActionCallback (Gtk.Action action);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate int AssistantPageFunc (int current_page);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void BuilderConnectFunc (Gtk.Builder builder, GLib.Object object, string signal_name, string handler_name, GLib.Object? connect_object, GLib.ConnectFlags flags);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate string CalendarDetailFunc (Gtk.Calendar calendar, uint year, uint month, uint day);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void Callback (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void CallbackMarshal (Gtk.Object object, void* data, Gtk.Arg[] args);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void CellLayoutDataFunc (Gtk.CellLayout cell_layout, Gtk.CellRenderer cell, Gtk.TreeModel tree_model, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void ClipboardClearFunc (Gtk.Clipboard clipboard, void* user_data_or_owner);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void ClipboardGetFunc (Gtk.Clipboard clipboard, Gtk.SelectionData selection_data, uint info, void* user_data_or_owner);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void ClipboardImageReceivedFunc (Gtk.Clipboard clipboard, Gdk.Pixbuf pixbuf);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void ClipboardReceivedFunc (Gtk.Clipboard clipboard, Gtk.SelectionData selection_data);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void ClipboardRichTextReceivedFunc (Gtk.Clipboard clipboard, Gdk.Atom format, [CCode (array_length_type = "gsize")] uint8[] text);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void ClipboardTargetsReceivedFunc (Gtk.Clipboard clipboard, Gdk.Atom[] atoms);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void ClipboardTextReceivedFunc (Gtk.Clipboard clipboard, string? text);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void ClipboardURIReceivedFunc (Gtk.Clipboard clipboard, [CCode (array_length = false, array_null_terminated = true)] string[] uris);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void ColorSelectionChangePaletteFunc (Gdk.Color[] colors);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void ColorSelectionChangePaletteWithScreenFunc (Gdk.Screen screen, Gdk.Color[] colors);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool EntryCompletionMatchFunc (Gtk.EntryCompletion completion, string key, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool FileFilterFunc (Gtk.FileFilterInfo filter_info);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool Function ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void IconViewForeachFunc (Gtk.IconView icon_view, Gtk.TreePath path);
+       [CCode (cheader_filename = "gtk/gtk.h", instance_pos = 2.9)]
+       public delegate int KeySnoopFunc (Gtk.Widget grab_widget, Gdk.EventKey event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void LinkButtonUriFunc (Gtk.LinkButton button, string link_);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void MenuDetachFunc (Gtk.Widget attach_widget, Gtk.Menu menu);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void MenuPositionFunc (Gtk.Menu menu, ref int x, ref int y, out bool push_in);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void ModuleDisplayInitFunc (Gdk.Display display);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate void ModuleInitFunc (string[]? argv);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate unowned Gtk.Notebook NotebookWindowCreationFunc (Gtk.Notebook source, Gtk.Widget page, int x, int y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void PageSetupDoneFunc (Gtk.PageSetup page_setup);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void PrintSettingsFunc (string key, string value);
+       [CCode (cheader_filename = "gtk/gtk.h", type_cname = "GCallback")]
+       public delegate void RadioActionCallback (Gtk.Action action, Gtk.Action current);
+       [CCode (cheader_filename = "gtk/gtk.h", has_target = false)]
+       public delegate bool RcPropertyParser (GLib.ParamSpec pspec, GLib.StringBuilder rc_string, GLib.Value property_value);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool RecentFilterFunc (Gtk.RecentFilterInfo filter_info);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate int RecentSortFunc (Gtk.RecentInfo a, Gtk.RecentInfo b);
+       [CCode (cheader_filename = "gtk/gtk.h", instance_pos = 5.9)]
+       public delegate bool TextBufferDeserializeFunc (Gtk.TextBuffer register_buffer, Gtk.TextBuffer content_buffer, Gtk.TextIter iter, [CCode (array_length_type = "gsize")] uint8[] data, bool create_tags) throws GLib.Error;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate uchar TextBufferSerializeFunc (Gtk.TextBuffer register_buffer, Gtk.TextBuffer content_buffer, Gtk.TextIter start, Gtk.TextIter end, size_t length);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TextCharPredicate (unichar ch);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TextTagTableForeach (Gtk.TextTag tag);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate string TranslateFunc (string path);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TreeCellDataFunc (Gtk.TreeViewColumn tree_column, Gtk.CellRenderer cell, Gtk.TreeModel tree_model, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TreeDestroyCountFunc (Gtk.TreeView tree_view, Gtk.TreePath path, int children);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate int TreeIterCompareFunc (Gtk.TreeModel model, Gtk.TreeIter a, Gtk.TreeIter b);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TreeModelFilterModifyFunc (Gtk.TreeModel model, Gtk.TreeIter iter, out GLib.Value value, int column);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TreeModelFilterVisibleFunc (Gtk.TreeModel model, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TreeModelForeachFunc (Gtk.TreeModel model, Gtk.TreePath path, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TreeSelectionForeachFunc (Gtk.TreeModel model, Gtk.TreePath path, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TreeSelectionFunc (Gtk.TreeSelection selection, Gtk.TreeModel model, Gtk.TreePath path, bool path_currently_selected);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TreeViewColumnDropFunc (Gtk.TreeView tree_view, Gtk.TreeViewColumn column, Gtk.TreeViewColumn prev_column, Gtk.TreeViewColumn next_column);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TreeViewMappingFunc (Gtk.TreeView tree_view, Gtk.TreePath path);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TreeViewRowSeparatorFunc (Gtk.TreeModel model, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate bool TreeViewSearchEqualFunc (Gtk.TreeModel model, int column, string key, Gtk.TreeIter iter);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void TreeViewSearchPositionFunc (Gtk.TreeView tree_view, Gtk.Widget search_dialog);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public delegate void WindowKeysForeachFunc (Gtk.Window window, uint keyval, Gdk.ModifierType modifiers, bool is_mnemonic);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int ARG_READWRITE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int BINARY_AGE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int BUTTONBOX_DEFAULT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int INPUT_ERROR;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int INTERFACE_AGE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int MAJOR_VERSION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int MAX_COMPOSE_LEN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int MICRO_VERSION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int MINOR_VERSION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int NO_TEXT_INPUT_MOD_MASK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_A3;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_A4;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_A5;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_B5;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_EXECUTIVE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_LEGAL;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PAPER_NAME_LETTER;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int PARAM_READABLE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int PARAM_READWRITE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int PARAM_WRITABLE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int PATH_PRIO_MASK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_COLLATE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_DEFAULT_SOURCE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_DITHER;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_DUPLEX;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_FINISHINGS;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_MEDIA_TYPE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_NUMBER_UP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_NUMBER_UP_LAYOUT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_N_COPIES;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_ORIENTATION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_OUTPUT_BIN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_OUTPUT_FILE_FORMAT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_OUTPUT_URI;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PAGE_RANGES;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PAGE_SET;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PAPER_FORMAT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PAPER_HEIGHT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PAPER_WIDTH;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PRINTER;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PRINTER_LPI;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_PRINT_PAGES;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_QUALITY;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_RESOLUTION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_RESOLUTION_X;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_RESOLUTION_Y;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_REVERSE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_SCALE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_USE_COLOR;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_WIN32_DRIVER_EXTRA;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const string PRINT_SETTINGS_WIN32_DRIVER_VERSION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int PRIORITY_REDRAW;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int PRIORITY_RESIZE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ABOUT")]
+       public const string STOCK_ABOUT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ADD")]
+       public const string STOCK_ADD;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.APPLY")]
+       public const string STOCK_APPLY;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.BOLD")]
+       public const string STOCK_BOLD;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CANCEL")]
+       public const string STOCK_CANCEL;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CAPS_LOCK_WARNING")]
+       public const string STOCK_CAPS_LOCK_WARNING;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CDROM")]
+       public const string STOCK_CDROM;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CLEAR")]
+       public const string STOCK_CLEAR;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CLOSE")]
+       public const string STOCK_CLOSE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.COLOR_PICKER")]
+       public const string STOCK_COLOR_PICKER;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CONNECT")]
+       public const string STOCK_CONNECT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CONVERT")]
+       public const string STOCK_CONVERT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.COPY")]
+       public const string STOCK_COPY;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.CUT")]
+       public const string STOCK_CUT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DELETE")]
+       public const string STOCK_DELETE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DIALOG_AUTHENTICATION")]
+       public const string STOCK_DIALOG_AUTHENTICATION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DIALOG_ERROR")]
+       public const string STOCK_DIALOG_ERROR;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DIALOG_INFO")]
+       public const string STOCK_DIALOG_INFO;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DIALOG_QUESTION")]
+       public const string STOCK_DIALOG_QUESTION;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DIALOG_WARNING")]
+       public const string STOCK_DIALOG_WARNING;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DIRECTORY")]
+       public const string STOCK_DIRECTORY;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DISCARD")]
+       public const string STOCK_DISCARD;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DISCONNECT")]
+       public const string STOCK_DISCONNECT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DND")]
+       public const string STOCK_DND;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.DND_MULTIPLE")]
+       public const string STOCK_DND_MULTIPLE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.EDIT")]
+       public const string STOCK_EDIT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.EXECUTE")]
+       public const string STOCK_EXECUTE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.FILE")]
+       public const string STOCK_FILE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.FIND")]
+       public const string STOCK_FIND;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.FIND_AND_REPLACE")]
+       public const string STOCK_FIND_AND_REPLACE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.FLOPPY")]
+       public const string STOCK_FLOPPY;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.FULLSCREEN")]
+       public const string STOCK_FULLSCREEN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GOTO_BOTTOM")]
+       public const string STOCK_GOTO_BOTTOM;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GOTO_FIRST")]
+       public const string STOCK_GOTO_FIRST;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GOTO_LAST")]
+       public const string STOCK_GOTO_LAST;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GOTO_TOP")]
+       public const string STOCK_GOTO_TOP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GO_BACK")]
+       public const string STOCK_GO_BACK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GO_DOWN")]
+       public const string STOCK_GO_DOWN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GO_FORWARD")]
+       public const string STOCK_GO_FORWARD;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.GO_UP")]
+       public const string STOCK_GO_UP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.HARDDISK")]
+       public const string STOCK_HARDDISK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.HELP")]
+       public const string STOCK_HELP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.HOME")]
+       public const string STOCK_HOME;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.INDENT")]
+       public const string STOCK_INDENT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.INDEX")]
+       public const string STOCK_INDEX;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.INFO")]
+       public const string STOCK_INFO;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ITALIC")]
+       public const string STOCK_ITALIC;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.JUMP_TO")]
+       public const string STOCK_JUMP_TO;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.JUSTIFY_CENTER")]
+       public const string STOCK_JUSTIFY_CENTER;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.JUSTIFY_FILL")]
+       public const string STOCK_JUSTIFY_FILL;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.JUSTIFY_LEFT")]
+       public const string STOCK_JUSTIFY_LEFT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.JUSTIFY_RIGHT")]
+       public const string STOCK_JUSTIFY_RIGHT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.FULLSCREEN")]
+       public const string STOCK_LEAVE_FULLSCREEN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_FORWARD")]
+       public const string STOCK_MEDIA_FORWARD;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_NEXT")]
+       public const string STOCK_MEDIA_NEXT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_PAUSE")]
+       public const string STOCK_MEDIA_PAUSE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_PLAY")]
+       public const string STOCK_MEDIA_PLAY;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_PREVIOUS")]
+       public const string STOCK_MEDIA_PREVIOUS;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_RECORD")]
+       public const string STOCK_MEDIA_RECORD;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_REWIND")]
+       public const string STOCK_MEDIA_REWIND;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MEDIA_STOP")]
+       public const string STOCK_MEDIA_STOP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.MISSING_IMAGE")]
+       public const string STOCK_MISSING_IMAGE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.NETWORK")]
+       public const string STOCK_NETWORK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.NEW")]
+       public const string STOCK_NEW;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.NO")]
+       public const string STOCK_NO;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.OK")]
+       public const string STOCK_OK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.OPEN")]
+       public const string STOCK_OPEN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ORIENTATION_LANDSCAPE")]
+       public const string STOCK_ORIENTATION_LANDSCAPE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ORIENTATION_PORTRAIT")]
+       public const string STOCK_ORIENTATION_PORTRAIT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ORIENTATION_REVERSE_LANDSCAPE")]
+       public const string STOCK_ORIENTATION_REVERSE_LANDSCAPE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ORIENTATION_REVERSE_PORTRAIT")]
+       public const string STOCK_ORIENTATION_REVERSE_PORTRAIT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PAGE_SETUP")]
+       public const string STOCK_PAGE_SETUP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PASTE")]
+       public const string STOCK_PASTE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PREFERENCES")]
+       public const string STOCK_PREFERENCES;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PRINT")]
+       public const string STOCK_PRINT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PRINT_ERROR")]
+       public const string STOCK_PRINT_ERROR;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PRINT_PAUSED")]
+       public const string STOCK_PRINT_PAUSED;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PRINT_PREVIEW")]
+       public const string STOCK_PRINT_PREVIEW;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PRINT_REPORT")]
+       public const string STOCK_PRINT_REPORT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PRINT_WARNING")]
+       public const string STOCK_PRINT_WARNING;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.PROPERTIES")]
+       public const string STOCK_PROPERTIES;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.QUIT")]
+       public const string STOCK_QUIT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.REDO")]
+       public const string STOCK_REDO;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.REFRESH")]
+       public const string STOCK_REFRESH;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.REMOVE")]
+       public const string STOCK_REMOVE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.REVERT_TO_SAVED")]
+       public const string STOCK_REVERT_TO_SAVED;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SAVE")]
+       public const string STOCK_SAVE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SAVE_AS")]
+       public const string STOCK_SAVE_AS;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SELECT_ALL")]
+       public const string STOCK_SELECT_ALL;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SELECT_COLOR")]
+       public const string STOCK_SELECT_COLOR;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SELECT_FONT")]
+       public const string STOCK_SELECT_FONT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SORT_ASCENDING")]
+       public const string STOCK_SORT_ASCENDING;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SORT_DESCENDING")]
+       public const string STOCK_SORT_DESCENDING;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.SPELL_CHECK")]
+       public const string STOCK_SPELL_CHECK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.STOP")]
+       public const string STOCK_STOP;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.STRIKETHROUGH")]
+       public const string STOCK_STRIKETHROUGH;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.UNDELETE")]
+       public const string STOCK_UNDELETE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.UNDERLINE")]
+       public const string STOCK_UNDERLINE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.UNDO")]
+       public const string STOCK_UNDO;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.UNINDENT")]
+       public const string STOCK_UNINDENT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.YES")]
+       public const string STOCK_YES;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ZOOM_100")]
+       public const string STOCK_ZOOM_100;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ZOOM_FIT")]
+       public const string STOCK_ZOOM_FIT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ZOOM_IN")]
+       public const string STOCK_ZOOM_IN;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.ZOOM_OUT")]
+       public const string STOCK_ZOOM_OUT;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int TEXT_VIEW_PRIORITY_VALIDATE;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int TOGGLE_GROUP_MOD_MASK;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public const int TYPE_FUNDAMENTAL_LAST;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool accel_groups_activate (GLib.Object object, uint accel_key, Gdk.ModifierType accel_mods);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned GLib.SList<Gtk.AccelGroup> accel_groups_from_object (GLib.Object object);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint accelerator_get_default_mod_mask ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string accelerator_get_label (uint accelerator_key, Gdk.ModifierType accelerator_mods);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string accelerator_name (uint accelerator_key, Gdk.ModifierType accelerator_mods);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void accelerator_parse (string accelerator, out uint accelerator_key, out Gdk.ModifierType accelerator_mods);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void accelerator_set_default_mod_mask (Gdk.ModifierType default_mod_mask);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool accelerator_valid (uint keyval, Gdk.ModifierType modifiers);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool alternative_dialog_button_order (Gdk.Screen screen);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool bindings_activate (Gtk.Object object, uint keyval, Gdk.ModifierType modifiers);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool bindings_activate_event (Gtk.Object object, Gdk.EventKey event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned string check_version (uint required_major, uint required_minor, uint required_micro);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void disable_setlocale ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gdk.DragContext drag_begin (Gtk.Widget widget, Gtk.TargetList targets, Gdk.DragAction actions, int button, Gdk.Event event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool drag_check_threshold (Gtk.Widget widget, int start_x, int start_y, int current_x, int current_y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_add_image_targets (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_add_text_targets (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_add_uri_targets (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gdk.Atom drag_dest_find_target (Gtk.Widget widget, Gdk.DragContext context, Gtk.TargetList target_list);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.TargetList drag_dest_get_target_list (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool drag_dest_get_track_motion (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_set (Gtk.Widget widget, Gtk.DestDefaults flags, Gtk.TargetEntry[] targets, Gdk.DragAction actions);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_set_proxy (Gtk.Widget widget, Gdk.Window proxy_window, Gdk.DragProtocol protocol, bool use_coordinates);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_set_target_list (Gtk.Widget widget, Gtk.TargetList target_list);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_set_track_motion (Gtk.Widget widget, bool track_motion);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_dest_unset (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_finish (Gdk.DragContext context, bool success, bool del, uint32 time_);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_get_data (Gtk.Widget widget, Gdk.DragContext context, Gdk.Atom target, uint32 time_);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget drag_get_source_widget (Gdk.DragContext context);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_highlight (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_set_icon_default (Gdk.DragContext context);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_set_icon_name (Gdk.DragContext context, string icon_name, int hot_x, int hot_y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_set_icon_pixbuf (Gdk.DragContext context, Gdk.Pixbuf pixbuf, int hot_x, int hot_y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_set_icon_pixmap (Gdk.DragContext context, Gdk.Colormap colormap, Gdk.Pixmap pixmap, Gdk.Bitmap mask, int hot_x, int hot_y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_set_icon_stock (Gdk.DragContext context, string stock_id, int hot_x, int hot_y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_set_icon_widget (Gdk.DragContext context, Gtk.Widget widget, int hot_x, int hot_y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_add_image_targets (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_add_text_targets (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_add_uri_targets (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.TargetList drag_source_get_target_list (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_set (Gtk.Widget widget, Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_set_icon (Gtk.Widget widget, Gdk.Colormap colormap, Gdk.Pixmap pixmap, Gdk.Bitmap mask);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_set_icon_name (Gtk.Widget widget, string icon_name);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_set_icon_pixbuf (Gtk.Widget widget, Gdk.Pixbuf pixbuf);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_set_icon_stock (Gtk.Widget widget, string stock_id);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_set_target_list (Gtk.Widget widget, Gtk.TargetList target_list);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_source_unset (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void drag_unhighlight (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void draw_insertion_cursor (Gtk.Widget widget, Gdk.Drawable drawable, Gdk.Rectangle area, Gdk.Rectangle location, bool is_primary, Gtk.TextDirection direction, bool draw_arrow);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool events_pending ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gdk.GC gc_get (int depth, Gdk.Colormap colormap, Gdk.GCValues values, Gdk.GCValuesMask values_mask);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void gc_release (Gdk.GC gc);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gdk.Event get_current_event ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool get_current_event_state (out Gdk.ModifierType state);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint32 get_current_event_time ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Pango.Language get_default_language ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget get_event_widget (Gdk.Event event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static GLib.OptionGroup get_option_group (bool open_default_display);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void grab_add (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget grab_get_current ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void grab_remove (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gtk.IconSize icon_size_from_name (string name);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned string icon_size_get_name (Gtk.IconSize size);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool icon_size_lookup (Gtk.IconSize size, out int width, out int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool icon_size_lookup_for_settings (Gtk.Settings settings, Gtk.IconSize size, out int width, out int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gtk.IconSize icon_size_register (string name, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void icon_size_register_alias (string alias, Gtk.IconSize target);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static GLib.Type identifier_get_type ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void init ([CCode (array_length_pos = 0.9)] ref unowned string[]? argv);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void init_add (Gtk.Function function);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool init_check ([CCode (array_length_pos = 0.9)] ref unowned string[] argv);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool init_with_args ([CCode (array_length_pos = 0.9)] ref unowned string[] argv, string parameter_string, [CCode (array_length = false)] GLib.OptionEntry[] entries, string? translation_domain) throws GLib.Error;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint key_snooper_install (Gtk.KeySnoopFunc snooper);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void key_snooper_remove (uint snooper_handler_id);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void main ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void main_do_event (Gdk.Event event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool main_iteration ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool main_iteration_do (bool blocking);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint main_level ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void main_quit ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_arrow (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, Gtk.ArrowType arrow_type, bool fill, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_box (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_box_gap (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_check (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_diamond (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_expander (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, Gtk.ExpanderStyle expander_style);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_extension (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.PositionType gap_side);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_flat_box (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_focus (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_handle (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.Orientation orientation);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_hline (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x1, int x2, int y);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_layout (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, bool use_text, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, Pango.Layout layout);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_option (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_polygon (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, Gdk.Point[] points, bool fill);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_resize_grip (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, Gdk.WindowEdge edge, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_shadow (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_shadow_gap (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_slider (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.Orientation orientation);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_spinner (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, uint step, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_tab (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int x, int y, int width, int height);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void paint_vline (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle? area, Gtk.Widget? widget, string? detail, int y1_, int y2_, int x);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool parse_args ([CCode (array_length_pos = 0.5)] ref unowned string[] argv);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static GLib.Quark print_error_quark ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gtk.PageSetup print_run_page_setup_dialog (Gtk.Window parent, Gtk.PageSetup page_setup, Gtk.PrintSettings settings);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void print_run_page_setup_dialog_async (Gtk.Window parent, Gtk.PageSetup page_setup, Gtk.PrintSettings settings, Gtk.PageSetupDoneFunc done_cb);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void propagate_event (Gtk.Widget widget, Gdk.Event event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint quit_add (uint main_level, Gtk.Function function);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void quit_add_destroy (uint main_level, Gtk.Object object);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void quit_remove (uint quit_handler_id);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void quit_remove_by_data (void* data);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void rc_add_default_file (string filename);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string rc_find_module_in_path (string module_file);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string rc_find_pixmap_in_path (Gtk.Settings settings, GLib.Scanner scanner, string pixmap_file);
+       [CCode (array_length = false, array_null_terminated = true, cheader_filename = "gtk/gtk.h")]
+       public static unowned string[] rc_get_default_files ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string rc_get_im_module_file ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string rc_get_im_module_path ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string rc_get_module_dir ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Style rc_get_style (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Style? rc_get_style_by_paths (Gtk.Settings settings, string? widget_path, string? class_path, GLib.Type type);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string rc_get_theme_dir ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void rc_parse (string filename);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint rc_parse_color (GLib.Scanner scanner, out Gdk.Color color);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint rc_parse_color_full (GLib.Scanner scanner, Gtk.RcStyle style, out Gdk.Color color);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint rc_parse_priority (GLib.Scanner scanner, Gtk.PathPriorityType priority);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static uint rc_parse_state (GLib.Scanner scanner, out Gtk.StateType state);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void rc_parse_string (string rc_string);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool rc_reparse_all ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool rc_reparse_all_for_settings (Gtk.Settings settings, bool force_load);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void rc_reset_styles (Gtk.Settings settings);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned GLib.Scanner rc_scanner_new ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void rc_set_default_files ([CCode (array_length = false, array_null_terminated = true)] string[] filenames);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void rgb_to_hsv (double r, double g, double b, out double h, out double s, out double v);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void selection_add_target (Gtk.Widget widget, Gdk.Atom selection, Gdk.Atom target, uint info);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void selection_add_targets (Gtk.Widget widget, Gdk.Atom selection, [CCode (array_length_pos = 3.1, array_length_type = "guint")] Gtk.TargetEntry[] targets);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool selection_clear (Gtk.Widget widget, Gdk.EventSelection event);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void selection_clear_targets (Gtk.Widget widget, Gdk.Atom selection);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool selection_convert (Gtk.Widget widget, Gdk.Atom selection, Gdk.Atom target, uint32 time_);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool selection_owner_set (Gtk.Widget widget, Gdk.Atom selection, uint32 time_);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool selection_owner_set_for_display (Gdk.Display display, Gtk.Widget widget, Gdk.Atom selection, uint32 time_);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void selection_remove_all (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned string set_locale ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void show_about_dialog (Gtk.Window? parent, ...);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool show_uri (Gdk.Screen? screen, string uri, uint32 timestamp) throws GLib.Error;
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.add")]
+       public static void stock_add (Gtk.StockItem[] items);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.add_static")]
+       public static void stock_add_static (Gtk.StockItem[] items);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.12", replacement = "Gtk.Stock.list_ids")]
+       public static GLib.SList<string> stock_list_ids ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       [Version (deprecated_since = "vala-0.26", replacement = "Gtk.Stock.set_translate_func")]
+       public static void stock_set_translate_func (string domain, owned Gtk.TranslateFunc func);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void target_table_free (Gtk.TargetEntry[] targets);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gtk.TargetEntry[] target_table_new_from_list (Gtk.TargetList list);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool targets_include_image (Gdk.Atom[] targets, bool writable);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool targets_include_rich_text (Gdk.Atom[] targets, Gtk.TextBuffer buffer);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool targets_include_text (Gdk.Atom[] targets);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool targets_include_uri (Gdk.Atom[] targets);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget test_create_simple_window (string window_title, string dialog_text);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget test_create_widget (GLib.Type widget_type, ...);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static Gtk.Widget test_display_button_window (string window_title, string dialog_text, ...);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget test_find_label (Gtk.Widget widget, string label_pattern);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget test_find_sibling (Gtk.Widget base_widget, GLib.Type widget_type);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static unowned Gtk.Widget test_find_widget (Gtk.Widget widget, string label_pattern, GLib.Type widget_type);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void test_init ([CCode (array_length_pos = 0.9)] ref unowned string[] argvp, ...);
+       [CCode (array_length = false, array_length_type = "guint", array_null_terminated = true, cheader_filename = "gtk/gtk.h")]
+       public static unowned GLib.Type[] test_list_all_types ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void test_register_all_types ();
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static double test_slider_get_value (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void test_slider_set_perc (Gtk.Widget widget, double percentage);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool test_spin_button_click (Gtk.SpinButton spinner, uint button, bool upwards);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static string test_text_get (Gtk.Widget widget);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static void test_text_set (Gtk.Widget widget, string str);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool test_widget_click (Gtk.Widget widget, uint button, Gdk.ModifierType modifiers);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool test_widget_send_key (Gtk.Widget widget, uint keyval, Gdk.ModifierType modifiers);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool tree_get_row_drag_data (Gtk.SelectionData selection_data, out unowned Gtk.TreeModel tree_model, out Gtk.TreePath path);
+       [CCode (cheader_filename = "gtk/gtk.h")]
+       public static bool tree_set_row_drag_data (Gtk.SelectionData selection_data, Gtk.TreeModel tree_model, Gtk.TreePath path);
+}