/* 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 { owned 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 { owned 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 { owned 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 { owned 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, void* user_data);
		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, ref 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, ref 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 (ref 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);
		[NoAccessorMethod]
		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);
		[NoAccessorMethod]
		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 time_t get_added ();
		public int get_age ();
		public bool get_application_info (string app_name, out unowned string app_exec, out uint count, out time_t 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 time_t get_modified ();
		public bool get_private_hint ();
		public string get_short_name ();
		public unowned string get_uri ();
		public string? get_uri_display ();
		public time_t 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, ref 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 (ref 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 { owned 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 { owned 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 { owned 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 (ref Gtk.TextIter iter);
		public bool backward_display_line_start (ref 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 (ref Gtk.TextIter iter);
		public bool forward_display_line_end (ref 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 (ref 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, out Gdk.Rectangle? intersection = null);
		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 (ref 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", 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", 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")]
	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.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);
}
