libgeetk r4 - in trunk/geetk: gridview ribbon vapi



Author: telemaco
Date: Tue Jul 22 00:05:35 2008
New Revision: 4
URL: http://svn.gnome.org/viewvc/libgeetk?rev=4&view=rev

Log:
Add vapi dir with some custom methods
Comment some methods



Added:
   trunk/geetk/vapi/
   trunk/geetk/vapi/gtk+-2.0.deps
   trunk/geetk/vapi/gtk+-2.0.vapi
Modified:
   trunk/geetk/gridview/Makefile
   trunk/geetk/gridview/gridview.vala
   trunk/geetk/ribbon/helpers.vala

Modified: trunk/geetk/gridview/Makefile
==============================================================================
--- trunk/geetk/gridview/Makefile	(original)
+++ trunk/geetk/gridview/Makefile	Tue Jul 22 00:05:35 2008
@@ -11,7 +11,7 @@
 	$(CC) gridview.o demo_plain_c.o -o gridviewdemo $(GRIDVIEW_LIBS)
 
 gridview.c: gridview.vala
-	$(VALAC) -C --pkg gee-1.0 --pkg gtk+-2.0 --pkg gdk-2.0 --disable-non-null $^
+	$(VALAC) --vapidir=../vapi -C --pkg gee-1.0 --pkg gtk+-2.0 --pkg gdk-2.0 --disable-non-null $^
 
 gridview.o: gridview.c
 	$(CC) -c $(CFLAGS) $(GRIDVIEW_CFLAGS) $^ -o $@

Modified: trunk/geetk/gridview/gridview.vala
==============================================================================
--- trunk/geetk/gridview/gridview.vala	(original)
+++ trunk/geetk/gridview/gridview.vala	Tue Jul 22 00:05:35 2008
@@ -189,7 +189,8 @@
 				// XXX-VALA parameter v should be out instead of ref
 				m.get_value (i, attrs.get (prop), ref v);
 				// XXX-VALA set_property () is missing in glib.vapi
-				r.set_property (prop, v);
+				// FIXME GEETK : Don't compile, missing set_property
+				//r.set_property(prop, v);
 			}
 
 			if (h && _hdf != null) {
@@ -684,8 +685,9 @@
 				w.unparent ();
 			}
 		}
+		
 
-		protected override void forall (bool i, Gtk.Callback cb) {
+		protected override void forall (bool include_internals, Gtk.Callback cb) {
 			foreach (Widget widget in _children) {
 				cb (widget);
 			}

Modified: trunk/geetk/ribbon/helpers.vala
==============================================================================
--- trunk/geetk/ribbon/helpers.vala	(original)
+++ trunk/geetk/ribbon/helpers.vala	Tue Jul 22 00:05:35 2008
@@ -20,21 +20,22 @@
 
 namespace Gdk.Rect {
 
-	public static int right (Gdk.Rectangle rect) {
-		return rect.x + rect.width;
-	}
-
-	public static int bottom (Gdk.Rectangle rect) {
-		return rect.y + rect.height;
-	}
-
-	public static int top (Gdk.Rectangle rect) {
-		return rect.y;
-	}
-
-	public static int left (Gdk.Rectangle rect) {
-		return rect.x;
-	}
+	// FIXME GEETK :`Gdk.Rect' already contains a definition
+	// public static int right (Gdk.Rectangle rect) {
+	// 	return rect.x + rect.width;
+	// }
+
+	// public static int bottom (Gdk.Rectangle rect) {
+	// 	return rect.y + rect.height;
+	// }
+
+	// public static int top (Gdk.Rectangle rect) {
+	// 	return rect.y;
+	// }
+
+	// public static int left (Gdk.Rectangle rect) {
+	// 	return rect.x;
+	// }
 
 	public static bool contains (Gdk.Rectangle rect, int x, int y) {
 		return ((x >= left (rect)) && (x <= right (rect)) && 

Added: trunk/geetk/vapi/gtk+-2.0.deps
==============================================================================
--- (empty file)
+++ trunk/geetk/vapi/gtk+-2.0.deps	Tue Jul 22 00:05:35 2008
@@ -0,0 +1,6 @@
+gio-2.0
+atk
+cairo
+gdk-pixbuf-2.0
+gdk-2.0
+pango

Added: trunk/geetk/vapi/gtk+-2.0.vapi
==============================================================================
--- (empty file)
+++ trunk/geetk/vapi/gtk+-2.0.vapi	Tue Jul 22 00:05:35 2008
@@ -0,0 +1,7321 @@
+/* gtk+-2.0.vapi generated by lt-vapigen, do not modify. */
+
+[CCode (cprefix = "Gtk", lower_case_cprefix = "gtk_")]
+namespace Gtk {
+	[CCode (cprefix = "GTK_ANCHOR_", cheader_filename = "gtk/gtk.h")]
+	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 (cprefix = "GTK_ARROW_", cheader_filename = "gtk/gtk.h")]
+	public enum ArrowType {
+		UP,
+		DOWN,
+		LEFT,
+		RIGHT,
+		NONE
+	}
+	[CCode (cprefix = "GTK_ASSISTANT_PAGE_", cheader_filename = "gtk/gtk.h")]
+	public enum AssistantPageType {
+		CONTENT,
+		INTRO,
+		CONFIRM,
+		SUMMARY,
+		PROGRESS
+	}
+	[CCode (cprefix = "GTK_BUTTONBOX_", cheader_filename = "gtk/gtk.h")]
+	public enum ButtonBoxStyle {
+		DEFAULT_STYLE,
+		SPREAD,
+		EDGE,
+		START,
+		END,
+		CENTER
+	}
+	[CCode (cprefix = "GTK_BUTTONS_", cheader_filename = "gtk/gtk.h")]
+	public enum ButtonsType {
+		NONE,
+		OK,
+		CLOSE,
+		CANCEL,
+		YES_NO,
+		OK_CANCEL
+	}
+	[CCode (cprefix = "GTK_CLIST_DRAG_", cheader_filename = "gtk/gtk.h")]
+	public enum CListDragPos {
+		NONE,
+		BEFORE,
+		INTO,
+		AFTER
+	}
+	[CCode (cprefix = "GTK_CTREE_EXPANDER_", cheader_filename = "gtk/gtk.h")]
+	public enum CTreeExpanderStyle {
+		NONE,
+		SQUARE,
+		TRIANGLE,
+		CIRCULAR
+	}
+	[CCode (cprefix = "GTK_CTREE_EXPANSION_", cheader_filename = "gtk/gtk.h")]
+	public enum CTreeExpansionType {
+		EXPAND,
+		EXPAND_RECURSIVE,
+		COLLAPSE,
+		COLLAPSE_RECURSIVE,
+		TOGGLE,
+		TOGGLE_RECURSIVE
+	}
+	[CCode (cprefix = "GTK_CTREE_LINES_", cheader_filename = "gtk/gtk.h")]
+	public enum CTreeLineStyle {
+		NONE,
+		SOLID,
+		DOTTED,
+		TABBED
+	}
+	[CCode (cprefix = "GTK_CTREE_POS_", cheader_filename = "gtk/gtk.h")]
+	public enum CTreePos {
+		BEFORE,
+		AS_CHILD,
+		AFTER
+	}
+	[CCode (cprefix = "GTK_CELL_RENDERER_ACCEL_MODE_", cheader_filename = "gtk/gtk.h")]
+	public enum CellRendererAccelMode {
+		GTK,
+		OTHER
+	}
+	[CCode (cprefix = "GTK_CELL_RENDERER_MODE_", cheader_filename = "gtk/gtk.h")]
+	public enum CellRendererMode {
+		INERT,
+		ACTIVATABLE,
+		EDITABLE
+	}
+	[CCode (cprefix = "GTK_CELL_", cheader_filename = "gtk/gtk.h")]
+	public enum CellType {
+		EMPTY,
+		TEXT,
+		PIXMAP,
+		PIXTEXT,
+		WIDGET
+	}
+	[CCode (cprefix = "GTK_CORNER_", cheader_filename = "gtk/gtk.h")]
+	public enum CornerType {
+		TOP_LEFT,
+		BOTTOM_LEFT,
+		TOP_RIGHT,
+		BOTTOM_RIGHT
+	}
+	[CCode (cprefix = "GTK_CURVE_TYPE_", cheader_filename = "gtk/gtk.h")]
+	public enum CurveType {
+		LINEAR,
+		SPLINE,
+		FREE
+	}
+	[CCode (cprefix = "GTK_DELETE_", cheader_filename = "gtk/gtk.h")]
+	public enum DeleteType {
+		CHARS,
+		WORD_ENDS,
+		WORDS,
+		DISPLAY_LINES,
+		DISPLAY_LINE_ENDS,
+		PARAGRAPH_ENDS,
+		PARAGRAPHS,
+		WHITESPACE
+	}
+	[CCode (cprefix = "GTK_DIR_", cheader_filename = "gtk/gtk.h")]
+	public enum DirectionType {
+		TAB_FORWARD,
+		TAB_BACKWARD,
+		UP,
+		DOWN,
+		LEFT,
+		RIGHT
+	}
+	[CCode (cprefix = "GTK_DRAG_RESULT_", cheader_filename = "gtk/gtk.h")]
+	public enum DragResult {
+		SUCCESS,
+		NO_TARGET,
+		USER_CANCELLED,
+		TIMEOUT_EXPIRED,
+		GRAB_BROKEN,
+		ERROR
+	}
+	[CCode (cprefix = "GTK_EXPANDER_", cheader_filename = "gtk/gtk.h")]
+	public enum ExpanderStyle {
+		COLLAPSED,
+		SEMI_COLLAPSED,
+		SEMI_EXPANDED,
+		EXPANDED
+	}
+	[CCode (cprefix = "GTK_FILE_CHOOSER_ACTION_", cheader_filename = "gtk/gtk.h")]
+	public enum FileChooserAction {
+		OPEN,
+		SAVE,
+		SELECT_FOLDER,
+		CREATE_FOLDER
+	}
+	[CCode (cprefix = "GTK_FILE_CHOOSER_CONFIRMATION_", cheader_filename = "gtk/gtk.h")]
+	public enum FileChooserConfirmation {
+		CONFIRM,
+		ACCEPT_FILENAME,
+		SELECT_AGAIN
+	}
+	[CCode (cprefix = "GTK_FILE_CHOOSER_ERROR_", cheader_filename = "gtk/gtk.h")]
+	public enum FileChooserError {
+		NONEXISTENT,
+		BAD_FILENAME,
+		ALREADY_EXISTS
+	}
+	[CCode (cprefix = "GTK_IM_PREEDIT_", cheader_filename = "gtk/gtk.h")]
+	public enum IMPreeditStyle {
+		NOTHING,
+		CALLBACK,
+		NONE
+	}
+	[CCode (cprefix = "GTK_IM_STATUS_", cheader_filename = "gtk/gtk.h")]
+	public enum IMStatusStyle {
+		NOTHING,
+		CALLBACK,
+		NONE
+	}
+	[CCode (cprefix = "GTK_ICON_SIZE_", cheader_filename = "gtk/gtk.h")]
+	public enum IconSize {
+		INVALID,
+		MENU,
+		SMALL_TOOLBAR,
+		LARGE_TOOLBAR,
+		BUTTON,
+		DND,
+		DIALOG
+	}
+	[CCode (cprefix = "GTK_ICON_THEME_", cheader_filename = "gtk/gtk.h")]
+	public enum IconThemeError {
+		NOT_FOUND,
+		FAILED
+	}
+	[CCode (cprefix = "GTK_ICON_VIEW_", cheader_filename = "gtk/gtk.h")]
+	public enum IconViewDropPosition {
+		NO_DROP,
+		DROP_INTO,
+		DROP_LEFT,
+		DROP_RIGHT,
+		DROP_ABOVE,
+		DROP_BELOW
+	}
+	[CCode (cprefix = "GTK_IMAGE_", cheader_filename = "gtk/gtk.h")]
+	public enum ImageType {
+		EMPTY,
+		PIXMAP,
+		IMAGE,
+		PIXBUF,
+		STOCK,
+		ICON_SET,
+		ANIMATION,
+		ICON_NAME,
+		GICON
+	}
+	[CCode (cprefix = "GTK_JUSTIFY_", cheader_filename = "gtk/gtk.h")]
+	public enum Justification {
+		LEFT,
+		RIGHT,
+		CENTER,
+		FILL
+	}
+	[CCode (cprefix = "GTK_MATCH_", cheader_filename = "gtk/gtk.h")]
+	public enum MatchType {
+		ALL,
+		ALL_TAIL,
+		HEAD,
+		TAIL,
+		EXACT,
+		LAST
+	}
+	[CCode (cprefix = "GTK_MENU_DIR_", cheader_filename = "gtk/gtk.h")]
+	public enum MenuDirectionType {
+		PARENT,
+		CHILD,
+		NEXT,
+		PREV
+	}
+	[CCode (cprefix = "GTK_MESSAGE_", cheader_filename = "gtk/gtk.h")]
+	public enum MessageType {
+		INFO,
+		WARNING,
+		QUESTION,
+		ERROR,
+		OTHER
+	}
+	[CCode (cprefix = "GTK_", cheader_filename = "gtk/gtk.h")]
+	public enum MetricType {
+		PIXELS,
+		INCHES,
+		CENTIMETERS
+	}
+	[CCode (cprefix = "GTK_MOVEMENT_", cheader_filename = "gtk/gtk.h")]
+	public enum MovementStep {
+		LOGICAL_POSITIONS,
+		VISUAL_POSITIONS,
+		WORDS,
+		DISPLAY_LINES,
+		DISPLAY_LINE_ENDS,
+		PARAGRAPHS,
+		PARAGRAPH_ENDS,
+		PAGES,
+		BUFFER_ENDS,
+		HORIZONTAL_PAGES
+	}
+	[CCode (cprefix = "GTK_NOTEBOOK_TAB_", cheader_filename = "gtk/gtk.h")]
+	public enum NotebookTab {
+		FIRST,
+		LAST
+	}
+	[CCode (cprefix = "GTK_ORIENTATION_", cheader_filename = "gtk/gtk.h")]
+	public enum Orientation {
+		HORIZONTAL,
+		VERTICAL
+	}
+	[CCode (cprefix = "GTK_PACK_DIRECTION_", cheader_filename = "gtk/gtk.h")]
+	public enum PackDirection {
+		LTR,
+		RTL,
+		TTB,
+		BTT
+	}
+	[CCode (cprefix = "GTK_PACK_", cheader_filename = "gtk/gtk.h")]
+	public enum PackType {
+		START,
+		END
+	}
+	[CCode (cprefix = "GTK_PAGE_ORIENTATION_", cheader_filename = "gtk/gtk.h")]
+	public enum PageOrientation {
+		PORTRAIT,
+		LANDSCAPE,
+		REVERSE_PORTRAIT,
+		REVERSE_LANDSCAPE
+	}
+	[CCode (cprefix = "GTK_PAGE_SET_", cheader_filename = "gtk/gtk.h")]
+	public enum PageSet {
+		ALL,
+		EVEN,
+		ODD
+	}
+	[CCode (cprefix = "GTK_PATH_PRIO_", cheader_filename = "gtk/gtk.h")]
+	public enum PathPriorityType {
+		LOWEST,
+		GTK,
+		APPLICATION,
+		THEME,
+		RC,
+		HIGHEST
+	}
+	[CCode (cprefix = "GTK_PATH_", cheader_filename = "gtk/gtk.h")]
+	public enum PathType {
+		WIDGET,
+		WIDGET_CLASS,
+		CLASS
+	}
+	[CCode (cprefix = "GTK_POLICY_", cheader_filename = "gtk/gtk.h")]
+	public enum PolicyType {
+		ALWAYS,
+		AUTOMATIC,
+		NEVER
+	}
+	[CCode (cprefix = "GTK_POS_", cheader_filename = "gtk/gtk.h")]
+	public enum PositionType {
+		LEFT,
+		RIGHT,
+		TOP,
+		BOTTOM
+	}
+	[CCode (cprefix = "GTK_PREVIEW_", cheader_filename = "gtk/gtk.h")]
+	public enum PreviewType {
+		COLOR,
+		GRAYSCALE
+	}
+	[CCode (cprefix = "GTK_PRINT_DUPLEX_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintDuplex {
+		SIMPLEX,
+		HORIZONTAL,
+		VERTICAL
+	}
+	[CCode (cprefix = "GTK_PRINT_ERROR_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintError {
+		GENERAL,
+		INTERNAL_ERROR,
+		NOMEM,
+		INVALID_FILE
+	}
+	[CCode (cprefix = "GTK_PRINT_OPERATION_ACTION_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintOperationAction {
+		PRINT_DIALOG,
+		PRINT,
+		PREVIEW,
+		EXPORT
+	}
+	[CCode (cprefix = "GTK_PRINT_OPERATION_RESULT_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintOperationResult {
+		ERROR,
+		APPLY,
+		CANCEL,
+		IN_PROGRESS
+	}
+	[CCode (cprefix = "GTK_PRINT_PAGES_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintPages {
+		ALL,
+		CURRENT,
+		RANGES
+	}
+	[CCode (cprefix = "GTK_PRINT_QUALITY_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintQuality {
+		LOW,
+		NORMAL,
+		HIGH,
+		DRAFT
+	}
+	[CCode (cprefix = "GTK_PRINT_STATUS_", cheader_filename = "gtk/gtk.h")]
+	public enum PrintStatus {
+		INITIAL,
+		PREPARING,
+		GENERATING_DATA,
+		SENDING_DATA,
+		PENDING,
+		PENDING_ISSUE,
+		PRINTING,
+		FINISHED,
+		FINISHED_ABORTED
+	}
+	[CCode (cprefix = "GTK_PROGRESS_", cheader_filename = "gtk/gtk.h")]
+	public enum ProgressBarOrientation {
+		LEFT_TO_RIGHT,
+		RIGHT_TO_LEFT,
+		BOTTOM_TO_TOP,
+		TOP_TO_BOTTOM
+	}
+	[CCode (cprefix = "GTK_PROGRESS_", cheader_filename = "gtk/gtk.h")]
+	public enum ProgressBarStyle {
+		CONTINUOUS,
+		DISCRETE
+	}
+	[CCode (cprefix = "GTK_RC_TOKEN_", cheader_filename = "gtk/gtk.h")]
+	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 (cprefix = "GTK_RECENT_CHOOSER_ERROR_", cheader_filename = "gtk/gtk.h")]
+	public enum RecentChooserError {
+		NOT_FOUND,
+		INVALID_URI
+	}
+	[CCode (cprefix = "GTK_RECENT_MANAGER_ERROR_", cheader_filename = "gtk/gtk.h")]
+	public enum RecentManagerError {
+		NOT_FOUND,
+		INVALID_URI,
+		INVALID_ENCODING,
+		NOT_REGISTERED,
+		READ,
+		WRITE,
+		UNKNOWN
+	}
+	[CCode (cprefix = "GTK_RECENT_SORT_", cheader_filename = "gtk/gtk.h")]
+	public enum RecentSortType {
+		NONE,
+		MRU,
+		LRU,
+		CUSTOM
+	}
+	[CCode (cprefix = "GTK_RELIEF_", cheader_filename = "gtk/gtk.h")]
+	public enum ReliefStyle {
+		NORMAL,
+		HALF,
+		NONE
+	}
+	[CCode (cprefix = "GTK_RESIZE_", cheader_filename = "gtk/gtk.h")]
+	public enum ResizeMode {
+		PARENT,
+		QUEUE,
+		IMMEDIATE
+	}
+	[CCode (cprefix = "GTK_RESPONSE_", cheader_filename = "gtk/gtk.h")]
+	public enum ResponseType {
+		NONE,
+		REJECT,
+		ACCEPT,
+		DELETE_EVENT,
+		OK,
+		CANCEL,
+		CLOSE,
+		YES,
+		NO,
+		APPLY,
+		HELP
+	}
+	[CCode (cprefix = "GTK_SCROLL_", cheader_filename = "gtk/gtk.h")]
+	public enum ScrollStep {
+		STEPS,
+		PAGES,
+		ENDS,
+		HORIZONTAL_STEPS,
+		HORIZONTAL_PAGES,
+		HORIZONTAL_ENDS
+	}
+	[CCode (cprefix = "GTK_SCROLL_", cheader_filename = "gtk/gtk.h")]
+	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 (cprefix = "GTK_SELECTION_", cheader_filename = "gtk/gtk.h")]
+	public enum SelectionMode {
+		NONE,
+		SINGLE,
+		BROWSE,
+		MULTIPLE,
+		EXTENDED
+	}
+	[CCode (cprefix = "GTK_SENSITIVITY_", cheader_filename = "gtk/gtk.h")]
+	public enum SensitivityType {
+		AUTO,
+		ON,
+		OFF
+	}
+	[CCode (cprefix = "GTK_SHADOW_", cheader_filename = "gtk/gtk.h")]
+	public enum ShadowType {
+		NONE,
+		IN,
+		OUT,
+		ETCHED_IN,
+		ETCHED_OUT
+	}
+	[CCode (cprefix = "GTK_SIDE_", cheader_filename = "gtk/gtk.h")]
+	public enum SideType {
+		TOP,
+		BOTTOM,
+		LEFT,
+		RIGHT
+	}
+	[CCode (cprefix = "GTK_SIZE_GROUP_", cheader_filename = "gtk/gtk.h")]
+	public enum SizeGroupMode {
+		NONE,
+		HORIZONTAL,
+		VERTICAL,
+		BOTH
+	}
+	[CCode (cprefix = "GTK_SORT_", cheader_filename = "gtk/gtk.h")]
+	public enum SortType {
+		ASCENDING,
+		DESCENDING
+	}
+	[CCode (cprefix = "GTK_UPDATE_", cheader_filename = "gtk/gtk.h")]
+	public enum SpinButtonUpdatePolicy {
+		ALWAYS,
+		IF_VALID
+	}
+	[CCode (cprefix = "GTK_SPIN_", cheader_filename = "gtk/gtk.h")]
+	public enum SpinType {
+		STEP_FORWARD,
+		STEP_BACKWARD,
+		PAGE_FORWARD,
+		PAGE_BACKWARD,
+		HOME,
+		END,
+		USER_DEFINED
+	}
+	[CCode (cprefix = "GTK_STATE_", cheader_filename = "gtk/gtk.h")]
+	public enum StateType {
+		NORMAL,
+		ACTIVE,
+		PRELIGHT,
+		SELECTED,
+		INSENSITIVE
+	}
+	[CCode (cprefix = "GTK_DIRECTION_", cheader_filename = "gtk/gtk.h")]
+	public enum SubmenuDirection {
+		LEFT,
+		RIGHT
+	}
+	[CCode (cprefix = "GTK_", cheader_filename = "gtk/gtk.h")]
+	public enum SubmenuPlacement {
+		TOP_BOTTOM,
+		LEFT_RIGHT
+	}
+	[CCode (cprefix = "GTK_TEXT_BUFFER_TARGET_INFO_", cheader_filename = "gtk/gtk.h")]
+	public enum TextBufferTargetInfo {
+		BUFFER_CONTENTS,
+		RICH_TEXT,
+		TEXT
+	}
+	[CCode (cprefix = "GTK_TEXT_DIR_", cheader_filename = "gtk/gtk.h")]
+	public enum TextDirection {
+		NONE,
+		LTR,
+		RTL
+	}
+	[CCode (cprefix = "GTK_TEXT_WINDOW_", cheader_filename = "gtk/gtk.h")]
+	public enum TextWindowType {
+		PRIVATE,
+		WIDGET,
+		TEXT,
+		LEFT,
+		RIGHT,
+		TOP,
+		BOTTOM
+	}
+	[CCode (cprefix = "GTK_TOOLBAR_CHILD_", cheader_filename = "gtk/gtk.h")]
+	public enum ToolbarChildType {
+		SPACE,
+		BUTTON,
+		TOGGLEBUTTON,
+		RADIOBUTTON,
+		WIDGET
+	}
+	[CCode (cprefix = "GTK_TOOLBAR_SPACE_", cheader_filename = "gtk/gtk.h")]
+	public enum ToolbarSpaceStyle {
+		EMPTY,
+		LINE
+	}
+	[CCode (cprefix = "GTK_TOOLBAR_", cheader_filename = "gtk/gtk.h")]
+	public enum ToolbarStyle {
+		ICONS,
+		TEXT,
+		BOTH,
+		BOTH_HORIZ
+	}
+	[CCode (cprefix = "GTK_TREE_VIEW_COLUMN_", cheader_filename = "gtk/gtk.h")]
+	public enum TreeViewColumnSizing {
+		GROW_ONLY,
+		AUTOSIZE,
+		FIXED
+	}
+	[CCode (cprefix = "GTK_TREE_VIEW_DROP_", cheader_filename = "gtk/gtk.h")]
+	public enum TreeViewDropPosition {
+		BEFORE,
+		AFTER,
+		INTO_OR_BEFORE,
+		INTO_OR_AFTER
+	}
+	[CCode (cprefix = "GTK_TREE_VIEW_GRID_LINES_", cheader_filename = "gtk/gtk.h")]
+	public enum TreeViewGridLines {
+		NONE,
+		HORIZONTAL,
+		VERTICAL,
+		BOTH
+	}
+	[CCode (cprefix = "GTK_TREE_VIEW_", cheader_filename = "gtk/gtk.h")]
+	public enum TreeViewMode {
+		LINE,
+		ITEM
+	}
+	[CCode (cprefix = "GTK_UNIT_", cheader_filename = "gtk/gtk.h")]
+	public enum Unit {
+		PIXEL,
+		POINTS,
+		INCH,
+		MM
+	}
+	[CCode (cprefix = "GTK_UPDATE_", cheader_filename = "gtk/gtk.h")]
+	public enum UpdateType {
+		CONTINUOUS,
+		DISCONTINUOUS,
+		DELAYED
+	}
+	[CCode (cprefix = "GTK_VISIBILITY_", cheader_filename = "gtk/gtk.h")]
+	public enum Visibility {
+		NONE,
+		PARTIAL,
+		FULL
+	}
+	[CCode (cprefix = "GTK_WIDGET_HELP_", cheader_filename = "gtk/gtk.h")]
+	public enum WidgetHelpType {
+		TOOLTIP,
+		WHATS_THIS
+	}
+	[CCode (cprefix = "GTK_WIN_POS_", cheader_filename = "gtk/gtk.h")]
+	public enum WindowPosition {
+		NONE,
+		CENTER,
+		MOUSE,
+		CENTER_ALWAYS,
+		CENTER_ON_PARENT
+	}
+	[CCode (cprefix = "GTK_WINDOW_", cheader_filename = "gtk/gtk.h")]
+	public enum WindowType {
+		TOPLEVEL,
+		POPUP
+	}
+	[CCode (cprefix = "GTK_WRAP_", cheader_filename = "gtk/gtk.h")]
+	public enum WrapMode {
+		NONE,
+		CHAR,
+		WORD,
+		WORD_CHAR
+	}
+	[CCode (cprefix = "GTK_ACCEL_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum AccelFlags {
+		VISIBLE,
+		LOCKED,
+		MASK
+	}
+	[CCode (cprefix = "GTK_ARG_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum ArgFlags {
+		READABLE,
+		WRITABLE,
+		CONSTRUCT,
+		CONSTRUCT_ONLY,
+		CHILD_ARG
+	}
+	[CCode (cprefix = "GTK_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum AttachOptions {
+		EXPAND,
+		SHRINK,
+		FILL
+	}
+	[CCode (cprefix = "GTK_BUTTON_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum ButtonAction {
+		IGNORED,
+		SELECTS,
+		DRAGS,
+		EXPANDS
+	}
+	[CCode (cprefix = "GTK_CALENDAR_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum CalendarDisplayOptions {
+		SHOW_HEADING,
+		SHOW_DAY_NAMES,
+		NO_MONTH_CHANGE,
+		SHOW_WEEK_NUMBERS,
+		WEEK_START_MONDAY,
+		SHOW_DETAILS
+	}
+	[CCode (cprefix = "GTK_CELL_RENDERER_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum CellRendererState {
+		SELECTED,
+		PRELIT,
+		INSENSITIVE,
+		SORTED,
+		FOCUSED
+	}
+	[CCode (cprefix = "GTK_DEBUG_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum DebugFlag {
+		MISC,
+		PLUGSOCKET,
+		TEXT,
+		TREE,
+		UPDATES,
+		KEYBINDINGS,
+		MULTIHEAD,
+		MODULES,
+		GEOMETRY,
+		ICONTHEME,
+		PRINTING,
+		BUILDER
+	}
+	[CCode (cprefix = "GTK_DEST_DEFAULT_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum DestDefaults {
+		MOTION,
+		HIGHLIGHT,
+		DROP,
+		ALL
+	}
+	[CCode (cprefix = "GTK_DIALOG_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum DialogFlags {
+		MODAL,
+		DESTROY_WITH_PARENT,
+		NO_SEPARATOR
+	}
+	[CCode (cprefix = "GTK_FILE_FILTER_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum FileFilterFlags {
+		FILENAME,
+		URI,
+		DISPLAY_NAME,
+		MIME_TYPE
+	}
+	[CCode (cprefix = "GTK_ICON_LOOKUP_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum IconLookupFlags {
+		NO_SVG,
+		FORCE_SVG,
+		USE_BUILTIN,
+		GENERIC_FALLBACK,
+		FORCE_SIZE
+	}
+	[CCode (cprefix = "GTK_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum ObjectFlags {
+		IN_DESTRUCTION,
+		FLOATING,
+		RESERVED_1,
+		RESERVED_2
+	}
+	[CCode (cprefix = "PRIVATE_GTK_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum PrivateFlags {
+		USER_STYLE,
+		RESIZE_PENDING,
+		LEAVE_PENDING,
+		HAS_SHAPE_MASK,
+		IN_REPARENT,
+		DIRECTION_SET,
+		DIRECTION_LTR,
+		ANCHORED,
+		CHILD_VISIBLE,
+		REDRAW_ON_ALLOC,
+		ALLOC_NEEDED,
+		REQUEST_NEEDED
+	}
+	[CCode (cprefix = "GTK_RC_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum RcFlags {
+		FG,
+		BG,
+		TEXT,
+		BASE
+	}
+	[CCode (cprefix = "GTK_RECENT_FILTER_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum RecentFilterFlags {
+		URI,
+		DISPLAY_NAME,
+		MIME_TYPE,
+		APPLICATION,
+		GROUP,
+		AGE
+	}
+	[CCode (cprefix = "GTK_RUN_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum SignalRunType {
+		FIRST,
+		LAST,
+		BOTH,
+		NO_RECURSE,
+		ACTION,
+		NO_HOOKS
+	}
+	[CCode (cprefix = "GTK_TARGET_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum TargetFlags {
+		SAME_APP,
+		SAME_WIDGET,
+		OTHER_APP,
+		OTHER_WIDGET
+	}
+	[CCode (cprefix = "GTK_TEXT_SEARCH_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum TextSearchFlags {
+		VISIBLE_ONLY,
+		TEXT_ONLY
+	}
+	[CCode (cprefix = "GTK_TREE_MODEL_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum TreeModelFlags {
+		ITERS_PERSIST,
+		LIST_ONLY
+	}
+	[CCode (cprefix = "GTK_UI_MANAGER_", cheader_filename = "gtk/gtk.h")]
+	[Flags]
+	public enum UIManagerItemType {
+		AUTO,
+		MENUBAR,
+		MENU,
+		TOOLBAR,
+		PLACEHOLDER,
+		POPUP,
+		MENUITEM,
+		TOOLITEM,
+		SEPARATOR,
+		ACCELERATOR
+	}
+	[CCode (cprefix = "GTK_", cheader_filename = "gtk/gtk.h")]
+	[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 (cprefix = "GTK_BUILDER_ERROR_", cheader_filename = "gtk/gtk.h")]
+	public errordomain BuilderError {
+		INVALID_TYPE_FUNCTION,
+		UNHANDLED_TAG,
+		MISSING_ATTRIBUTE,
+		INVALID_ATTRIBUTE,
+		INVALID_TAG,
+		MISSING_PROPERTY_VALUE,
+		INVALID_VALUE,
+		VERSION_MISMATCH,
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Widget : Gtk.Object, Atk.Implementor, Gtk.Buildable {
+		public uchar state;
+		public uchar saved_state;
+		public Gtk.Requisition requisition;
+		public Gtk.Allocation allocation;
+		public Gdk.Window window;
+		public Widget (GLib.Type type, ...);
+		[CCode (cname = "GTK_WIDGET_FLAGS")]
+		public Gtk.WidgetFlags get_flags ();
+		[CCode (cname = "GTK_WIDGET_SET_FLAGS")]
+		public void set_flags (Gtk.WidgetFlags flags);
+		[CCode (cname = "GTK_WIDGET_UNSET_FLAGS")]
+		public void unset_flags (Gtk.WidgetFlags flags);
+		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);
+		[CCode (cname = "gtk_widget_class_find_style_property")]
+		public class weak GLib.ParamSpec find_style_property (string property_name);
+		[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);
+		[CCode (cname = "gtk_widget_class_list_style_properties")]
+		public class weak GLib.ParamSpec list_style_properties (uint n_properties);
+		public void class_path (out uint path_length, out weak string path, out weak string path_reversed);
+		public weak Pango.Context create_pango_context ();
+		public weak Pango.Layout create_pango_layout (string? text);
+		public void destroyed (out weak Gtk.Widget widget_pointer);
+		public void ensure_style ();
+		public void error_bell ();
+		public void freeze_child_notify ();
+		public weak Gtk.Action get_action ();
+		public weak Gtk.Widget get_ancestor (GLib.Type widget_type);
+		public void get_child_requisition (out Gtk.Requisition requisition);
+		public bool get_child_visible ();
+		public weak Gtk.Clipboard get_clipboard (Gdk.Atom selection);
+		public weak Gdk.Colormap get_colormap ();
+		public weak string get_composite_name ();
+		public static weak Gdk.Colormap get_default_colormap ();
+		public static Gtk.TextDirection get_default_direction ();
+		public static weak Gtk.Style get_default_style ();
+		public static weak Gdk.Visual get_default_visual ();
+		public Gtk.TextDirection get_direction ();
+		public weak Gdk.Display get_display ();
+		public int get_events ();
+		public Gdk.ExtensionMode get_extension_events ();
+		public bool get_has_tooltip ();
+		public weak Gtk.RcStyle get_modifier_style ();
+		public bool get_no_show_all ();
+		public weak Pango.Context get_pango_context ();
+		public weak Gtk.Widget get_parent ();
+		public weak Gdk.Window get_parent_window ();
+		public void get_pointer (out int x, out int y);
+		public weak Gdk.Window get_root_window ();
+		public weak Gdk.Screen get_screen ();
+		public weak Gtk.Settings get_settings ();
+		public void get_size_request (out int width, out int height);
+		public weak Gdk.Pixmap get_snapshot (Gdk.Rectangle clip_rect);
+		public weak Gtk.Style get_style ();
+		public weak string get_tooltip_markup ();
+		public weak string get_tooltip_text ();
+		public weak Gtk.Window get_tooltip_window ();
+		public weak Gtk.Widget get_toplevel ();
+		public weak Gdk.Visual get_visual ();
+		public void grab_default ();
+		public bool has_screen ();
+		public bool hide_on_delete ();
+		public void input_shape_combine_mask (Gdk.Bitmap? shape_mask, int offset_x, int offset_y);
+		public bool intersect (Gdk.Rectangle area, Gdk.Rectangle? intersection);
+		public bool is_ancestor (Gtk.Widget ancestor);
+		public bool is_composited ();
+		public weak GLib.List list_accel_closures ();
+		public weak GLib.List list_mnemonic_labels ();
+		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 weak string path, out weak 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 weak 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 void set_accel_path (string accel_path, Gtk.AccelGroup accel_group);
+		public void set_app_paintable (bool app_paintable);
+		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);
+		public void set_has_tooltip (bool has_tooltip);
+		public void set_no_show_all (bool no_show_all);
+		public void set_parent (Gtk.Widget parent);
+		public void set_parent_window (Gdk.Window parent_window);
+		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 shape_combine_mask (Gdk.Bitmap? shape_mask, int offset_x, int offset_y);
+		public void show_now ();
+		public void style_get (...);
+		public void style_get_property (string property_name, GLib.Value value);
+		public void style_get_valist (string first_property_name, void* 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 ();
+		[NoWrapper]
+		public virtual void dispatch_child_properties_changed (uint n_pspecs, out weak GLib.ParamSpec pspecs);
+		public virtual weak Atk.Object get_accessible ();
+		public virtual void hide_all ();
+		public virtual void show_all ();
+		[NoAccessorMethod]
+		public bool app_paintable { get; set; }
+		[NoAccessorMethod]
+		public bool can_default { get; set; }
+		[NoAccessorMethod]
+		public bool can_focus { get; set; }
+		[NoAccessorMethod]
+		public bool composite_child { get; }
+		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; }
+		[NoAccessorMethod]
+		public bool receives_default { get; set; }
+		[NoAccessorMethod]
+		public bool sensitive { get; set; }
+		public Gtk.Style style { get; set; }
+		public string tooltip_markup { get; set; }
+		public string tooltip_text { get; set; }
+		[NoAccessorMethod]
+		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 (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);
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class AccelGroupEntry {
+		public weak Gtk.AccelKey key;
+		public weak GLib.Closure closure;
+		public GLib.Quark accel_path_quark;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class AccelKey {
+		public uint accel_key;
+		public Gdk.ModifierType accel_mods;
+		public uint accel_flags;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class AccelMapClass {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Arg {
+		public weak Gtk.Type type;
+		public weak string name;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class BindingArg {
+		public GLib.Type arg_type;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class BindingEntry {
+		public uint keyval;
+		public Gdk.ModifierType modifiers;
+		public weak Gtk.BindingSet binding_set;
+		public uint destroyed;
+		public uint in_emission;
+		public uint marks_unbound;
+		public weak Gtk.BindingEntry set_next;
+		public weak Gtk.BindingEntry hash_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 remove (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
+		public static void skip (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class BindingSet {
+		public weak string set_name;
+		public int priority;
+		public weak GLib.SList widget_path_pspecs;
+		public weak GLib.SList widget_class_pspecs;
+		public weak GLib.SList class_branch_pspecs;
+		public weak Gtk.BindingEntry entries;
+		public weak Gtk.BindingEntry current;
+		public uint parsed;
+		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 weak Gtk.BindingSet by_class (void* object_class);
+		public static weak Gtk.BindingSet find (string set_name);
+		public BindingSet (string set_name);
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class BindingSignal {
+		public weak Gtk.BindingSignal next;
+		public weak string signal_name;
+		public uint n_args;
+		public weak Gtk.BindingArg args;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class BoxChild {
+		public weak Gtk.Widget widget;
+		public ushort padding;
+		public uint expand;
+		public uint fill;
+		public uint pack;
+		public uint is_secondary;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class FileFilterInfo {
+		public Gtk.FileFilterFlags contains;
+		public weak string filename;
+		public weak string uri;
+		public weak string display_name;
+		public weak string mime_type;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class FixedChild {
+		public weak Gtk.Widget widget;
+		public int x;
+		public int y;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class 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;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageAnimationData {
+		public weak Gdk.PixbufAnimation anim;
+		public weak Gdk.PixbufAnimationIter iter;
+		public uint frame_timeout;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageGIconData {
+		public weak GLib.Icon icon;
+		public weak Gdk.Pixbuf pixbuf;
+		public uint theme_change_id;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageIconNameData {
+		public weak string icon_name;
+		public weak Gdk.Pixbuf pixbuf;
+		public uint theme_change_id;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageIconSetData {
+		public weak Gtk.IconSet icon_set;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageImageData {
+		public weak Gdk.Image image;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImagePixbufData {
+		public weak Gdk.Pixbuf pixbuf;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImagePixmapData {
+		public weak Gdk.Pixmap pixmap;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageStockData {
+		public weak string stock_id;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class LabelSelectionInfo {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class MountOperationClass {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class NotebookPage {
+		public static int num (Gtk.Notebook notebook, Gtk.Widget child);
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class PageRange {
+		public int start;
+		public int end;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RangeLayout {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RangeStepTimer {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RcContext {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RcProperty {
+		public GLib.Quark type_name;
+		public GLib.Quark property_name;
+		public weak string origin;
+		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);
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RecentFilterInfo {
+		public Gtk.RecentFilterFlags contains;
+		public weak string uri;
+		public weak string display_name;
+		public weak string mime_type;
+		public weak string applications;
+		public weak string groups;
+		public int age;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RulerMetric {
+		public weak string metric_name;
+		public weak string abbrev;
+		public double pixels_per_unit;
+		[NoArrayLength]
+		public weak double[] ruler_scale;
+		[NoArrayLength]
+		public weak int[] subdivide;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class SettingsPropertyValue {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class SettingsValue {
+		public weak string origin;
+		public GLib.Value value;
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_stock_item_copy", cheader_filename = "gtk/gtk.h")]
+	public class StockItem {
+		public weak string stock_id;
+		public weak string label;
+		public Gdk.ModifierType modifier;
+		public uint keyval;
+		public weak string translation_domain;
+		public weak Gtk.StockItem copy ();
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TableChild {
+		public weak Gtk.Widget widget;
+		public ushort left_attach;
+		public ushort right_attach;
+		public ushort top_attach;
+		public ushort bottom_attach;
+		public ushort xpadding;
+		public ushort ypadding;
+		public uint xexpand;
+		public uint yexpand;
+		public uint xshrink;
+		public uint yshrink;
+		public uint xfill;
+		public uint yfill;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TableRowCol {
+		public ushort requisition;
+		public ushort allocation;
+		public ushort spacing;
+		public uint need_expand;
+		public uint need_shrink;
+		public uint expand;
+		public uint shrink;
+		public uint empty;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TargetPair {
+		public Gdk.Atom target;
+		public uint flags;
+		public uint info;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class 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 void* padding1;
+		public uint underline;
+		public uint strikethrough;
+		public uint draw_bg;
+		public uint inside_selection;
+		public uint is_text;
+		public uint pad1;
+		public uint pad2;
+		public uint pad3;
+		public uint pad4;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TextBTree {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TextLogAttrCache {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TextPendingScroll {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TextWindow {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ThemeEngine {
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Type {
+		public void* @class ();
+		public static void init (GLib.TypeDebugFlags debug_flags);
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class WidgetAuxInfo {
+		public int x;
+		public int y;
+		public int width;
+		public int height;
+		public uint x_set;
+		public uint y_set;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class WidgetShapeInfo {
+		public short offset_x;
+		public short offset_y;
+		public weak Gdk.Bitmap shape_mask;
+	}
+	[Compact]
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class WindowGeometryInfo {
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_icon_info_copy", cheader_filename = "gtk/gtk.h")]
+	public class IconInfo {
+		public weak Gtk.IconInfo copy ();
+		public bool get_attach_points (Gdk.Point[] points);
+		public int get_base_size ();
+		public weak Gdk.Pixbuf get_builtin_pixbuf ();
+		public weak string get_display_name ();
+		public bool get_embedded_rect (out Gdk.Rectangle rectangle);
+		public weak string get_filename ();
+		public weak Gdk.Pixbuf load_icon () throws GLib.Error;
+		public IconInfo.for_pixbuf (Gtk.IconTheme icon_theme, Gdk.Pixbuf pixbuf);
+		public void set_raw_coordinates (bool raw_coordinates);
+	}
+	[Compact]
+	[CCode (ref_function = "gtk_icon_set_ref", unref_function = "gtk_icon_set_unref", cheader_filename = "gtk/gtk.h")]
+	public class IconSet {
+		public void add_source (Gtk.IconSource source);
+		public weak Gtk.IconSet copy ();
+		public void get_sizes (Gtk.IconSize[] sizes);
+		public IconSet ();
+		public IconSet.from_pixbuf (Gdk.Pixbuf pixbuf);
+		public weak Gdk.Pixbuf render_icon (Gtk.Style style, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail);
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_icon_source_copy", cheader_filename = "gtk/gtk.h")]
+	public class IconSource {
+		public weak Gtk.IconSource copy ();
+		public Gtk.TextDirection get_direction ();
+		public bool get_direction_wildcarded ();
+		public weak string get_filename ();
+		public weak string get_icon_name ();
+		public weak 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 IconSource ();
+		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);
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_paper_size_copy", cheader_filename = "gtk/gtk.h")]
+	public class PaperSize {
+		public weak Gtk.PaperSize copy ();
+		public static weak 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 weak string get_display_name ();
+		public double get_height (Gtk.Unit unit);
+		public weak string get_name ();
+		public static weak GLib.List get_paper_sizes (bool include_custom);
+		public weak string get_ppd_name ();
+		public double get_width (Gtk.Unit unit);
+		public bool is_custom ();
+		public bool is_equal (Gtk.PaperSize size2);
+		public PaperSize (string name);
+		public PaperSize.custom (string name, string display_name, double width, double height, Gtk.Unit unit);
+		public PaperSize.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error;
+		public PaperSize.from_ppd (string ppd_name, string ppd_display_name, double width, double height);
+		public void set_size (double width, double height, Gtk.Unit unit);
+		public void to_key_file (GLib.KeyFile key_file, string group_name);
+	}
+	[Compact]
+	[CCode (ref_function = "gtk_recent_info_ref", unref_function = "gtk_recent_info_unref", cheader_filename = "gtk/gtk.h")]
+	public class RecentInfo {
+		public bool exists ();
+		public ulong get_added ();
+		public int get_age ();
+		public bool get_application_info (string app_name, string app_exec, uint count, ulong time_);
+		public weak string get_applications (ulong length);
+		public weak string get_description ();
+		public weak string get_display_name ();
+		public weak string get_groups (ulong length);
+		public weak Gdk.Pixbuf get_icon (int size);
+		public weak string get_mime_type ();
+		public ulong get_modified ();
+		public bool get_private_hint ();
+		public weak string get_short_name ();
+		public weak string get_uri ();
+		public weak string get_uri_display ();
+		public ulong get_visited ();
+		public bool has_application (string app_name);
+		public bool has_group (string group_name);
+		public bool is_local ();
+		public weak string last_application ();
+		public bool match (Gtk.RecentInfo info_b);
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_selection_data_copy", cheader_filename = "gtk/gtk.h")]
+	public class SelectionData {
+		public Gdk.Atom selection;
+		public Gdk.Atom target;
+		public Gdk.Atom type;
+		public int format;
+		[NoArrayLength]
+		public weak uchar[] data;
+		public int length;
+		public weak Gdk.Display display;
+		public Gtk.SelectionData copy ();
+		public Gdk.Pixbuf? get_pixbuf ();
+		public bool get_targets (out Gdk.Atom targets, int n_atoms);
+		public string? get_text ();
+		[NoArrayLength]
+		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 (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 ();
+	}
+	[Compact]
+	[CCode (ref_function = "gtk_target_list_ref", unref_function = "gtk_target_list_unref", cheader_filename = "gtk/gtk.h")]
+	public class TargetList {
+		public weak GLib.List list;
+		public uint ref_count;
+		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, uint ntargets);
+		public void add_text_targets (uint info);
+		public void add_uri_targets (uint info);
+		public bool find (Gdk.Atom target, uint info);
+		public TargetList (Gtk.TargetEntry[] targets, uint ntargets);
+		public void remove (Gdk.Atom target);
+	}
+	[Compact]
+	[CCode (ref_function = "gtk_text_attributes_ref", unref_function = "gtk_text_attributes_unref", cheader_filename = "gtk/gtk.h")]
+	public class TextAttributes {
+		public uint refcount;
+		public weak Gtk.TextAppearance appearance;
+		public Gtk.Justification justification;
+		public Gtk.TextDirection direction;
+		public weak Pango.FontDescription font;
+		public double font_scale;
+		public int left_margin;
+		public int indent;
+		public int right_margin;
+		public int pixels_above_lines;
+		public int pixels_below_lines;
+		public int pixels_inside_wrap;
+		public weak Pango.TabArray tabs;
+		public Gtk.WrapMode wrap_mode;
+		public weak Pango.Language language;
+		public Gdk.Color pg_bg_color;
+		public uint invisible;
+		public uint bg_full_height;
+		public uint editable;
+		public uint realized;
+		public uint pad1;
+		public uint pad2;
+		public uint pad3;
+		public uint pad4;
+		public weak Gtk.TextAttributes copy ();
+		public void copy_values (Gtk.TextAttributes dest);
+		public TextAttributes ();
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_tree_path_copy", cheader_filename = "gtk/gtk.h")]
+	public class TreePath {
+		public void append_index (int index_);
+		public int compare (Gtk.TreePath b);
+		public Gtk.TreePath copy ();
+		public void down ();
+		public int get_depth ();
+		[NoArrayLength]
+		public weak int[] get_indices ();
+		public bool is_ancestor (Gtk.TreePath descendant);
+		public bool is_descendant (Gtk.TreePath ancestor);
+		public TreePath ();
+		public TreePath.first ();
+		[CCode (sentinel = "-1")]
+		public TreePath.from_indices (...);
+		public TreePath.from_string (string path);
+		public void next ();
+		public void prepend_index (int index_);
+		public bool prev ();
+		public weak string to_string ();
+		public bool up ();
+	}
+	[Compact]
+	[CCode (copy_function = "gtk_tree_row_reference_copy", cheader_filename = "gtk/gtk.h")]
+	public class TreeRowReference {
+		public weak Gtk.TreeRowReference copy ();
+		public static void deleted (GLib.Object proxy, Gtk.TreePath path);
+		public weak Gtk.TreeModel get_model ();
+		public Gtk.TreePath get_path ();
+		public static void inserted (GLib.Object proxy, Gtk.TreePath path);
+		public TreeRowReference (Gtk.TreeModel model, Gtk.TreePath path);
+		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 AboutDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+		public weak string get_artists ();
+		public weak string get_authors ();
+		public weak string get_comments ();
+		public weak string get_copyright ();
+		public weak string get_documenters ();
+		public weak string get_license ();
+		public weak Gdk.Pixbuf get_logo ();
+		public weak string get_logo_icon_name ();
+		public weak string get_program_name ();
+		public weak string get_translator_credits ();
+		public weak string get_version ();
+		public weak string get_website ();
+		public weak string get_website_label ();
+		public bool get_wrap_license ();
+		[CCode (type = "GtkWidget*")]
+		public AboutDialog ();
+		[NoArrayLength]
+		public void set_artists (string[] artists);
+		[NoArrayLength]
+		public void set_authors (string[] authors);
+		public void set_comments (string comments);
+		public void set_copyright (string copyright);
+		[NoArrayLength]
+		public void set_documenters (string[] documenters);
+		public static void set_email_hook (Gtk.AboutDialogActivateLinkFunc func, GLib.DestroyNotify? destroy);
+		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 (Gtk.AboutDialogActivateLinkFunc func, GLib.DestroyNotify? destroy);
+		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);
+		public string[] artists { get; set; }
+		public string[] authors { get; set; }
+		public string comments { get; set; }
+		public string copyright { get; set; }
+		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; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class AccelGroup : GLib.Object {
+		public uint lock_count;
+		public Gdk.ModifierType modifier_mask;
+		public weak GLib.SList acceleratables;
+		public uint n_accels;
+		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, GLib.Closure closure);
+		public void connect_by_path (string accel_path, GLib.Closure closure);
+		public bool disconnect (GLib.Closure closure);
+		public bool disconnect_key (uint accel_key, Gdk.ModifierType accel_mods);
+		public weak Gtk.AccelKey find (Gtk.AccelGroupFindFunc find_func, void* data);
+		public static weak Gtk.AccelGroup from_accel_closure (GLib.Closure closure);
+		public void @lock ();
+		public AccelGroup ();
+		public weak Gtk.AccelGroupEntry query (uint accel_key, Gdk.ModifierType accel_mods, uint n_entries);
+		public void unlock ();
+		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 uint gtk_reserved;
+		public uint accel_padding;
+		public weak Gtk.AccelGroup accel_group;
+		public weak string accel_string;
+		public ushort accel_string_width;
+		public weak Gtk.Widget get_accel_widget ();
+		public uint get_accel_width ();
+		[CCode (type = "GtkWidget*")]
+		public AccelLabel (string str);
+		public bool refetch ();
+		public void set_accel_closure (GLib.Closure accel_closure);
+		public void set_accel_widget (Gtk.Widget accel_widget);
+		[NoAccessorMethod]
+		public GLib.Closure accel_closure { get; set; }
+		public Gtk.Widget accel_widget { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class AccelMap : GLib.Object {
+		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 weak 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, 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")]
+	public class Accessible : Atk.Object {
+		public weak Gtk.Widget widget;
+		public virtual void connect_widget_destroyed ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Action : GLib.Object, Gtk.Buildable {
+		public void block_activate_from (Gtk.Widget proxy);
+		public void connect_accelerator ();
+		public weak Gtk.Widget create_icon (Gtk.IconSize icon_size);
+		public void disconnect_accelerator ();
+		public weak GLib.Closure get_accel_closure ();
+		public weak string get_accel_path ();
+		public weak GLib.SList get_proxies ();
+		public bool get_sensitive ();
+		public bool get_visible ();
+		public bool is_sensitive ();
+		public bool is_visible ();
+		public Action (string name, string? label, string? tooltip, string? stock_id);
+		public void set_accel_group (Gtk.AccelGroup accel_group);
+		public void set_accel_path (string accel_path);
+		public void set_sensitive (bool sensitive);
+		public void set_visible (bool visible);
+		public void unblock_activate_from (Gtk.Widget proxy);
+		public virtual void connect_proxy (Gtk.Widget proxy);
+		public virtual weak Gtk.Widget create_menu ();
+		public virtual weak Gtk.Widget create_menu_item ();
+		public virtual weak Gtk.Widget create_tool_item ();
+		public virtual void disconnect_proxy (Gtk.Widget proxy);
+		[NoAccessorMethod]
+		public Gtk.ActionGroup action_group { get; set; }
+		[NoAccessorMethod]
+		public bool hide_if_empty { get; set; }
+		[NoAccessorMethod]
+		public string icon_name { get; set; }
+		[NoAccessorMethod]
+		public bool is_important { get; set; }
+		[NoAccessorMethod]
+		public string label { get; set; }
+		[NoAccessorMethod]
+		public string name { get; construct; }
+		public bool sensitive { get; set; }
+		[NoAccessorMethod]
+		public string short_label { get; set; }
+		[NoAccessorMethod]
+		public string stock_id { get; set; }
+		[NoAccessorMethod]
+		public string tooltip { get; set; }
+		public bool visible { get; set; }
+		[NoAccessorMethod]
+		public bool visible_horizontal { get; set; }
+		[NoAccessorMethod]
+		public bool visible_overflown { get; set; }
+		[NoAccessorMethod]
+		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 {
+		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, Gtk.RadioActionCallback on_change);
+		public void add_radio_actions_full (Gtk.RadioActionEntry[] entries, int value, 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 bool get_sensitive ();
+		public bool get_visible ();
+		public weak GLib.List list_actions ();
+		public ActionGroup (string name);
+		public void remove_action (Gtk.Action action);
+		public void set_sensitive (bool sensitive);
+		public void set_translate_func (Gtk.TranslateFunc func, void* data, Gtk.DestroyNotify notify);
+		public void set_translation_domain (string domain);
+		public void set_visible (bool visible);
+		public weak string translate_string (string str);
+		public virtual weak Gtk.Action get_action (string action_name);
+		[NoAccessorMethod]
+		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 {
+		public void clamp_page (double lower, double upper);
+		public double get_value ();
+		[CCode (type = "GtkObject*")]
+		public Adjustment (double value, double lower, double upper, double step_increment, double page_increment, double page_size);
+		public void set_value (double value);
+		[NoAccessorMethod]
+		public double lower { get; set; }
+		[NoAccessorMethod]
+		public double page_increment { get; set; }
+		[NoAccessorMethod]
+		public double page_size { get; set; }
+		[NoAccessorMethod]
+		public double step_increment { get; set; }
+		[NoAccessorMethod]
+		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 {
+		public void get_padding (uint padding_top, uint padding_bottom, uint padding_left, uint padding_right);
+		[CCode (type = "GtkWidget*")]
+		public Alignment (float xalign, float yalign, float xscale, float yscale);
+		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")]
+	public class Arrow : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
+		[CCode (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 (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 forward;
+		public weak Gtk.Widget back;
+		public weak Gtk.Widget last;
+		public void add_action_widget (Gtk.Widget child);
+		public int append_page (Gtk.Widget page);
+		public int get_current_page ();
+		public int get_n_pages ();
+		public weak Gtk.Widget get_nth_page (int page_num);
+		public bool get_page_complete (Gtk.Widget page);
+		public weak Gdk.Pixbuf get_page_header_image (Gtk.Widget page);
+		public weak Gdk.Pixbuf get_page_side_image (Gtk.Widget page);
+		public weak 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);
+		[CCode (type = "GtkWidget*")]
+		public Assistant ();
+		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 (Gtk.AssistantPageFunc page_func, void* data, GLib.DestroyNotify destroy);
+		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;
+		public weak Gtk.Widget get_child ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Box : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+		public weak GLib.List children;
+		public bool get_homogeneous ();
+		public int get_spacing ();
+		public void pack_end (Gtk.Widget child, bool expand, bool fill, uint padding);
+		public void pack_end_defaults (Gtk.Widget widget);
+		public void pack_start (Gtk.Widget child, bool expand, bool fill, uint padding);
+		public void pack_start_defaults (Gtk.Widget widget);
+		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")]
+	public class Builder : GLib.Object {
+		public uint add_from_file (string filename) throws GLib.Error;
+		public uint add_from_string (string buffer, ulong length) 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 weak GLib.Object get_object (string name);
+		public weak GLib.SList get_objects ();
+		public weak string get_translation_domain ();
+		public Builder ();
+		public void set_translation_domain (string domain);
+		public bool value_from_string (GLib.ParamSpec pspec, string str, GLib.Value value) throws GLib.Error;
+		public bool value_from_string_type (GLib.Type type, string str, GLib.Value value) throws GLib.Error;
+		public virtual GLib.Type get_type_from_name (string type_name);
+		public string translation_domain { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Button : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+		public weak Gdk.Window event_window;
+		public weak string label_text;
+		public uint activate_timeout;
+		public uint constructed;
+		public uint in_button;
+		public uint button_down;
+		public uint depressed;
+		public uint depress_on_activate;
+		public void get_alignment (float xalign, float yalign);
+		public bool get_focus_on_click ();
+		public weak Gtk.Widget get_image ();
+		public Gtk.PositionType get_image_position ();
+		public weak string get_label ();
+		public Gtk.ReliefStyle get_relief ();
+		public bool get_use_stock ();
+		public bool get_use_underline ();
+		[CCode (type = "GtkWidget*")]
+		public Button ();
+		[CCode (type = "GtkWidget*")]
+		public Button.from_stock (string stock_id);
+		[CCode (type = "GtkWidget*")]
+		public Button.with_label (string label);
+		[CCode (type = "GtkWidget*")]
+		public Button.with_mnemonic (string label);
+		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);
+		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 {
+		public int child_min_width;
+		public int child_min_height;
+		public int child_ipad_x;
+		public int child_ipad_y;
+		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 {
+		public weak Gtk.Style header_style;
+		public weak Gtk.Style label_style;
+		public int selected_day;
+		[NoArrayLength]
+		public weak int[] day_month;
+		public int num_marked_dates;
+		[NoArrayLength]
+		public weak int[] marked_date;
+		public Gtk.CalendarDisplayOptions display_flags;
+		[NoArrayLength]
+		public weak Gdk.Color[] marked_date_color;
+		public weak Gdk.GC gc;
+		public weak Gdk.GC xor_gc;
+		public int focus_row;
+		public int focus_col;
+		public int highlight_row;
+		public int highlight_col;
+		[NoArrayLength]
+		public weak char[] grow_space;
+		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);
+		[CCode (type = "GtkWidget*")]
+		public Calendar ();
+		public void select_day (uint day);
+		public bool select_month (uint month, uint year);
+		public void set_detail_func (Gtk.CalendarDetailFunc func, void* data, GLib.DestroyNotify destroy);
+		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 {
+		public uint editing;
+		public void get_fixed_size (int width, int height);
+		public void set_fixed_size (int width, int height);
+		public void stop_editing (bool canceled);
+		public virtual bool activate (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
+		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 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 virtual weak Gtk.CellEditable start_editing (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
+		[NoAccessorMethod]
+		public string cell_background { set; }
+		[NoAccessorMethod]
+		public Gdk.Color cell_background_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool cell_background_set { get; set; }
+		[NoAccessorMethod]
+		public 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; }
+		[NoAccessorMethod]
+		public bool sensitive { get; set; }
+		[NoAccessorMethod]
+		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 (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 (type = "GtkCellRenderer*")]
+		public CellRendererCombo ();
+		[NoAccessorMethod]
+		public bool has_entry { get; set; }
+		[NoAccessorMethod]
+		public Gtk.TreeModel model { 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 (type = "GtkCellRenderer*")]
+		public CellRendererPixbuf ();
+		[NoAccessorMethod]
+		public bool follow_state { get; set; }
+		[NoAccessorMethod]
+		public string icon_name { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixbuf pixbuf { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixbuf pixbuf_expander_closed { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixbuf pixbuf_expander_open { get; set; }
+		[NoAccessorMethod]
+		public string stock_detail { get; set; }
+		[NoAccessorMethod]
+		public string stock_id { get; set; }
+		[NoAccessorMethod]
+		public uint stock_size { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class CellRendererProgress : Gtk.CellRenderer {
+		[CCode (type = "GtkCellRenderer*")]
+		public CellRendererProgress ();
+		[NoAccessorMethod]
+		public Gtk.ProgressBarOrientation orientation { get; set; }
+		[NoAccessorMethod]
+		public int pulse { get; set; }
+		[NoAccessorMethod]
+		public string text { 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 (type = "GtkCellRenderer*")]
+		public CellRendererSpin ();
+		[NoAccessorMethod]
+		public Gtk.Adjustment adjustment { get; set; }
+		[NoAccessorMethod]
+		public double climb_rate { get; set; }
+		[NoAccessorMethod]
+		public uint digits { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class CellRendererText : Gtk.CellRenderer {
+		public double font_scale;
+		public weak Pango.AttrList extra_attrs;
+		public Pango.Underline underline_style;
+		public int fixed_height_rows;
+		public uint calc_fixed_height;
+		[CCode (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 { get; set; }
+		[NoAccessorMethod]
+		public string background { set; }
+		[NoAccessorMethod]
+		public Gdk.Color background_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool background_set { get; set; }
+		[NoAccessorMethod]
+		public bool editable { get; set; }
+		[NoAccessorMethod]
+		public bool editable_set { get; set; }
+		[NoAccessorMethod]
+		public Pango.EllipsizeMode ellipsize { get; set; }
+		[NoAccessorMethod]
+		public bool ellipsize_set { get; set; }
+		[NoAccessorMethod]
+		public string family { get; set; }
+		[NoAccessorMethod]
+		public bool family_set { get; set; }
+		[NoAccessorMethod]
+		public string font { get; set; }
+		[NoAccessorMethod]
+		public Pango.FontDescription font_desc { get; set; }
+		[NoAccessorMethod]
+		public string foreground { set; }
+		[NoAccessorMethod]
+		public Gdk.Color foreground_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool foreground_set { get; set; }
+		[NoAccessorMethod]
+		public string language { 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 { 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 {
+		public bool get_active ();
+		public bool get_radio ();
+		[CCode (type = "GtkCellRenderer*")]
+		public CellRendererToggle ();
+		public void set_active (bool setting);
+		public void set_radio (bool radio);
+		[NoAccessorMethod]
+		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 {
+		public weak GLib.List get_cell_renderers ();
+		public weak Gtk.TreePath get_displayed_row ();
+		public bool get_size_of_row (Gtk.TreePath path, out Gtk.Requisition requisition);
+		[CCode (type = "GtkWidget*")]
+		public CellView ();
+		[CCode (type = "GtkWidget*")]
+		public CellView.with_markup (string markup);
+		[CCode (type = "GtkWidget*")]
+		public CellView.with_pixbuf (Gdk.Pixbuf pixbuf);
+		[CCode (type = "GtkWidget*")]
+		public CellView.with_text (string text);
+		public void set_background_color (Gdk.Color color);
+		public void set_displayed_row (Gtk.TreePath path);
+		public void set_model (Gtk.TreeModel? model);
+		[NoAccessorMethod]
+		public string background { set; }
+		[NoAccessorMethod]
+		public Gdk.Color background_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool background_set { get; set; }
+		[NoAccessorMethod]
+		public Gtk.TreeModel model { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class CheckButton : Gtk.ToggleButton, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public CheckButton ();
+		[CCode (type = "GtkWidget*")]
+		public CheckButton.with_label (string label);
+		[CCode (type = "GtkWidget*")]
+		public CheckButton.with_mnemonic (string label);
+		[NoWrapper]
+		public virtual void draw_indicator (Gdk.Rectangle area);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class CheckMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable {
+		public uint always_show_toggle;
+		public bool get_active ();
+		public bool get_draw_as_radio ();
+		public bool get_inconsistent ();
+		[CCode (type = "GtkWidget*")]
+		public CheckMenuItem ();
+		[CCode (type = "GtkWidget*")]
+		public CheckMenuItem.with_label (string label);
+		[CCode (type = "GtkWidget*")]
+		public CheckMenuItem.with_mnemonic (string label);
+		public void set_active (bool is_active);
+		public void set_draw_as_radio (bool draw_as_radio);
+		public void set_inconsistent (bool setting);
+		[NoWrapper]
+		public virtual void draw_indicator (Gdk.Rectangle area);
+		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 {
+		public void clear ();
+		public static weak Gtk.Clipboard get (Gdk.Atom selection);
+		public weak Gdk.Display get_display ();
+		public static weak Gtk.Clipboard get_for_display (Gdk.Display display, Gdk.Atom selection);
+		public weak GLib.Object get_owner ();
+		public void request_contents (Gdk.Atom target, Gtk.ClipboardReceivedFunc callback);
+		public void request_image (Gtk.ClipboardImageReceivedFunc callback);
+		public void request_rich_text (Gtk.TextBuffer buffer, Gtk.ClipboardRichTextReceivedFunc callback);
+		public void request_targets (Gtk.ClipboardTargetsReceivedFunc callback);
+		public void request_text (Gtk.ClipboardTextReceivedFunc 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, Gtk.ClipboardGetFunc get_func, Gtk.ClipboardClearFunc clear_func);
+		public bool set_with_owner (Gtk.TargetEntry[] targets, Gtk.ClipboardGetFunc get_func, Gtk.ClipboardClearFunc clear_func, GLib.Object owner);
+		public void store ();
+		public weak Gtk.SelectionData wait_for_contents (Gdk.Atom target);
+		public weak Gdk.Pixbuf wait_for_image ();
+		public uchar wait_for_rich_text (Gtk.TextBuffer buffer, out Gdk.Atom format, ulong length);
+		public bool wait_for_targets (Gdk.Atom[] targets);
+		public weak string wait_for_text ();
+		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 virtual signal void owner_change (Gdk.Event p0);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ColorButton : Gtk.Button, Atk.Implementor, Gtk.Buildable {
+		public ushort get_alpha ();
+		public void get_color (out Gdk.Color color);
+		public weak string get_title ();
+		public bool get_use_alpha ();
+		[CCode (type = "GtkWidget*")]
+		public ColorButton ();
+		[CCode (type = "GtkWidget*")]
+		public ColorButton.with_color (Gdk.Color color);
+		public void set_alpha (ushort alpha);
+		public void set_color (Gdk.Color color);
+		public void set_title (string title);
+		public void set_use_alpha (bool use_alpha);
+		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 {
+		public ushort get_current_alpha ();
+		public void get_current_color (out Gdk.Color color);
+		public bool get_has_opacity_control ();
+		public bool get_has_palette ();
+		public ushort get_previous_alpha ();
+		public void get_previous_color (out Gdk.Color color);
+		public bool is_adjusting ();
+		[CCode (type = "GtkWidget*")]
+		public ColorSelection ();
+		public static bool palette_from_string (string str, Gdk.Color[] colors);
+		public static weak string palette_to_string (Gdk.Color[] colors);
+		public static weak Gtk.ColorSelectionChangePaletteWithScreenFunc set_change_palette_with_screen_hook (Gtk.ColorSelectionChangePaletteWithScreenFunc func);
+		public void set_current_alpha (ushort 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 (ushort 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;
+		public weak Gtk.Widget ok_button;
+		public weak Gtk.Widget cancel_button;
+		public weak Gtk.Widget help_button;
+		[CCode (type = "GtkWidget*")]
+		public ColorSelectionDialog (string title);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ComboBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.CellEditable, Gtk.CellLayout {
+		public void append_text (string text);
+		public int get_active ();
+		public bool get_active_iter (out Gtk.TreeIter iter);
+		public bool get_add_tearoffs ();
+		public int get_column_span_column ();
+		public bool get_focus_on_click ();
+		public weak Gtk.TreeModel get_model ();
+		public weak Atk.Object get_popup_accessible ();
+		public weak Gtk.TreeViewRowSeparatorFunc get_row_separator_func ();
+		public int get_row_span_column ();
+		public weak string get_title ();
+		public int get_wrap_width ();
+		public void insert_text (int position, string text);
+		[CCode (type = "GtkWidget*")]
+		public ComboBox ();
+		[CCode (type = "GtkWidget*")]
+		public ComboBox.text ();
+		[CCode (type = "GtkWidget*")]
+		public ComboBox.with_model (Gtk.TreeModel model);
+		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_column_span_column (int column_span);
+		public void set_focus_on_click (bool focus_on_click);
+		public void set_model (Gtk.TreeModel? model);
+		public void set_row_separator_func (Gtk.TreeViewRowSeparatorFunc func, void* data, Gtk.DestroyNotify destroy);
+		public void set_row_span_column (int row_span);
+		public void set_title (string title);
+		public void set_wrap_width (int width);
+		public virtual weak string get_active_text ();
+		public int active { get; set; }
+		public bool add_tearoffs { get; set; }
+		public int column_span_column { get; set; }
+		public bool focus_on_click { get; set; }
+		[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 { 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 {
+		public int get_text_column ();
+		[CCode (type = "GtkWidget*")]
+		public ComboBoxEntry ();
+		[CCode (type = "GtkWidget*")]
+		public ComboBoxEntry.text ();
+		[CCode (type = "GtkWidget*")]
+		public ComboBoxEntry.with_model (Gtk.TreeModel model, int text_column);
+		public void set_text_column (int text_column);
+		public int text_column { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Container : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget focus_child;
+		public uint need_resize;
+		public uint reallocate_redraws;
+		public uint has_focus_chain;
+		public void add_with_properties (Gtk.Widget widget, ...);
+		public void child_get (Gtk.Widget child, ...);
+		public void child_get_property (Gtk.Widget child, string property_name, GLib.Value value);
+		public void child_get_valist (Gtk.Widget child, string first_property_name, void* 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, void* var_args);
+		public static weak GLib.ParamSpec class_find_child_property (GLib.ObjectClass cclass, string property_name);
+		[CCode (cname = "gtk_container_class_install_child_property")]
+		public class void install_child_property (uint property_id, GLib.ParamSpec pspec);
+		public static weak GLib.ParamSpec class_list_child_properties (GLib.ObjectClass cclass, uint n_properties);
+		public void @foreach (Gtk.Callback callback);
+		public uint get_border_width ();
+		public weak GLib.List<Widget> get_children ();
+		public bool get_focus_chain (GLib.List focusable_widgets);
+		public weak Gtk.Adjustment get_focus_hadjustment ();
+		public weak Gtk.Adjustment get_focus_vadjustment ();
+		public Gtk.ResizeMode get_resize_mode ();
+		public void propagate_expose (Gtk.Widget child, Gdk.EventExpose event);
+		public void resize_children ();
+		public void set_border_width (uint border_width);
+		public void set_focus_chain (GLib.List 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 virtual GLib.Type child_type ();
+		[NoWrapper]
+		public virtual weak string composite_name (Gtk.Widget child);
+		public virtual void forall (bool include_internals, Gtk.Callback callback);
+		[NoWrapper]
+		public virtual void get_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+		[NoWrapper]
+		public virtual void set_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+		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 {
+		public int cursor_type;
+		public weak Gdk.Pixmap pixmap;
+		public int height;
+		public int grab_point;
+		public int last;
+		public int num_points;
+		public Gdk.Point point;
+		public int num_ctlpoints;
+		[NoArrayLength]
+		public weak float[] ctlpoint;
+		public void get_vector (int veclen, float[] vector);
+		[CCode (type = "GtkWidget*")]
+		public Curve ();
+		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 weak Gtk.VBox vbox;
+		public weak Gtk.HButtonBox action_area;
+		public weak Gtk.Widget separator;
+		public void add_action_widget (Gtk.Widget child, int response_id);
+		public weak Gtk.Widget add_button (string button_text, int response_id);
+		public void add_buttons (...);
+		public bool get_has_separator ();
+		public int get_response_for_widget (Gtk.Widget widget);
+		[CCode (type = "GtkWidget*")]
+		public Dialog ();
+		[CCode (type = "GtkWidget*")]
+		public Dialog.with_buttons (string? title, Gtk.Window? parent, Gtk.DialogFlags flags, ...);
+		public int run ();
+		[CCode (sentinel = "-1")]
+		public void set_alternative_button_order (...);
+		public void set_alternative_button_order_from_array (int n_params, 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);
+		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 (type = "GtkWidget*")]
+		public DrawingArea ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Entry : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.CellEditable, Gtk.Editable {
+		public uint visible;
+		public uint overwrite_mode;
+		public uint in_drag;
+		public ushort text_length;
+		public ushort text_max_length;
+		public weak Gdk.Window text_area;
+		public weak Gtk.IMContext im_context;
+		public weak Gtk.Widget popup_menu;
+		public int current_pos;
+		public weak Pango.Layout cached_layout;
+		public uint cache_includes_preedit;
+		public uint need_im_reset;
+		public uint cursor_visible;
+		public uint in_click;
+		public uint is_cell_renderer;
+		public uint editing_canceled;
+		public uint mouse_cursor_obscured;
+		public uint select_words;
+		public uint select_lines;
+		public uint resolved_dir;
+		public uint button;
+		public uint blink_timeout;
+		public uint recompute_idle;
+		public int ascent;
+		public int descent;
+		public ushort text_size;
+		public ushort n_bytes;
+		public ushort preedit_length;
+		public ushort preedit_cursor;
+		public int dnd_position;
+		public int drag_start_x;
+		public int drag_start_y;
+		public bool get_activates_default ();
+		public float get_alignment ();
+		public weak Gtk.EntryCompletion get_completion ();
+		public weak Gtk.Adjustment get_cursor_hadjustment ();
+		public bool get_has_frame ();
+		public Gtk.Border get_inner_border ();
+		public unichar get_invisible_char ();
+		public weak Pango.Layout get_layout ();
+		public void get_layout_offsets (int x, int y);
+		public int get_max_length ();
+		public weak string get_text ();
+		public bool get_visibility ();
+		public int get_width_chars ();
+		public int layout_index_to_text_index (int layout_index);
+		[CCode (type = "GtkWidget*")]
+		public Entry ();
+		public void set_activates_default (bool setting);
+		public void set_alignment (float xalign);
+		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_inner_border (Gtk.Border border);
+		public void set_invisible_char (unichar ch);
+		public void set_max_length (int max);
+		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);
+		[NoWrapper]
+		public virtual void get_text_area_size (int x, int y, int width, int height);
+		public bool activates_default { get; set; }
+		[NoAccessorMethod]
+		public int cursor_position { get; }
+		[NoAccessorMethod]
+		public bool editable { get; set; }
+		public bool has_frame { get; set; }
+		public Gtk.Border inner_border { get; set; }
+		public uint invisible_char { get; set; }
+		public int max_length { get; set; }
+		[NoAccessorMethod]
+		public int scroll_offset { get; }
+		[NoAccessorMethod]
+		public int selection_bound { get; }
+		[NoAccessorMethod]
+		public Gtk.ShadowType shadow_type { get; set; }
+		public string text { get; set; }
+		[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 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 toggle_overwrite ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class EntryCompletion : GLib.Object, Gtk.Buildable, Gtk.CellLayout {
+		public void complete ();
+		public void delete_action (int index_);
+		public weak string get_completion_prefix ();
+		public weak Gtk.Widget get_entry ();
+		public bool get_inline_completion ();
+		public bool get_inline_selection ();
+		public int get_minimum_key_length ();
+		public weak 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 EntryCompletion ();
+		public void set_inline_completion (bool inline_completion);
+		public void set_inline_selection (bool inline_selection);
+		public void set_match_func (Gtk.EntryCompletionMatchFunc func, void* func_data, GLib.DestroyNotify func_notify);
+		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 {
+		public bool get_above_child ();
+		public bool get_visible_window ();
+		[CCode (type = "GtkWidget*")]
+		public EventBox ();
+		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 {
+		public bool get_expanded ();
+		public weak string get_label ();
+		public weak Gtk.Widget get_label_widget ();
+		public int get_spacing ();
+		public bool get_use_markup ();
+		public bool get_use_underline ();
+		[CCode (type = "GtkWidget*")]
+		public Expander (string label);
+		[CCode (type = "GtkWidget*")]
+		public Expander.with_mnemonic (string label);
+		public void set_expanded (bool expanded);
+		public void set_label (string label);
+		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);
+		public bool expanded { get; set construct; }
+		public string label { 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.FileChooser {
+		public bool get_focus_on_click ();
+		public weak string get_title ();
+		public int get_width_chars ();
+		[CCode (type = "GtkWidget*")]
+		public FileChooserButton (string title, Gtk.FileChooserAction action);
+		[CCode (type = "GtkWidget*")]
+		public FileChooserButton.with_backend (string title, Gtk.FileChooserAction action, string backend);
+		[CCode (type = "GtkWidget*")]
+		public FileChooserButton.with_dialog (Gtk.Widget dialog);
+		public void set_focus_on_click (bool focus_on_click);
+		public void set_title (string title);
+		public void set_width_chars (int n_chars);
+		[NoAccessorMethod]
+		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 (type = "GtkWidget*")]
+		public FileChooserDialog (string? title, Gtk.Window? parent, Gtk.FileChooserAction action, ...);
+		[CCode (type = "GtkWidget*")]
+		public FileChooserDialog.with_backend (string? title, Gtk.Window? parent, Gtk.FileChooserAction action, string backend, ...);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class FileChooserWidget : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.FileChooser, Gtk.FileChooserEmbed {
+		[CCode (type = "GtkWidget*")]
+		public FileChooserWidget (Gtk.FileChooserAction action);
+		[CCode (type = "GtkWidget*")]
+		public FileChooserWidget.with_backend (Gtk.FileChooserAction action, string backend);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class FileFilter : Gtk.Object {
+		public void add_custom (Gtk.FileFilterFlags needed, Gtk.FileFilterFunc func, void* data, GLib.DestroyNotify notify);
+		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 weak string get_name ();
+		public Gtk.FileFilterFlags get_needed ();
+		public FileFilter ();
+		public void set_name (string name);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Fixed : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+		public weak GLib.List children;
+		public bool get_has_window ();
+		public void move (Gtk.Widget widget, int x, int y);
+		[CCode (type = "GtkWidget*")]
+		public Fixed ();
+		public void put (Gtk.Widget widget, int x, int y);
+		public void set_has_window (bool has_window);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class FontButton : Gtk.Button, Atk.Implementor, Gtk.Buildable {
+		public weak string get_font_name ();
+		public bool get_show_size ();
+		public bool get_show_style ();
+		public weak string get_title ();
+		public bool get_use_font ();
+		public bool get_use_size ();
+		[CCode (type = "GtkWidget*")]
+		public FontButton ();
+		[CCode (type = "GtkWidget*")]
+		public FontButton.with_font (string fontname);
+		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);
+		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 {
+		public weak Gtk.Widget font_entry;
+		public weak Gtk.Widget family_list;
+		public weak Gtk.Widget font_style_entry;
+		public weak Gtk.Widget face_list;
+		public weak Gtk.Widget size_entry;
+		public weak Gtk.Widget size_list;
+		public weak Gtk.Widget pixels_button;
+		public weak Gtk.Widget points_button;
+		public weak Gtk.Widget filter_button;
+		public weak Gtk.Widget preview_entry;
+		public weak Pango.FontFamily family;
+		public weak Pango.FontFace face;
+		public int size;
+		public weak string get_font_name ();
+		public weak string get_preview_text ();
+		[CCode (type = "GtkWidget*")]
+		public FontSelection ();
+		public bool set_font_name (string fontname);
+		public void set_preview_text (string text);
+		[NoAccessorMethod]
+		public Gdk.Font font { 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 fontsel;
+		public weak Gtk.Widget main_vbox;
+		public weak Gtk.Widget action_area;
+		public weak Gtk.Widget ok_button;
+		public weak Gtk.Widget apply_button;
+		public weak Gtk.Widget cancel_button;
+		public int dialog_width;
+		public bool auto_resize;
+		public weak string get_font_name ();
+		public weak string get_preview_text ();
+		[CCode (type = "GtkWidget*")]
+		public FontSelectionDialog (string title);
+		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;
+		public weak string get_label ();
+		public void get_label_align (float xalign, float yalign);
+		public weak Gtk.Widget get_label_widget ();
+		public Gtk.ShadowType get_shadow_type ();
+		[CCode (type = "GtkWidget*")]
+		public Frame (string? label);
+		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);
+		[NoWrapper]
+		public virtual void compute_child_allocation (Gtk.Allocation allocation);
+		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 {
+		public weak Gtk.Widget table;
+		public weak Gtk.Widget curve;
+		[NoArrayLength]
+		public weak Gtk.Widget[] button;
+		public float gamma;
+		public weak Gtk.Widget gamma_dialog;
+		public weak Gtk.Widget gamma_text;
+		[CCode (type = "GtkWidget*")]
+		public GammaCurve ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HBox : Gtk.Box, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public HBox (bool homogeneous, int spacing);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public HButtonBox ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public HPaned ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HRuler : Gtk.Ruler, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public HRuler ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public HScale (Gtk.Adjustment adjustment);
+		[CCode (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 {
+		[CCode (type = "GtkWidget*")]
+		public HScrollbar (Gtk.Adjustment adjustment);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public HSeparator ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class HandleBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+		public weak Gdk.Window bin_window;
+		public weak Gdk.Window float_window;
+		public uint float_window_mapped;
+		public uint in_drag;
+		public uint shrink_on_detach;
+		public int deskoff_x;
+		public int deskoff_y;
+		public Gtk.Allocation attach_allocation;
+		public Gtk.Allocation float_allocation;
+		public Gtk.PositionType get_handle_position ();
+		public Gtk.ShadowType get_shadow_type ();
+		public Gtk.PositionType get_snap_edge ();
+		[CCode (type = "GtkWidget*")]
+		public HandleBox ();
+		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 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);
+		public virtual signal void child_detached (Gtk.Widget child);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class IMContext : GLib.Object {
+		public virtual bool filter_keypress (Gdk.EventKey event);
+		public virtual void focus_in ();
+		public virtual void focus_out ();
+		public virtual void get_preedit_string (string str, out weak Pango.AttrList attrs, int cursor_pos);
+		public virtual bool get_surrounding (string text, 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 {
+		public weak GLib.SList tables;
+		[NoArrayLength]
+		public weak uint[] compose_buffer;
+		public unichar tentative_match;
+		public int tentative_match_len;
+		public uint in_hex_sequence;
+		public uint modifiers_dropped;
+		public void add_table (ushort data, int max_seq_len, int n_seqs);
+		[CCode (type = "GtkIMContext*")]
+		public IMContextSimple ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class IMMulticontext : Gtk.IMContext {
+		public weak Gtk.IMContext slave;
+		public weak string context_id;
+		public void append_menuitems (Gtk.MenuShell menushell);
+		[CCode (type = "GtkIMContext*")]
+		public IMMulticontext ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class IconFactory : GLib.Object, Gtk.Buildable {
+		public weak GLib.HashTable icons;
+		public void add (string stock_id, Gtk.IconSet icon_set);
+		public void add_default ();
+		public weak Gtk.IconSet lookup (string stock_id);
+		public static weak Gtk.IconSet lookup_default (string stock_id);
+		public IconFactory ();
+		public void remove_default ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class IconTheme : GLib.Object {
+		public static void add_builtin_icon (string icon_name, int size, Gdk.Pixbuf pixbuf);
+		public void append_search_path (string path);
+		public weak Gtk.IconInfo choose_icon (string[] icon_names, int size, Gtk.IconLookupFlags flags);
+		public static GLib.Quark error_quark ();
+		public static weak Gtk.IconTheme get_default ();
+		public weak string get_example_icon_name ();
+		public static weak Gtk.IconTheme get_for_screen (Gdk.Screen screen);
+		public int get_icon_sizes (string icon_name);
+		public void get_search_path (string path, int n_elements);
+		public bool has_icon (string icon_name);
+		public weak GLib.List list_contexts ();
+		public weak GLib.List list_icons (string context);
+		public weak Gdk.Pixbuf load_icon (string icon_name, int size, Gtk.IconLookupFlags flags) throws GLib.Error;
+		public weak Gtk.IconInfo lookup_by_gicon (GLib.Icon icon, int size, Gtk.IconLookupFlags flags);
+		public weak Gtk.IconInfo lookup_icon (string icon_name, int size, Gtk.IconLookupFlags flags);
+		public IconTheme ();
+		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, int n_elements);
+		public virtual signal void changed ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class IconView : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout {
+		public void convert_widget_to_bin_window_coords (int wx, int wy, int bx, int by);
+		public weak 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 weak Gtk.CellRenderer cell);
+		public bool get_dest_item_at_pos (int drag_x, int drag_y, out weak Gtk.TreePath path, Gtk.IconViewDropPosition pos);
+		public void get_drag_dest_item (out weak Gtk.TreePath path, Gtk.IconViewDropPosition pos);
+		public bool get_item_at_pos (int x, int y, out weak Gtk.TreePath path, out weak Gtk.CellRenderer cell);
+		public int get_item_width ();
+		public int get_margin ();
+		public int get_markup_column ();
+		public weak Gtk.TreeModel get_model ();
+		public Gtk.Orientation get_orientation ();
+		public weak 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 weak GLib.List 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 (int x, int y, bool keyboard_tip, out weak Gtk.TreeModel model, out weak Gtk.TreePath path, out Gtk.TreeIter iter);
+		public bool get_visible_range (out weak Gtk.TreePath start_path, out weak Gtk.TreePath end_path);
+		[CCode (type = "GtkWidget*")]
+		public IconView ();
+		[CCode (type = "GtkWidget*")]
+		public IconView.with_model (Gtk.TreeModel model);
+		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_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 ();
+		public int column_spacing { get; set; }
+		public int columns { 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 {
+		public void clear ();
+		public weak Gdk.PixbufAnimation get_animation ();
+		public void get_gicon (out weak GLib.Icon gicon, Gtk.IconSize size);
+		public void get_icon_name (out weak string icon_name, out Gtk.IconSize size);
+		public void get_icon_set (out weak Gtk.IconSet icon_set, out Gtk.IconSize size);
+		public void get_image (out weak Gdk.Image gdk_image, out weak Gdk.Bitmap mask);
+		public weak Gdk.Pixbuf get_pixbuf ();
+		public int get_pixel_size ();
+		public void get_pixmap (out weak Gdk.Pixmap pixmap, out weak Gdk.Bitmap mask);
+		public void get_stock (out weak string stock_id, out Gtk.IconSize size);
+		public Gtk.ImageType get_storage_type ();
+		[CCode (type = "GtkWidget*")]
+		public Image ();
+		[CCode (type = "GtkWidget*")]
+		public Image.from_animation (Gdk.PixbufAnimation animation);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_file (string filename);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_gicon (GLib.Icon icon, Gtk.IconSize size);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_icon_name (string icon_name, Gtk.IconSize size);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_image (Gdk.Image image, Gdk.Bitmap mask);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_pixbuf (Gdk.Pixbuf pixbuf);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_pixmap (Gdk.Pixmap pixmap, Gdk.Bitmap mask);
+		[CCode (type = "GtkWidget*")]
+		public Image.from_stock (string stock_id, Gtk.IconSize size);
+		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 { get; set; }
+		[NoAccessorMethod]
+		public GLib.Icon gicon { get; set; }
+		[NoAccessorMethod]
+		public string icon_name { get; set; }
+		[NoAccessorMethod]
+		public Gtk.IconSet icon_set { get; set; }
+		[NoAccessorMethod]
+		public int icon_size { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Image image { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixmap mask { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixbuf pixbuf { get; set; }
+		[NoAccessorMethod]
+		public Gdk.PixbufAnimation pixbuf_animation { get; set; }
+		public int pixel_size { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixmap pixmap { get; set; }
+		[NoAccessorMethod]
+		public string stock { get; set; }
+		public Gtk.ImageType storage_type { get; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ImageMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget get_image ();
+		[CCode (type = "GtkWidget*")]
+		public ImageMenuItem ();
+		[CCode (type = "GtkWidget*")]
+		public ImageMenuItem.from_stock (string stock_id, Gtk.AccelGroup? accel_group);
+		[CCode (type = "GtkWidget*")]
+		public ImageMenuItem.with_label (string label);
+		[CCode (type = "GtkWidget*")]
+		public ImageMenuItem.with_mnemonic (string label);
+		public void set_image (Gtk.Widget image);
+		public Gtk.Widget image { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class InputDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget axis_list;
+		public weak Gtk.Widget axis_listbox;
+		public weak Gtk.Widget mode_optionmenu;
+		public weak Gtk.Widget close_button;
+		public weak Gtk.Widget save_button;
+		[NoArrayLength]
+		public weak Gtk.Widget[] axis_items;
+		public weak Gdk.Device current_device;
+		public weak Gtk.Widget keys_list;
+		public weak Gtk.Widget keys_listbox;
+		[CCode (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;
+		public weak Gdk.Screen get_screen ();
+		[CCode (type = "GtkWidget*")]
+		public Invisible ();
+		[CCode (type = "GtkWidget*")]
+		public Invisible.for_screen (Gdk.Screen 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 {
+		[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 uint jtype;
+		public uint have_transform;
+		public uint in_click;
+		public uint pattern_set;
+		public weak string text;
+		public weak Pango.AttrList attrs;
+		public weak Pango.AttrList effective_attrs;
+		public weak Pango.Layout layout;
+		public weak Gtk.Window mnemonic_window;
+		public weak Gtk.LabelSelectionInfo select_info;
+		public double get_angle ();
+		public weak Pango.AttrList get_attributes ();
+		public Pango.EllipsizeMode get_ellipsize ();
+		public Gtk.Justification get_justify ();
+		public weak string get_label ();
+		public weak Pango.Layout get_layout ();
+		public void get_layout_offsets (int x, 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 weak Gtk.Widget get_mnemonic_widget ();
+		public bool get_selectable ();
+		public bool get_selection_bounds (int start, int end);
+		public bool get_single_line_mode ();
+		public weak string get_text ();
+		public bool get_use_markup ();
+		public bool get_use_underline ();
+		public int get_width_chars ();
+		[CCode (type = "GtkWidget*")]
+		public Label (string? str);
+		[CCode (type = "GtkWidget*")]
+		public Label.with_mnemonic (string str);
+		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_use_markup (bool setting);
+		public void set_use_underline (bool setting);
+		public void set_width_chars (int n_chars);
+		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 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 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")]
+	public class Layout : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+		public weak GLib.List children;
+		public weak Gdk.Window bin_window;
+		public Gdk.VisibilityState visibility;
+		public int scroll_x;
+		public int scroll_y;
+		public uint freeze_count;
+		public weak Gtk.Adjustment get_hadjustment ();
+		public void get_size (out uint width, out uint height);
+		public weak Gtk.Adjustment get_vadjustment ();
+		public void move (Gtk.Widget child_widget, int x, int y);
+		[CCode (type = "GtkWidget*")]
+		public Layout (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+		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 {
+		public weak string get_uri ();
+		[CCode (type = "GtkWidget*")]
+		public LinkButton (string uri);
+		[CCode (type = "GtkWidget*")]
+		public LinkButton.with_label (string uri, string label);
+		public void set_uri (string uri);
+		public static weak Gtk.LinkButtonUriFunc set_uri_hook (Gtk.LinkButtonUriFunc func, void* data, GLib.DestroyNotify destroy);
+		public string uri { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ListStore : GLib.Object, Gtk.Buildable, Gtk.TreeModel, Gtk.TreeSortable, Gtk.TreeDragSource, Gtk.TreeDragDest {
+		public int stamp;
+		public void* seq;
+		public weak GLib.List sort_list;
+		public int n_columns;
+		public int sort_column_id;
+		public Gtk.SortType order;
+		[NoArrayLength]
+		public weak GLib.Type[] column_headers;
+		public int length;
+		public weak Gtk.TreeIterCompareFunc default_sort_func;
+		public void* default_sort_data;
+		public weak Gtk.DestroyNotify default_sort_destroy;
+		public uint columns_dirty;
+		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, int columns, GLib.Value[] values);
+		public bool iter_is_valid (Gtk.TreeIter iter);
+		public void move_after (Gtk.TreeIter iter, Gtk.TreeIter? position);
+		public void move_before (Gtk.TreeIter iter, Gtk.TreeIter? position);
+		public ListStore (int n_columns, ...);
+		[CCode (cname = "gtk_list_store_newv")]
+		public ListStore.newv (int n_columns, GLib.Type[] types);
+		public void prepend (out Gtk.TreeIter iter);
+		public bool remove (Gtk.TreeIter iter);
+		public void reorder (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 Menu : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget parent_menu_item;
+		public weak Gtk.Widget old_active_menu_item;
+		public weak Gtk.AccelGroup accel_group;
+		public weak string accel_path;
+		public weak Gtk.MenuPositionFunc position_func;
+		public void* position_func_data;
+		public uint toggle_size;
+		public weak Gtk.Widget toplevel;
+		public weak Gtk.Widget tearoff_window;
+		public weak Gtk.Widget tearoff_hbox;
+		public weak Gtk.Widget tearoff_scrollbar;
+		public weak Gtk.Adjustment tearoff_adjustment;
+		public weak Gdk.Window view_window;
+		public weak Gdk.Window bin_window;
+		public int scroll_offset;
+		public int saved_scroll_offset;
+		public int scroll_step;
+		public uint timeout_id;
+		public weak Gdk.Region navigation_region;
+		public uint navigation_timeout;
+		public uint needs_destruction_ref_count;
+		public uint torn_off;
+		public uint tearoff_active;
+		public uint scroll_fast;
+		public uint upper_arrow_visible;
+		public uint lower_arrow_visible;
+		public uint upper_arrow_prelight;
+		public uint lower_arrow_prelight;
+		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 weak Gtk.AccelGroup get_accel_group ();
+		public weak Gtk.Widget get_active ();
+		public weak Gtk.Widget get_attach_widget ();
+		public static weak GLib.List get_for_attach_widget (Gtk.Widget widget);
+		public bool get_tearoff_state ();
+		public weak string get_title ();
+		[CCode (type = "GtkWidget*")]
+		public Menu ();
+		public void popdown ();
+		public void popup (Gtk.Widget? parent_menu_shell, Gtk.Widget? parent_menu_item, Gtk.MenuPositionFunc? func, uint button, uint 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_screen (Gdk.Screen screen);
+		public void set_tearoff_state (bool torn_off);
+		public void set_title (string title);
+		public bool tearoff_state { get; set; }
+		[NoAccessorMethod]
+		public string tearoff_title { 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 {
+		public Gtk.PackDirection get_child_pack_direction ();
+		public Gtk.PackDirection get_pack_direction ();
+		[CCode (type = "GtkWidget*")]
+		public MenuBar ();
+		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 {
+		public weak Gdk.Window event_window;
+		public ushort toggle_size;
+		public ushort accelerator_width;
+		public weak string accel_path;
+		public uint show_submenu_indicator;
+		public uint submenu_placement;
+		public uint submenu_direction;
+		public uint right_justify;
+		public uint timer_from_keypress;
+		public uint from_menubar;
+		public uint timer;
+		public bool get_right_justified ();
+		public weak Gtk.Widget get_submenu ();
+		[CCode (type = "GtkWidget*")]
+		public MenuItem ();
+		[CCode (type = "GtkWidget*")]
+		public MenuItem.with_label (string label);
+		[CCode (type = "GtkWidget*")]
+		public MenuItem.with_mnemonic (string label);
+		public void set_accel_path (string accel_path);
+		public void set_right_justified (bool right_justified);
+		public void set_submenu (Gtk.Widget submenu);
+		public Gtk.Menu submenu { 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 class MenuShell : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+		public GLib.List<Gtk.MenuItem> children;
+		public weak Gtk.Widget active_menu_item;
+		public weak Gtk.Widget parent_menu_shell;
+		public uint button;
+		public uint activate_time;
+		public uint active;
+		public uint have_grab;
+		public uint have_xgrab;
+		public uint ignore_leave;
+		public uint menu_flag;
+		public uint ignore_enter;
+		public void activate_item (Gtk.Widget menu_item, bool force_deactivate);
+		public void append ([CCode (type = "GtkWidget*")] Gtk.MenuItem child);
+		public void deselect ();
+		public bool get_take_focus ();
+		public void prepend (Gtk.Widget child);
+		public void select_first (bool search_sensitive);
+		public void set_take_focus (bool take_focus);
+		[NoWrapper]
+		public virtual int get_popup_delay ();
+		public virtual void insert (Gtk.Widget child, int position);
+		public virtual void select_item (Gtk.Widget menu_item);
+		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 ();
+		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 {
+		public weak Gtk.Widget get_menu ();
+		[CCode (type = "GtkToolItem*")]
+		public MenuToolButton (Gtk.Widget icon_widget, string label);
+		[CCode (type = "GtkToolItem*")]
+		public MenuToolButton.from_stock (string stock_id);
+		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;
+		public void format_secondary_markup (string message_format);
+		public void format_secondary_text (string message_format);
+		[CCode (type = "GtkWidget*")]
+		public MessageDialog (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...);
+		[CCode (type = "GtkWidget*")]
+		public MessageDialog.with_markup (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...);
+		public void set_image (Gtk.Widget image);
+		public void set_markup (string str);
+		[NoAccessorMethod]
+		public Gtk.ButtonsType buttons { construct; }
+		[NoAccessorMethod]
+		public Gtk.Widget image { get; set; }
+		[NoAccessorMethod]
+		public Gtk.MessageType message_type { get; set construct; }
+		[NoAccessorMethod]
+		public string secondary_text { get; set; }
+		[NoAccessorMethod]
+		public bool secondary_use_markup { get; set; }
+		[NoAccessorMethod]
+		public string text { get; set; }
+		[NoAccessorMethod]
+		public bool use_markup { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Misc : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+		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 {
+		public weak Gtk.Window get_parent ();
+		public weak Gdk.Screen get_screen ();
+		[CCode (type = "GMountOperation*")]
+		public MountOperation (Gtk.Window parent);
+		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 Gtk.Window screen { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Notebook : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.NotebookPage cur_page;
+		public weak GLib.List children;
+		public weak GLib.List first_tab;
+		public weak Gtk.Widget menu;
+		public weak Gdk.Window event_window;
+		public uint timer;
+		public uint in_child;
+		public uint click_child;
+		public uint button;
+		public uint need_timer;
+		public uint child_has_focus;
+		public uint have_visible_child;
+		public uint focus_out;
+		public uint has_before_previous;
+		public uint has_before_next;
+		public uint has_after_previous;
+		public uint has_after_next;
+		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 int get_current_page ();
+		public void* get_group ();
+		public weak Gtk.Widget get_menu_label (Gtk.Widget child);
+		public weak string get_menu_label_text (Gtk.Widget child);
+		public int get_n_pages ();
+		public weak 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 weak Gtk.Widget get_tab_label (Gtk.Widget child);
+		public weak string get_tab_label_text (Gtk.Widget child);
+		public Gtk.PositionType get_tab_pos ();
+		public bool get_tab_reorderable (Gtk.Widget child);
+		public int insert_page_menu (Gtk.Widget child, Gtk.Widget tab_label, Gtk.Widget menu_label, int position);
+		[CCode (type = "GtkWidget*")]
+		public Notebook ();
+		public void next_page ();
+		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_current_page (int page_num);
+		public void set_group (void* group);
+		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 (Gtk.NotebookWindowCreationFunc func, void* data, GLib.DestroyNotify destroy);
+		public virtual int insert_page (Gtk.Widget child, Gtk.Widget tab_label, int position);
+		[NoAccessorMethod]
+		public bool enable_popup { get; set; }
+		public void* group { get; set; }
+		[NoAccessorMethod]
+		public int group_id { 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 weak 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 (void* page, uint page_num);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Object : GLib.InitiallyUnowned {
+		public uint flags;
+		[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 PageSetup : GLib.Object {
+		public weak Gtk.PageSetup copy ();
+		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 weak 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 PageSetup ();
+		public PageSetup.from_file (string file_name) throws GLib.Error;
+		public PageSetup.from_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 {
+		public weak Gtk.Widget child1;
+		public weak Gtk.Widget child2;
+		public weak Gdk.Window handle;
+		public weak Gdk.GC xor_gc;
+		public Gdk.CursorType cursor_type;
+		public Gdk.Rectangle handle_pos;
+		public int child1_size;
+		public int last_allocation;
+		public uint in_drag;
+		public uint child1_shrink;
+		public uint child1_resize;
+		public uint child2_shrink;
+		public uint child2_resize;
+		public uint orientation;
+		public uint in_recursion;
+		public uint handle_prelit;
+		public weak Gtk.Widget last_child1_focus;
+		public weak Gtk.Widget last_child2_focus;
+		public int drag_pos;
+		public int original_position;
+		public void add1 (Gtk.Widget child);
+		public void add2 (Gtk.Widget child);
+		public void compute_position (int allocation, int child1_req, int child2_req);
+		public weak Gtk.Widget get_child1 ();
+		public weak Gtk.Widget get_child2 ();
+		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")]
+	public class Plug : Gtk.Window, Atk.Implementor, Gtk.Buildable {
+		public weak Gdk.Window socket_window;
+		public weak Gtk.Widget modality_window;
+		public weak Gtk.WindowGroup modality_group;
+		public weak GLib.HashTable grabbed_keys;
+		public uint same_app;
+		public void @construct (Gdk.NativeWindow socket_id);
+		public void construct_for_display (Gdk.Display display, Gdk.NativeWindow socket_id);
+		public Gdk.NativeWindow get_id ();
+		[CCode (type = "GtkWidget*")]
+		public Plug (Gdk.NativeWindow socket_id);
+		[CCode (type = "GtkWidget*")]
+		public Plug.for_display (Gdk.Display display, Gdk.NativeWindow socket_id);
+		[NoAccessorMethod]
+		public bool embedded { get; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class PrintContext : GLib.Object {
+		public weak Pango.Context create_pango_context ();
+		public weak Pango.Layout create_pango_layout ();
+		public weak Cairo.Context get_cairo_context ();
+		public double get_dpi_x ();
+		public double get_dpi_y ();
+		public double get_height ();
+		public weak Gtk.PageSetup get_page_setup ();
+		public weak 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 {
+		public void cancel ();
+		public weak Gtk.PageSetup get_default_page_setup ();
+		public void get_error () throws GLib.Error;
+		public weak Gtk.PrintSettings get_print_settings ();
+		public Gtk.PrintStatus get_status ();
+		public weak string get_status_string ();
+		public bool is_finished ();
+		public PrintOperation ();
+		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_export_filename (string filename);
+		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_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 { get; set; }
+		public Gtk.PageSetup default_page_setup { get; set; }
+		[NoAccessorMethod]
+		public string export_filename { get; set; }
+		[NoAccessorMethod]
+		public string job_name { get; set; }
+		[NoAccessorMethod]
+		public int n_pages { get; set; }
+		public Gtk.PrintSettings print_settings { get; set; }
+		[NoAccessorMethod]
+		public bool show_progress { get; set; }
+		public Gtk.PrintStatus status { get; }
+		public string status_string { get; }
+		[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 weak 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 ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class PrintSettings : GLib.Object {
+		public weak Gtk.PrintSettings copy ();
+		public void @foreach (Gtk.PrintSettingsFunc func);
+		public weak string get (string key);
+		public bool get_bool (string key);
+		public bool get_collate ();
+		public weak string get_default_source ();
+		public weak 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 weak 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 weak string get_media_type ();
+		public int get_n_copies ();
+		public int get_number_up ();
+		public Gtk.PageOrientation get_orientation ();
+		public weak string get_output_bin ();
+		public weak Gtk.PageRange get_page_ranges (int num_ranges);
+		public Gtk.PageSet get_page_set ();
+		public double get_paper_height (Gtk.Unit unit);
+		public weak Gtk.PaperSize get_paper_size ();
+		public double get_paper_width (Gtk.Unit unit);
+		public Gtk.PrintPages get_print_pages ();
+		public weak string get_printer ();
+		public Gtk.PrintQuality get_quality ();
+		public int get_resolution ();
+		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 PrintSettings ();
+		public PrintSettings.from_file (string file_name) throws GLib.Error;
+		public PrintSettings.from_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_orientation (Gtk.PageOrientation orientation);
+		public void set_output_bin (string output_bin);
+		public void set_page_ranges (Gtk.PageRange page_ranges, int num_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_quality (Gtk.PrintQuality quality);
+		public void set_resolution (int resolution);
+		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 blocks;
+		public int in_block;
+		public int activity_pos;
+		public double pulse_fraction;
+		public uint activity_dir;
+		public uint dirty;
+		public Pango.EllipsizeMode get_ellipsize ();
+		public double get_fraction ();
+		public Gtk.ProgressBarOrientation get_orientation ();
+		public double get_pulse_step ();
+		public weak string get_text ();
+		[CCode (type = "GtkWidget*")]
+		public ProgressBar ();
+		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 { 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 {
+		public int get_current_value ();
+		public weak GLib.SList get_group ();
+		public RadioAction (string name, string? label, string? tooltip, string? stock_id, int value);
+		public void set_current_value (int current_value);
+		public void set_group (GLib.SList group);
+		public int current_value { get; set; }
+		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 {
+		public weak GLib.SList get_group ();
+		[CCode (type = "GtkWidget*")]
+		public RadioButton (GLib.SList? group);
+		[CCode (type = "GtkWidget*")]
+		public RadioButton.from_widget (Gtk.RadioButton radio_group_member);
+		[CCode (type = "GtkWidget*")]
+		public RadioButton.with_label (GLib.SList? group, string label);
+		[CCode (type = "GtkWidget*")]
+		public RadioButton.with_label_from_widget (Gtk.RadioButton radio_group_member, string label);
+		[CCode (type = "GtkWidget*")]
+		public RadioButton.with_mnemonic (GLib.SList? group, string label);
+		[CCode (type = "GtkWidget*")]
+		public RadioButton.with_mnemonic_from_widget (Gtk.RadioButton radio_group_member, string label);
+		public void set_group (GLib.SList group);
+		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 {
+		public weak GLib.SList get_group ();
+		[CCode (type = "GtkWidget*")]
+		public RadioMenuItem (GLib.SList group);
+		[CCode (type = "GtkWidget*")]
+		public RadioMenuItem.from_widget (Gtk.RadioMenuItem group);
+		[CCode (type = "GtkWidget*")]
+		public RadioMenuItem.with_label (GLib.SList group, string label);
+		[CCode (type = "GtkWidget*")]
+		public RadioMenuItem.with_label_from_widget (Gtk.RadioMenuItem group, string label);
+		[CCode (type = "GtkWidget*")]
+		public RadioMenuItem.with_mnemonic (GLib.SList group, string label);
+		[CCode (type = "GtkWidget*")]
+		public RadioMenuItem.with_mnemonic_from_widget (Gtk.RadioMenuItem group, string label);
+		public void set_group (GLib.SList group);
+		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 {
+		public weak GLib.SList get_group ();
+		[CCode (type = "GtkToolItem*")]
+		public RadioToolButton (GLib.SList group);
+		[CCode (type = "GtkToolItem*")]
+		public RadioToolButton.from_stock (GLib.SList group, string stock_id);
+		[CCode (type = "GtkToolItem*")]
+		public RadioToolButton.from_widget (Gtk.RadioToolButton group);
+		[CCode (type = "GtkToolItem*")]
+		public RadioToolButton.with_stock_from_widget (Gtk.RadioToolButton group, string stock_id);
+		public void set_group (GLib.SList group);
+		public Gtk.RadioToolButton group { set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Range : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+		public uint flippable;
+		public uint has_stepper_a;
+		public uint has_stepper_b;
+		public uint has_stepper_c;
+		public uint has_stepper_d;
+		public uint need_recalc;
+		public uint slider_size_fixed;
+		public int min_slider_size;
+		public Gtk.Orientation orientation;
+		public Gdk.Rectangle range_rect;
+		public int slider_start;
+		public int slider_end;
+		public int round_digits;
+		public uint trough_click_forward;
+		public uint update_pending;
+		public weak Gtk.RangeLayout layout;
+		public weak Gtk.RangeStepTimer timer;
+		public int slide_initial_slider_position;
+		public int slide_initial_coordinate;
+		public uint update_timeout_id;
+		public weak Gdk.Window event_window;
+		public weak Gtk.Adjustment get_adjustment ();
+		public double get_fill_level ();
+		public bool get_inverted ();
+		public Gtk.SensitivityType get_lower_stepper_sensitivity ();
+		public bool get_restrict_to_fill_level ();
+		public bool get_show_fill_level ();
+		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_increments (double step, double page);
+		public void set_inverted (bool setting);
+		public void set_lower_stepper_sensitivity (Gtk.SensitivityType sensitivity);
+		public void set_range (double min, double max);
+		public void set_restrict_to_fill_level (bool restrict_to_fill_level);
+		public void set_show_fill_level (bool show_fill_level);
+		public void set_update_policy (Gtk.UpdateType policy);
+		public void set_upper_stepper_sensitivity (Gtk.SensitivityType sensitivity);
+		public void set_value (double value);
+		[NoWrapper]
+		public virtual void get_range_border (Gtk.Border border_);
+		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 bool show_fill_level { get; set; }
+		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")]
+	public class RcStyle : GLib.Object {
+		public weak string name;
+		[NoArrayLength]
+		public weak string[] bg_pixmap_name;
+		public weak Pango.FontDescription font_desc;
+		[NoArrayLength]
+		public weak Gtk.RcFlags[] color_flags;
+		[NoArrayLength]
+		public weak Gdk.Color[] fg;
+		[NoArrayLength]
+		public weak Gdk.Color[] bg;
+		[NoArrayLength]
+		public weak Gdk.Color[] text;
+		[NoArrayLength]
+		public weak Gdk.Color[] @base;
+		public int xthickness;
+		public int ythickness;
+		public weak GLib.Array rc_properties;
+		public weak GLib.SList rc_style_lists;
+		public weak GLib.SList icon_factories;
+		public uint engine_specified;
+		public weak Gtk.RcStyle copy ();
+		public RcStyle ();
+		[NoWrapper]
+		public virtual weak Gtk.RcStyle create_rc_style ();
+		[NoWrapper]
+		public virtual weak 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 {
+		public bool get_show_numbers ();
+		[CCode (type = "GtkAction*")]
+		public RecentAction (string name, string label, string tooltip, string stock_id);
+		[CCode (type = "GtkAction*")]
+		public RecentAction.for_manager (string name, string label, string tooltip, string stock_id, Gtk.RecentManager manager);
+		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 (type = "GtkWidget*")]
+		public RecentChooserDialog (string title, Gtk.Window parent, ...);
+		[CCode (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 {
+		public bool get_show_numbers ();
+		[CCode (type = "GtkWidget*")]
+		public RecentChooserMenu ();
+		[CCode (type = "GtkWidget*")]
+		public RecentChooserMenu.for_manager (Gtk.RecentManager manager);
+		public void set_show_numbers (bool show_numbers);
+		[NoWrapper]
+		public virtual void gtk_recent1 ();
+		[NoWrapper]
+		public virtual void gtk_recent2 ();
+		[NoWrapper]
+		public virtual void gtk_recent3 ();
+		[NoWrapper]
+		public virtual void gtk_recent4 ();
+		public bool show_numbers { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RecentChooserWidget : Gtk.VBox, Atk.Implementor, Gtk.Buildable, Gtk.RecentChooser {
+		[CCode (type = "GtkWidget*")]
+		public RecentChooserWidget ();
+		[CCode (type = "GtkWidget*")]
+		public RecentChooserWidget.for_manager (Gtk.RecentManager manager);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RecentFilter : Gtk.Object {
+		public void add_age (int days);
+		public void add_application (string application);
+		public void add_custom (Gtk.RecentFilterFlags needed, Gtk.RecentFilterFunc func, void* data, GLib.DestroyNotify data_destroy);
+		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 weak string get_name ();
+		public Gtk.RecentFilterFlags get_needed ();
+		public RecentFilter ();
+		public void set_name (string name);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class RecentManager : GLib.Object {
+		public bool add_full (string uri, Gtk.RecentData recent_data);
+		public bool add_item (string uri);
+		public static GLib.Quark error_quark ();
+		public static weak Gtk.RecentManager get_default ();
+		public weak GLib.List get_items ();
+		public int get_limit ();
+		public bool has_item (string uri);
+		public weak Gtk.RecentInfo lookup_item (string uri) throws GLib.Error;
+		public bool move_item (string uri, string new_uri) throws GLib.Error;
+		public RecentManager ();
+		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 { 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 {
+		public weak Gdk.Pixmap backing_store;
+		public weak Gdk.GC non_gr_exp_gc;
+		public int xsrc;
+		public int ysrc;
+		public int slider_size;
+		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);
+		public virtual void draw_pos ();
+		public virtual void draw_ticks ();
+		[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")]
+	public class Scale : Gtk.Range, Atk.Implementor, Gtk.Buildable {
+		public int get_digits ();
+		public bool get_draw_value ();
+		public weak Pango.Layout get_layout ();
+		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 virtual void get_layout_offsets (int x, int y);
+		public int digits { get; set; }
+		public bool draw_value { get; set; }
+		public Gtk.PositionType value_pos { get; set; }
+		public virtual signal weak string format_value (double value);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ScaleButton : Gtk.Button, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget plus_button;
+		public weak Gtk.Widget minus_button;
+		public weak Gtk.Adjustment get_adjustment ();
+		public double get_value ();
+		[CCode (type = "GtkWidget*")]
+		public ScaleButton (Gtk.IconSize size, double min, double max, double step, string[] icons);
+		public void set_adjustment (Gtk.Adjustment adjustment);
+		public void set_icons (string[] icons);
+		public void set_value (double value);
+		public Gtk.Adjustment adjustment { get; set; }
+		[NoAccessorMethod]
+		public string[] icons { 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 {
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class ScrolledWindow : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget hscrollbar;
+		public weak Gtk.Widget vscrollbar;
+		public uint hscrollbar_visible;
+		public uint vscrollbar_visible;
+		public uint focus_out;
+		public void add_with_viewport (Gtk.Widget child);
+		public weak Gtk.Adjustment get_hadjustment ();
+		public weak Gtk.Widget get_hscrollbar ();
+		public Gtk.CornerType get_placement ();
+		public void get_policy (Gtk.PolicyType hscrollbar_policy, Gtk.PolicyType vscrollbar_policy);
+		public Gtk.ShadowType get_shadow_type ();
+		public weak Gtk.Adjustment get_vadjustment ();
+		public weak Gtk.Widget get_vscrollbar ();
+		[CCode (type = "GtkWidget*")]
+		public ScrolledWindow (Gtk.Adjustment? hadjustment, Gtk.Adjustment? vadjustment);
+		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")]
+	public class Separator : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class SeparatorMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public SeparatorMenuItem ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class SeparatorToolItem : Gtk.ToolItem, Atk.Implementor, Gtk.Buildable {
+		public bool get_draw ();
+		[CCode (type = "GtkToolItem*")]
+		public SeparatorToolItem ();
+		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;
+		public static weak Gtk.Settings get_default ();
+		public static weak 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 color_hash { get; }
+		[NoAccessorMethod]
+		public bool gtk_alternative_button_order { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_alternative_sort_arrows { get; set; }
+		[NoAccessorMethod]
+		public string gtk_color_scheme { 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 { 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_mnemonics { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_error_bell { get; set; }
+		[NoAccessorMethod]
+		public string gtk_fallback_icon_theme { get; set; }
+		[NoAccessorMethod]
+		public string gtk_file_chooser_backend { get; set; }
+		[NoAccessorMethod]
+		public string gtk_font_name { get; set; }
+		[NoAccessorMethod]
+		public int gtk_fontconfig_timestamp { get; set; }
+		[NoAccessorMethod]
+		public string gtk_icon_sizes { get; set; }
+		[NoAccessorMethod]
+		public string gtk_icon_theme_name { get; set; }
+		[NoAccessorMethod]
+		public string gtk_im_module { get; set; }
+		[NoAccessorMethod]
+		public string gtk_key_theme_name { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_keynav_cursor_only { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_keynav_wrap_around { get; set; }
+		[NoAccessorMethod]
+		public string gtk_menu_bar_accel { get; set; }
+		[NoAccessorMethod]
+		public string gtk_modules { get; set; }
+		[NoAccessorMethod]
+		public string gtk_print_backends { get; set; }
+		[NoAccessorMethod]
+		public string gtk_print_preview_command { get; set; }
+		[NoAccessorMethod]
+		public int gtk_recent_files_limit { get; set; }
+		[NoAccessorMethod]
+		public int gtk_recent_files_max_age { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_show_input_method_menu { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_show_unicode_menu { get; set; }
+		[NoAccessorMethod]
+		public bool gtk_split_cursor { get; set; }
+		[NoAccessorMethod]
+		public string gtk_theme_name { 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 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 { get; set; }
+		[NoAccessorMethod]
+		public string gtk_xft_rgba { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class SizeGroup : GLib.Object, Gtk.Buildable {
+		public weak GLib.SList widgets;
+		public uint have_width;
+		public uint have_height;
+		public Gtk.Requisition requisition;
+		public void add_widget (Gtk.Widget widget);
+		public bool get_ignore_hidden ();
+		public Gtk.SizeGroupMode get_mode ();
+		public weak GLib.SList get_widgets ();
+		public SizeGroup (Gtk.SizeGroupMode mode);
+		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 ushort request_width;
+		public ushort request_height;
+		public ushort current_width;
+		public ushort current_height;
+		public weak Gdk.Window plug_window;
+		public weak Gtk.Widget plug_widget;
+		public short xembed_version;
+		public uint same_app;
+		public uint focus_in;
+		public uint have_size;
+		public uint need_map;
+		public uint is_mapped;
+		public uint active;
+		public weak Gtk.AccelGroup accel_group;
+		public weak Gtk.Widget toplevel;
+		public void add_id (Gdk.NativeWindow window_id);
+		public Gdk.NativeWindow get_id ();
+		[CCode (type = "GtkWidget*")]
+		public Socket ();
+		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.CellEditable, Gtk.Editable {
+		public weak Gdk.Window panel;
+		public uint timer;
+		public double timer_step;
+		public uint in_child;
+		public uint click_child;
+		public uint button;
+		public uint need_timer;
+		public uint timer_calls;
+		public void configure (Gtk.Adjustment adjustment, double climb_rate, uint digits);
+		public weak Gtk.Adjustment get_adjustment ();
+		public uint get_digits ();
+		public void get_increments (double step, 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 ();
+		[CCode (type = "GtkWidget*")]
+		public SpinButton (Gtk.Adjustment adjustment, double climb_rate, uint digits);
+		[CCode (type = "GtkWidget*")]
+		public SpinButton.with_range (double min, double max, double step);
+		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 ();
+		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 (void* 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 StatusIcon : GLib.Object {
+		public bool get_blinking ();
+		public bool get_geometry (out weak Gdk.Screen screen, out Gdk.Rectangle area, out Gtk.Orientation orientation);
+		public weak string get_icon_name ();
+		public weak Gdk.Pixbuf get_pixbuf ();
+		public weak Gdk.Screen get_screen ();
+		public int get_size ();
+		public weak string get_stock ();
+		public Gtk.ImageType get_storage_type ();
+		public bool get_visible ();
+		public uint get_x11_window_id ();
+		public bool is_embedded ();
+		public StatusIcon ();
+		public StatusIcon.from_file (string filename);
+		public StatusIcon.from_icon_name (string icon_name);
+		public StatusIcon.from_pixbuf (Gdk.Pixbuf pixbuf);
+		public StatusIcon.from_stock (string stock_id);
+		public static void position_menu (Gtk.Menu menu, int x, int y, bool push_in);
+		public void set_blinking (bool blinking);
+		public void set_from_file (string filename);
+		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_screen (Gdk.Screen screen);
+		public void set_tooltip (string tooltip_text);
+		public void set_visible (bool visible);
+		public bool blinking { get; set; }
+		[NoAccessorMethod]
+		public bool embedded { get; }
+		[NoAccessorMethod]
+		public string file { set; }
+		[NoAccessorMethod]
+		public string icon_name { get; set; }
+		[NoAccessorMethod]
+		public Gtk.Orientation orientation { get; }
+		[NoAccessorMethod]
+		public Gdk.Pixbuf pixbuf { get; set; }
+		public Gdk.Screen screen { get; set; }
+		public int size { get; }
+		[NoAccessorMethod]
+		public string stock { get; set; }
+		public Gtk.ImageType storage_type { get; }
+		public bool visible { get; set; }
+		public virtual signal void activate ();
+		public virtual signal void popup_menu (uint button, uint activate_time);
+		public virtual signal bool size_changed (int size);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Statusbar : Gtk.HBox, Atk.Implementor, Gtk.Buildable {
+		public weak Gtk.Widget frame;
+		public weak Gtk.Widget label;
+		public weak GLib.SList messages;
+		public weak GLib.SList keys;
+		public uint seq_context_id;
+		public uint seq_message_id;
+		public weak Gdk.Window grip_window;
+		public uint get_context_id (string context_description);
+		public bool get_has_resize_grip ();
+		[CCode (type = "GtkWidget*")]
+		public Statusbar ();
+		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 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 {
+		[NoArrayLength]
+		public Gdk.Color[] fg;
+		[NoArrayLength]
+		public Gdk.Color[] bg;
+		[NoArrayLength]
+		public Gdk.Color[] light;
+		[NoArrayLength]
+		public Gdk.Color[] dark;
+		[NoArrayLength]
+		public Gdk.Color[] mid;
+		[NoArrayLength]
+		public Gdk.Color[] text;
+		[NoArrayLength]
+		public Gdk.Color[] @base;
+		[NoArrayLength]
+		public Gdk.Color[] text_aa;
+		public Gdk.Color black;
+		public Gdk.Color white;
+		public weak Pango.FontDescription font_desc;
+		public int xthickness;
+		public int ythickness;
+		[NoArrayLength]
+		public Gdk.GC[] fg_gc;
+		[NoArrayLength]
+		public Gdk.GC[] bg_gc;
+		[NoArrayLength]
+		public Gdk.GC[] light_gc;
+		[NoArrayLength]
+		public Gdk.GC[] dark_gc;
+		[NoArrayLength]
+		public Gdk.GC[] mid_gc;
+		[NoArrayLength]
+		public Gdk.GC[] text_gc;
+		[NoArrayLength]
+		public Gdk.GC[] base_gc;
+		[NoArrayLength]
+		public Gdk.GC[] text_aa_gc;
+		public weak Gdk.GC black_gc;
+		public weak Gdk.GC white_gc;
+		[NoArrayLength]
+		public Gdk.Pixmap[] bg_pixmap;
+		public int attach_count;
+		public int depth;
+		public weak Gdk.Colormap colormap;
+		public weak Gtk.RcStyle rc_style;
+		public weak GLib.SList styles;
+		public weak GLib.Array property_cache;
+		public weak GLib.SList icon_factories;
+		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 weak Gtk.Style attach (Gdk.Window window);
+		public void detach ();
+		public bool lookup_color (string color_name, out Gdk.Color color);
+		public weak Gtk.IconSet lookup_icon_set (string stock_id);
+		public Style ();
+		[NoWrapper]
+		public virtual weak Gtk.Style clone ();
+		public virtual void copy ();
+		[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_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);
+		[NoWrapper]
+		public virtual void init_from_rc (Gtk.RcStyle rc_style);
+		public virtual weak 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 children;
+		public weak Gtk.TableRowCol rows;
+		public weak Gtk.TableRowCol cols;
+		public ushort nrows;
+		public ushort ncols;
+		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);
+		[CCode (type = "GtkWidget*")]
+		public Table (uint rows, uint columns, bool homogeneous);
+		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; }
+		public uint row_spacing { get; set; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TearoffMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable {
+		public uint torn_off;
+		[CCode (type = "GtkWidget*")]
+		public TearoffMenuItem ();
+	}
+	[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 GLib.SList selection_clipboards;
+		public weak Gtk.TextLogAttrCache log_attr_cache;
+		public uint user_action_count;
+		public uint modified;
+		public void add_mark (Gtk.TextMark mark, Gtk.TextIter where);
+		public void add_selection_clipboard (Gtk.Clipboard clipboard);
+		public void apply_tag_by_name (string name, Gtk.TextIter start, Gtk.TextIter end);
+		public bool backspace (Gtk.TextIter iter, bool interactive, bool default_editable);
+		public void copy_clipboard (Gtk.Clipboard clipboard);
+		public weak Gtk.TextChildAnchor create_child_anchor (Gtk.TextIter iter);
+		public weak Gtk.TextMark create_mark (string? mark_name, Gtk.TextIter where, bool left_gravity);
+		public weak Gtk.TextTag create_tag (string tag_name, ...);
+		public void cut_clipboard (Gtk.Clipboard clipboard, bool default_editable);
+		public void @delete (Gtk.TextIter start, Gtk.TextIter end);
+		public bool delete_interactive (Gtk.TextIter start_iter, 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, uchar data, ulong length) 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 weak Gtk.TargetList get_copy_target_list ();
+		public Gdk.Atom get_deserialize_formats (int n_formats);
+		public void get_end_iter (out Gtk.TextIter iter);
+		public bool get_has_selection ();
+		public weak 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 weak Gtk.TextMark get_mark (string name);
+		public bool get_modified ();
+		public weak Gtk.TargetList get_paste_target_list ();
+		public weak Gtk.TextMark get_selection_bound ();
+		public bool get_selection_bounds (out Gtk.TextIter start, out Gtk.TextIter end);
+		public Gdk.Atom get_serialize_formats (int n_formats);
+		public weak string get_slice (Gtk.TextIter start, Gtk.TextIter end, bool include_hidden_chars);
+		public void get_start_iter (out Gtk.TextIter iter);
+		public weak Gtk.TextTagTable get_tag_table ();
+		public weak string get_text (Gtk.TextIter start, Gtk.TextIter end, bool include_hidden_chars);
+		public void insert (Gtk.TextIter iter, string text, int len);
+		public void insert_at_cursor (string text, int len);
+		public bool insert_interactive (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 (Gtk.TextIter iter, Gtk.TextIter start, Gtk.TextIter end);
+		public bool insert_range_interactive (Gtk.TextIter iter, Gtk.TextIter start, Gtk.TextIter end, bool default_editable);
+		public void insert_with_tags (Gtk.TextIter iter, string text, int len, ...);
+		public void insert_with_tags_by_name (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 TextBuffer (Gtk.TextTagTable table);
+		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, Gtk.TextBufferDeserializeFunc function, GLib.DestroyNotify user_data_destroy);
+		public Gdk.Atom register_deserialize_tagset (string tagset_name);
+		public Gdk.Atom register_serialize_format (string mime_type, Gtk.TextBufferSerializeFunc function, GLib.DestroyNotify user_data_destroy);
+		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);
+		public uchar serialize (Gtk.TextBuffer content_buffer, Gdk.Atom format, Gtk.TextIter start, Gtk.TextIter end, ulong length);
+		public void set_modified (bool setting);
+		public void set_text (string text, int len);
+		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; }
+		[NoAccessorMethod]
+		public Gtk.TextTagTable tag_table { get; construct; }
+		public string text { 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 (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 ();
+		[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;
+		public bool get_deleted ();
+		public weak GLib.List get_widgets ();
+		public TextChildAnchor ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TextMark : GLib.Object {
+		public void* segment;
+		public weak Gtk.TextBuffer get_buffer ();
+		public bool get_deleted ();
+		public bool get_left_gravity ();
+		public weak string get_name ();
+		public bool get_visible ();
+		public TextMark (string name, bool left_gravity);
+		public void set_visible (bool setting);
+		[NoAccessorMethod]
+		public bool left_gravity { get; construct; }
+		[NoAccessorMethod]
+		public string name { get; construct; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TextTag : GLib.Object {
+		public weak Gtk.TextTagTable table;
+		public int priority;
+		public weak Gtk.TextAttributes values;
+		public uint bg_color_set;
+		public uint bg_stipple_set;
+		public uint fg_color_set;
+		public uint fg_stipple_set;
+		public uint bg_full_height_set;
+		public uint pg_bg_color_set;
+		public uint pad1;
+		public int get_priority ();
+		public TextTag (string name);
+		public void set_priority (int priority);
+		[NoAccessorMethod]
+		public bool accumulative_margin { get; set; }
+		[NoAccessorMethod]
+		public string background { set; }
+		[NoAccessorMethod]
+		public bool background_full_height { get; set; }
+		[NoAccessorMethod]
+		public bool background_full_height_set { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Color background_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool background_set { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixmap background_stipple { 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 { get; set; }
+		[NoAccessorMethod]
+		public bool family_set { get; set; }
+		[NoAccessorMethod]
+		public string font { get; set; }
+		[NoAccessorMethod]
+		public Pango.FontDescription font_desc { get; set; }
+		[NoAccessorMethod]
+		public string foreground { set; }
+		[NoAccessorMethod]
+		public Gdk.Color foreground_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool foreground_set { get; set; }
+		[NoAccessorMethod]
+		public Gdk.Pixmap foreground_stipple { 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 { 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 { get; construct; }
+		[NoAccessorMethod]
+		public string paragraph_background { set; }
+		[NoAccessorMethod]
+		public Gdk.Color paragraph_background_gdk { get; set; }
+		[NoAccessorMethod]
+		public bool paragraph_background_set { get; set; }
+		[NoAccessorMethod]
+		public int pixels_above_lines { get; set; }
+		[NoAccessorMethod]
+		public bool pixels_above_lines_set { get; set; }
+		[NoAccessorMethod]
+		public int pixels_below_lines { get; set; }
+		[NoAccessorMethod]
+		public bool pixels_below_lines_set { get; set; }
+		[NoAccessorMethod]
+		public int pixels_inside_wrap { get; set; }
+		[NoAccessorMethod]
+		public bool pixels_inside_wrap_set { get; set; }
+		[NoAccessorMethod]
+		public int right_margin { get; set; }
+		[NoAccessorMethod]
+		public bool right_margin_set { get; set; }
+		[NoAccessorMethod]
+		public int rise { get; set; }
+		[NoAccessorMethod]
+		public bool rise_set { get; set; }
+		[NoAccessorMethod]
+		public double scale { get; set; }
+		[NoAccessorMethod]
+		public bool scale_set { get; set; }
+		[NoAccessorMethod]
+		public int size { get; set; }
+		[NoAccessorMethod]
+		public double size_points { get; set; }
+		[NoAccessorMethod]
+		public bool size_set { get; set; }
+		[NoAccessorMethod]
+		public Pango.Stretch stretch { get; set; }
+		[NoAccessorMethod]
+		public bool stretch_set { get; set; }
+		[NoAccessorMethod]
+		public bool strikethrough { get; set; }
+		[NoAccessorMethod]
+		public bool strikethrough_set { get; set; }
+		[NoAccessorMethod]
+		public Pango.Style style { get; set; }
+		[NoAccessorMethod]
+		public bool style_set { get; set; }
+		[NoAccessorMethod]
+		public Pango.TabArray tabs { 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 {
+		public weak GLib.HashTable hash;
+		public weak GLib.SList anonymous;
+		public int anon_count;
+		public weak GLib.SList buffers;
+		public void add (Gtk.TextTag tag);
+		public void @foreach (Gtk.TextTagTableForeach func, void* data);
+		public int get_size ();
+		public weak Gtk.TextTag lookup (string name);
+		public TextTagTable ();
+		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 selection_drag_handler;
+		public uint scroll_timeout;
+		public Gtk.Justification justify;
+		public uint overwrite_mode;
+		public uint need_im_reset;
+		public uint width_changed;
+		public uint onscreen_validated;
+		public uint mouse_cursor_obscured;
+		public weak Gtk.TextWindow text_window;
+		public weak Gtk.TextWindow left_window;
+		public weak Gtk.TextWindow right_window;
+		public weak Gtk.TextWindow top_window;
+		public weak Gtk.TextWindow bottom_window;
+		public weak Gtk.Adjustment hadjustment;
+		public weak Gtk.Adjustment vadjustment;
+		public int xoffset;
+		public int yoffset;
+		public int width;
+		public int height;
+		public int virtual_cursor_x;
+		public int virtual_cursor_y;
+		public weak Gtk.TextMark first_para_mark;
+		public int first_para_pixels;
+		public weak Gtk.TextMark dnd_mark;
+		public uint blink_timeout;
+		public uint first_validate_idle;
+		public uint incremental_validate_idle;
+		public weak Gtk.IMContext im_context;
+		public weak Gtk.Widget popup_menu;
+		public int drag_start_x;
+		public int drag_start_y;
+		public weak GLib.SList children;
+		public weak Gtk.TextPendingScroll pending_scroll;
+		public int pending_place_cursor_button;
+		public void add_child_at_anchor (Gtk.Widget child, Gtk.TextChildAnchor anchor);
+		public void add_child_in_window (Gtk.Widget child, Gtk.TextWindowType which_window, int xpos, int ypos);
+		public bool backward_display_line (Gtk.TextIter iter);
+		public bool backward_display_line_start (Gtk.TextIter iter);
+		public void buffer_to_window_coords (Gtk.TextWindowType win, int buffer_x, int buffer_y, int window_x, int window_y);
+		public bool forward_display_line (Gtk.TextIter iter);
+		public bool forward_display_line_end (Gtk.TextIter iter);
+		public bool get_accepts_tab ();
+		public int get_border_window_size (Gtk.TextWindowType type);
+		public weak Gtk.TextBuffer get_buffer ();
+		public bool get_cursor_visible ();
+		public weak Gtk.TextAttributes get_default_attributes ();
+		public bool get_editable ();
+		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 (Gtk.TextIter target_iter, int y, int line_top);
+		public void get_line_yrange (Gtk.TextIter iter, int y, 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 weak Pango.TabArray get_tabs ();
+		public void get_visible_rect (out Gdk.Rectangle visible_rect);
+		public weak Gdk.Window get_window (Gtk.TextWindowType win);
+		public Gtk.TextWindowType get_window_type (Gdk.Window window);
+		public Gtk.WrapMode get_wrap_mode ();
+		public void move_child (Gtk.Widget child, int xpos, int ypos);
+		public bool move_mark_onscreen (Gtk.TextMark mark);
+		public bool move_visually (Gtk.TextIter iter, int count);
+		[CCode (type = "GtkWidget*")]
+		public TextView ();
+		[CCode (type = "GtkWidget*")]
+		public TextView.with_buffer (Gtk.TextBuffer buffer);
+		public bool place_cursor_onscreen ();
+		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, int buffer_x, int buffer_y);
+		[NoWrapper]
+		public virtual void move_focus (Gtk.DirectionType direction);
+		public bool accepts_tab { get; set; }
+		public Gtk.TextBuffer buffer { get; set; }
+		public bool cursor_visible { get; set; }
+		public bool editable { 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 { 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 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")]
+	public class ToggleAction : Gtk.Action, Gtk.Buildable {
+		public bool get_active ();
+		public bool get_draw_as_radio ();
+		public ToggleAction (string name, string? label, string? tooltip, string? stock_id);
+		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 {
+		public bool get_active ();
+		public bool get_inconsistent ();
+		public bool get_mode ();
+		[CCode (type = "GtkWidget*")]
+		public ToggleButton ();
+		[CCode (type = "GtkWidget*")]
+		public ToggleButton.with_label (string label);
+		[CCode (type = "GtkWidget*")]
+		public ToggleButton.with_mnemonic (string label);
+		public void set_active (bool is_active);
+		public void set_inconsistent (bool setting);
+		public void set_mode (bool draw_indicator);
+		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 {
+		public bool get_active ();
+		[CCode (type = "GtkToolItem*")]
+		public ToggleToolButton ();
+		[CCode (type = "GtkToolItem*")]
+		public ToggleToolButton.from_stock (string stock_id);
+		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 {
+		public weak string get_icon_name ();
+		public weak Gtk.Widget get_icon_widget ();
+		public weak string get_label ();
+		public weak Gtk.Widget get_label_widget ();
+		public weak string get_stock_id ();
+		public bool get_use_underline ();
+		[CCode (type = "GtkToolItem*")]
+		public ToolButton (Gtk.Widget icon_widget, string label);
+		[CCode (type = "GtkToolItem*")]
+		public ToolButton.from_stock (string stock_id);
+		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 {
+		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 weak Gtk.Widget get_proxy_menu_item (string menu_item_id);
+		public Gtk.ReliefStyle get_relief_style ();
+		public Gtk.ToolbarStyle get_toolbar_style ();
+		public bool get_use_drag_window ();
+		public bool get_visible_horizontal ();
+		public bool get_visible_vertical ();
+		public ToolItem ();
+		public void rebuild_menu ();
+		public weak 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 Toolbar : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.ToolShell {
+		public int num_children;
+		public weak GLib.List children;
+		public Gtk.ToolbarStyle style;
+		public int button_maxw;
+		public int button_maxh;
+		public uint style_set;
+		public int get_drop_index (int x, int y);
+		public int get_item_index (Gtk.ToolItem item);
+		public int get_n_items ();
+		public weak Gtk.ToolItem get_nth_item (int n);
+		public bool get_show_arrow ();
+		public bool get_tooltips ();
+		public void insert (Gtk.ToolItem item, int pos);
+		[CCode (type = "GtkWidget*")]
+		public Toolbar ();
+		public void set_drop_highlight_item (Gtk.ToolItem tool_item, int index_);
+		public void set_icon_size (Gtk.IconSize icon_size);
+		public void set_orientation (Gtk.Orientation orientation);
+		public void set_show_arrow (bool show_arrow);
+		public void set_style (Gtk.ToolbarStyle style);
+		public void set_tooltips (bool enable);
+		public void unset_icon_size ();
+		public void unset_style ();
+		public Gtk.IconSize icon_size { get; set; }
+		[NoAccessorMethod]
+		public bool icon_size_set { get; set; }
+		public Gtk.Orientation orientation { get; set; }
+		public bool show_arrow { get; set; }
+		[NoAccessorMethod]
+		public Gtk.ToolbarStyle toolbar_style { get; set; }
+		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 {
+		public void set_custom (Gtk.Widget custom_widget);
+		public void set_icon (Gdk.Pixbuf pixbuf);
+		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 {
+		public void clear_cache ();
+		public bool convert_child_iter_to_iter (out Gtk.TreeIter filter_iter, Gtk.TreeIter child_iter);
+		public weak 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 weak Gtk.TreePath convert_path_to_child_path (Gtk.TreePath filter_path);
+		public weak Gtk.TreeModel get_model ();
+		[CCode (type = "GtkTreeModel*")]
+		public TreeModelFilter (Gtk.TreeModel child_model, Gtk.TreePath? root);
+		public void refilter ();
+		public void set_modify_func (int n_columns, GLib.Type[] types, Gtk.TreeModelFilterModifyFunc func, void* data, Gtk.DestroyNotify destroy);
+		public void set_visible_column (int column);
+		public void set_visible_func (Gtk.TreeModelFilterVisibleFunc# func);
+		[NoAccessorMethod]
+		public Gtk.TreeModel child_model { get; construct; }
+		[NoAccessorMethod]
+		public Gtk.TreePath virtual_root { get; construct; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TreeModelSort : GLib.Object, Gtk.TreeModel, Gtk.TreeSortable, Gtk.TreeDragSource {
+		public void* root;
+		public int stamp;
+		public uint child_flags;
+		public weak Gtk.TreeModel child_model;
+		public int zero_ref_count;
+		public weak GLib.List sort_list;
+		public int sort_column_id;
+		public Gtk.SortType order;
+		public weak Gtk.TreeIterCompareFunc default_sort_func;
+		public void* default_sort_data;
+		public weak Gtk.DestroyNotify default_sort_destroy;
+		public uint changed_id;
+		public uint inserted_id;
+		public uint has_child_toggled_id;
+		public uint deleted_id;
+		public uint reordered_id;
+		public void clear_cache ();
+		public bool convert_child_iter_to_iter (out Gtk.TreeIter sort_iter, Gtk.TreeIter child_iter);
+		public weak 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 weak Gtk.TreePath convert_path_to_child_path (Gtk.TreePath sorted_path);
+		public weak Gtk.TreeModel get_model ();
+		public bool iter_is_valid (Gtk.TreeIter iter);
+		[CCode (type = "GtkTreeModel*")]
+		public TreeModelSort.with_model (Gtk.TreeModel child_model);
+		public void reset_default_sort_func ();
+		[NoAccessorMethod]
+		public Gtk.TreeModel model { get; construct; }
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class TreeSelection : GLib.Object {
+		public weak Gtk.TreeView tree_view;
+		public Gtk.SelectionMode type;
+		public weak Gtk.TreeSelectionFunc user_func;
+		public void* user_data;
+		public weak Gtk.DestroyNotify destroy;
+		public int count_selected_rows ();
+		public Gtk.SelectionMode get_mode ();
+		public bool get_selected (out weak Gtk.TreeModel model, out Gtk.TreeIter iter);
+		public GLib.List<Gtk.TreePath> get_selected_rows (out weak Gtk.TreeModel model);
+		public weak 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 (Gtk.TreeSelectionFunc func, void* data, Gtk.DestroyNotify destroy);
+		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.Buildable, Gtk.TreeModel, Gtk.TreeSortable, Gtk.TreeDragSource, Gtk.TreeDragDest {
+		public int stamp;
+		public void* root;
+		public void* last;
+		public int n_columns;
+		public int sort_column_id;
+		public weak GLib.List sort_list;
+		public Gtk.SortType order;
+		[NoArrayLength]
+		public weak GLib.Type[] column_headers;
+		public weak Gtk.TreeIterCompareFunc default_sort_func;
+		public void* default_sort_data;
+		public weak Gtk.DestroyNotify default_sort_destroy;
+		public uint columns_dirty;
+		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, int columns, 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 (Gtk.TreeIter iter, Gtk.TreeIter? position);
+		public void move_before (Gtk.TreeIter iter, Gtk.TreeIter? position);
+		public TreeStore (int n_columns, ...);
+		[CCode (cname = "gtk_tree_store_newv")]
+		public TreeStore.newv (int n_columns, GLib.Type[] types);
+		public void prepend (out Gtk.TreeIter iter, Gtk.TreeIter? parent);
+		public bool remove (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 {
+		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, int tx, int ty);
+		public void convert_bin_window_to_widget_coords (int bx, int by, int wx, int wy);
+		public void convert_tree_to_bin_window_coords (int tx, int ty, int bx, int by);
+		public void convert_tree_to_widget_coords (int tx, int ty, int wx, int wy);
+		public void convert_widget_to_bin_window_coords (int wx, int wy, int bx, int by);
+		public void convert_widget_to_tree_coords (int wx, int wy, int tx, int ty);
+		public weak 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 weak Gdk.Window get_bin_window ();
+		public void get_cell_area (Gtk.TreePath path, Gtk.TreeViewColumn column, out Gdk.Rectangle rect);
+		public weak Gtk.TreeViewColumn get_column (int n);
+		public weak GLib.List get_columns ();
+		public void get_cursor (out weak Gtk.TreePath path, out weak 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 weak Gtk.TreeViewColumn get_expander_column ();
+		public bool get_fixed_height_mode ();
+		public Gtk.TreeViewGridLines get_grid_lines ();
+		public weak 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 weak Gtk.TreeModel get_model ();
+		public bool get_path_at_pos (int x, int y, out Gtk.TreePath? path, out weak Gtk.TreeViewColumn? column, out int cell_x, out int cell_y);
+		public bool get_reorderable ();
+		public weak Gtk.TreeViewRowSeparatorFunc get_row_separator_func ();
+		public bool get_rubber_banding ();
+		public bool get_rules_hint ();
+		public int get_search_column ();
+		public weak Gtk.Entry get_search_entry ();
+		public weak Gtk.TreeViewSearchEqualFunc get_search_equal_func ();
+		public weak Gtk.TreeViewSearchPositionFunc get_search_position_func ();
+		public weak Gtk.TreeSelection get_selection ();
+		public bool get_show_expanders ();
+		public int get_tooltip_column ();
+		public bool get_tooltip_context (int x, int y, bool keyboard_tip, out weak Gtk.TreeModel model, out weak Gtk.TreePath path, out Gtk.TreeIter iter);
+		public weak Gtk.Adjustment get_vadjustment ();
+		public bool get_visible_range (out weak Gtk.TreePath start_path, out weak 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, Gtk.TreeCellDataFunc func, void* data, GLib.DestroyNotify dnotify);
+		public bool is_rubber_banding_active ();
+		public void map_expanded_rows (Gtk.TreeViewMappingFunc func, void* data);
+		public void move_column_after (Gtk.TreeViewColumn column, Gtk.TreeViewColumn base_column);
+		[CCode (type = "GtkWidget*")]
+		public TreeView ();
+		[CCode (type = "GtkWidget*")]
+		public TreeView.with_model (Gtk.TreeModel model);
+		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 (Gtk.TreeViewColumnDropFunc func, Gtk.DestroyNotify destroy);
+		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 (Gtk.TreeDestroyCountFunc func, void* data, Gtk.DestroyNotify destroy);
+		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 (Gtk.TreeViewRowSeparatorFunc func, void* data, Gtk.DestroyNotify destroy);
+		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 (Gtk.TreeViewSearchEqualFunc search_equal_func, void* search_user_data, Gtk.DestroyNotify search_destroy);
+		public void set_search_position_func (Gtk.TreeViewSearchPositionFunc func, void* data, GLib.DestroyNotify destroy);
+		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 ();
+		[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);
+		[HasEmitter]
+		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.Buildable, Gtk.CellLayout {
+		public weak Gtk.Widget tree_view;
+		public weak Gtk.Widget button;
+		public weak Gtk.Widget child;
+		public weak Gtk.Widget arrow;
+		public weak Gdk.Window window;
+		public weak Gtk.CellEditable editable_widget;
+		public float xalign;
+		public uint property_changed_signal;
+		public Gtk.TreeViewColumnSizing column_type;
+		public int requested_width;
+		public int button_request;
+		public int resized_width;
+		public int drag_x;
+		public int drag_y;
+		public weak GLib.List cell_list;
+		public uint sort_clicked_signal;
+		public uint sort_column_changed_signal;
+		public int sort_column_id;
+		public uint dirty;
+		public uint show_sort_indicator;
+		public uint maybe_reordered;
+		public uint use_resized_width;
+		public bool cell_get_position (Gtk.CellRenderer cell_renderer, int start_pos, 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 weak GLib.List get_cell_renderers ();
+		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 weak string get_title ();
+		public weak Gtk.Widget get_tree_view ();
+		public bool get_visible ();
+		public weak Gtk.Widget get_widget ();
+		public int get_width ();
+		public TreeViewColumn ();
+		public TreeViewColumn.with_attributes (string? title, Gtk.CellRenderer cell, ...);
+		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);
+		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 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 {
+		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, long length) throws GLib.Error;
+		public void ensure_update ();
+		public weak Gtk.AccelGroup get_accel_group ();
+		public weak GLib.List get_action_groups ();
+		public bool get_add_tearoffs ();
+		public weak GLib.SList get_toplevels (Gtk.UIManagerItemType types);
+		public weak string get_ui ();
+		public void insert_action_group (Gtk.ActionGroup action_group, int pos);
+		public UIManager ();
+		[CCode (type = "guint")]
+		public UIManager.merge_id (Gtk.UIManager self);
+		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 virtual weak Gtk.Action get_action (string path);
+		public virtual weak Gtk.Widget get_widget (string path);
+		public bool add_tearoffs { get; set; }
+		public string ui { 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 {
+		[CCode (type = "GtkWidget*")]
+		public VBox (bool homogeneous, int spacing);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class VButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public VButtonBox ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class VPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public VPaned ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class VRuler : Gtk.Ruler, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public VRuler ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class VScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public VScale (Gtk.Adjustment adjustment);
+		[CCode (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 {
+		[CCode (type = "GtkWidget*")]
+		public VScrollbar (Gtk.Adjustment adjustment);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class VSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable {
+		[CCode (type = "GtkWidget*")]
+		public VSeparator ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Viewport : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+		public weak Gdk.Window view_window;
+		public weak Gdk.Window bin_window;
+		public weak Gtk.Adjustment get_hadjustment ();
+		public Gtk.ShadowType get_shadow_type ();
+		public weak Gtk.Adjustment get_vadjustment ();
+		[CCode (type = "GtkWidget*")]
+		public Viewport (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+		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 {
+		[CCode (type = "GtkWidget*")]
+		public VolumeButton ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public class Window : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
+		public weak string wmclass_name;
+		public weak string wmclass_class;
+		public weak string wm_role;
+		public weak Gtk.Widget focus_widget;
+		public weak Gtk.Widget default_widget;
+		public weak Gtk.Window transient_parent;
+		public weak Gtk.WindowGeometryInfo geometry_info;
+		public weak Gdk.Window frame;
+		public weak Gtk.WindowGroup group;
+		public ushort configure_request_count;
+		public uint configure_notify_received;
+		public uint need_default_position;
+		public uint need_default_size;
+		public uint position;
+		public uint has_user_ref_count;
+		public uint has_focus;
+		public uint has_frame;
+		public uint iconify_initially;
+		public uint stick_initially;
+		public uint maximize_initially;
+		public uint frame_left;
+		public uint frame_top;
+		public uint frame_right;
+		public uint frame_bottom;
+		public uint keys_changed_handler;
+		public Gdk.ModifierType mnemonic_modifier;
+		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 (uint xid);
+		public void add_mnemonic (uint keyval, Gtk.Widget target);
+		public void begin_move_drag (int button, int root_x, int root_y, uint timestamp);
+		public void begin_resize_drag (Gdk.WindowEdge edge, int button, int root_x, int root_y, uint timestamp);
+		public void deiconify ();
+		public void fullscreen ();
+		public bool get_accept_focus ();
+		public bool get_decorated ();
+		public static weak GLib.List get_default_icon_list ();
+		public void get_default_size (out int width, out int height);
+		public bool get_deletable ();
+		public bool get_destroy_with_parent ();
+		public weak 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 weak Gtk.WindowGroup get_group ();
+		public bool get_has_frame ();
+		public weak Gdk.Pixbuf get_icon ();
+		public weak GLib.List get_icon_list ();
+		public weak string get_icon_name ();
+		public Gdk.ModifierType get_mnemonic_modifier ();
+		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 weak string get_role ();
+		public weak 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 weak string get_title ();
+		public weak Gtk.Window get_transient_for ();
+		public Gdk.WindowTypeHint get_type_hint ();
+		public bool get_urgency_hint ();
+		public void iconify ();
+		public static weak GLib.List list_toplevels ();
+		public void maximize ();
+		public bool mnemonic_activate (uint keyval, Gdk.ModifierType modifier);
+		public void move (int x, int y);
+		[CCode (type = "GtkWidget*")]
+		public Window (Gtk.WindowType type);
+		public bool parse_geometry (string geometry);
+		public void present ();
+		public void present_with_time (uint timestamp);
+		public bool propagate_key_event (Gdk.EventKey event);
+		public void remove_accel_group (Gtk.AccelGroup accel_group);
+		public void remove_embedded_xid (uint 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 (GLib.List 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 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_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 ();
+		[NoWrapper]
+		public virtual void move_focus (Gtk.DirectionType direction);
+		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 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; }
+		public virtual signal void default_activated ();
+		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")]
+	public class WindowGroup : GLib.Object {
+		public weak GLib.SList grabs;
+		public void add_window (Gtk.Window window);
+		public WindowGroup ();
+		public void remove_window (Gtk.Window window);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface FileChooserEmbed {
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface Buildable {
+		public abstract void add_child (Gtk.Builder builder, GLib.Object child, string type);
+		public abstract weak 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, void* data);
+		public abstract bool custom_tag_start (Gtk.Builder builder, GLib.Object child, string tagname, GLib.MarkupParser parser, void* data);
+		public abstract weak GLib.Object get_internal_child (Gtk.Builder builder, string childname);
+		public abstract weak 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 {
+		[HasEmitter]
+		public virtual signal void editing_done ();
+		[HasEmitter]
+		public virtual signal void remove_widget ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface CellLayout : GLib.Object {
+		public void set_attributes (Gtk.CellRenderer cell, ...);
+		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 weak GLib.List 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 abstract void set_cell_data_func (Gtk.CellRenderer cell, Gtk.CellLayoutDataFunc# func);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface Editable {
+		public void copy_clipboard ();
+		public void cut_clipboard ();
+		public void delete_selection ();
+		public bool get_editable ();
+		public void paste_clipboard ();
+		public void select_region (int start, int end);
+		public void set_editable (bool is_editable);
+		[NoWrapper]
+		public abstract void do_delete_text (int start_pos, int end_pos);
+		[NoWrapper]
+		public abstract void do_insert_text (string text, int length, int position);
+		public abstract weak string get_chars (int start_pos, int end_pos);
+		public abstract int get_position ();
+		public abstract bool get_selection_bounds (int start, int end);
+		public abstract void set_position (int position);
+		[NoWrapper]
+		public abstract void set_selection_bounds (int start_pos, int end_pos);
+		public virtual signal void changed ();
+		[HasEmitter]
+		public virtual signal void delete_text (int start_pos, int end_pos);
+		[HasEmitter]
+		public virtual signal void insert_text (string text, int length, void* position);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface FileChooser : Gtk.Widget {
+		public void add_filter (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 weak string get_current_folder ();
+		public weak string get_current_folder_uri ();
+		public bool get_do_overwrite_confirmation ();
+		public weak Gtk.Widget get_extra_widget ();
+		public weak string get_filename ();
+		public weak GLib.SList get_filenames ();
+		public weak Gtk.FileFilter get_filter ();
+		public bool get_local_only ();
+		public weak string get_preview_filename ();
+		public weak string get_preview_uri ();
+		public weak Gtk.Widget get_preview_widget ();
+		public bool get_preview_widget_active ();
+		public bool get_select_multiple ();
+		public bool get_show_hidden ();
+		public weak string get_uri ();
+		public weak GLib.SList get_uris ();
+		public bool get_use_preview_label ();
+		public weak GLib.SList list_filters ();
+		public weak GLib.SList list_shortcut_folder_uris ();
+		public weak GLib.SList 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_filename (string filename);
+		public bool select_uri (string uri);
+		public void set_action (Gtk.FileChooserAction action);
+		public bool set_current_folder (string filename);
+		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_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_filename (string filename);
+		public void unselect_uri (string uri);
+		public Gtk.FileChooserAction action { 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 virtual signal Gtk.FileChooserConfirmation confirm_overwrite ();
+		public virtual signal void current_folder_changed ();
+		public virtual signal void file_activated ();
+		public virtual signal void selection_changed ();
+		public virtual signal void update_preview ();
+	}
+	[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 virtual signal void got_page_size (Gtk.PrintContext context, Gtk.PageSetup page_setup);
+		public virtual signal void ready (Gtk.PrintContext context);
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface RecentChooser : GLib.Object {
+		public static GLib.Quark error_quark ();
+		public weak Gtk.RecentInfo get_current_item ();
+		public weak Gtk.RecentFilter get_filter ();
+		public int get_limit ();
+		public bool get_local_only ();
+		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 weak string get_uris (ulong length);
+		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 void set_sort_type (Gtk.RecentSortType sort_type);
+		public abstract void add_filter (Gtk.RecentFilter filter);
+		public abstract weak string get_current_uri ();
+		public abstract weak GLib.List get_items ();
+		[NoWrapper]
+		public abstract weak Gtk.RecentManager get_recent_manager ();
+		public abstract weak GLib.SList 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 abstract void set_sort_func (Gtk.RecentSortFunc sort_func, void* sort_data, GLib.DestroyNotify data_destroy);
+		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 virtual signal void item_activated ();
+		public virtual signal void selection_changed ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface ToolShell : Gtk.Widget {
+		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 void rebuild_menu ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public interface TreeDragDest {
+		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 {
+		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 bool get_iter_first (out Gtk.TreeIter iter);
+		public bool get_iter_from_string (out Gtk.TreeIter iter, string path_string);
+		public string get_string_from_iter (Gtk.TreeIter iter);
+		public void get_valist (Gtk.TreeIter iter, void* var_args);
+		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 abstract int get_n_columns ();
+		public abstract Gtk.TreePath get_path (Gtk.TreeIter iter);
+		public abstract void get_value (Gtk.TreeIter iter, int column, ref 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 abstract void ref_node (Gtk.TreeIter iter);
+		public abstract void unref_node (Gtk.TreeIter iter);
+		[HasEmitter]
+		public virtual signal void row_changed (Gtk.TreePath path, Gtk.TreeIter iter);
+		[HasEmitter]
+		public virtual signal void row_deleted (Gtk.TreePath path);
+		[HasEmitter]
+		public virtual signal void row_has_child_toggled (Gtk.TreePath path, Gtk.TreeIter iter);
+		[HasEmitter]
+		public virtual signal void row_inserted (Gtk.TreePath path, Gtk.TreeIter iter);
+		[HasEmitter]
+		public virtual 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 (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, Gtk.TreeIterCompareFunc# sort_func);
+		[HasEmitter]
+		public virtual signal void sort_column_changed ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public struct Allocation {
+		public int x;
+		public int y;
+		public int width;
+		public int height;
+	}
+	[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 (type = "GCallback")]
+		public weak Gtk.ActionCallback callback;
+	}
+	[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")]
+	public struct RecentData {
+		public string display_name;
+		public string description;
+		public string mime_type;
+		public string app_name;
+		public string app_exec;
+		[NoArrayLength]
+		public string[] groups;
+		public bool is_private;
+	}
+	[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 ToggleActionEntry {
+		public weak string name;
+		public weak string stock_id;
+		public weak string label;
+		public weak string accelerator;
+		public weak string tooltip;
+		public weak Gtk.ActionCallback callback;
+		public bool is_active;
+	}
+	[CCode (type_id = "GTK_TYPE_BORDER", cheader_filename = "gtk/gtk.h")]
+	public struct Border {
+		public int left;
+		public int right;
+		public int top;
+		public int bottom;
+		public Gtk.Border copy ();
+		public void free ();
+		[CCode (cname = "gtk_border_new")]
+		public Border ();
+	}
+	[CCode (type_id = "GTK_TYPE_REQUISITION", cheader_filename = "gtk/gtk.h")]
+	public struct Requisition {
+		public int width;
+		public int height;
+		public Gtk.Requisition copy ();
+		public void free ();
+	}
+	[CCode (type_id = "GTK_TYPE_TEXT_ITER", cheader_filename = "gtk/gtk.h")]
+	public struct TextIter {
+		public void* dummy1;
+		public void* dummy2;
+		public int dummy3;
+		public int dummy4;
+		public int dummy5;
+		public int dummy6;
+		public int dummy7;
+		public int dummy8;
+		public void* dummy9;
+		public void* dummy10;
+		public int dummy11;
+		public int dummy12;
+		public int dummy13;
+		public void* dummy14;
+		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 weak Gtk.TextBuffer get_buffer ();
+		public int get_bytes_in_line ();
+		public unichar get_char ();
+		public int get_chars_in_line ();
+		public weak Gtk.TextChildAnchor get_child_anchor ();
+		public weak Pango.Language get_language ();
+		public int get_line ();
+		public int get_line_index ();
+		public int get_line_offset ();
+		public weak GLib.SList get_marks ();
+		public int get_offset ();
+		public weak Gdk.Pixbuf get_pixbuf ();
+		public weak string get_slice (Gtk.TextIter end);
+		public weak GLib.SList get_tags ();
+		public weak string get_text (Gtk.TextIter end);
+		public weak GLib.SList get_toggled_tags (bool toggled_on);
+		public int get_visible_line_index ();
+		public int get_visible_line_offset ();
+		public weak string get_visible_slice (Gtk.TextIter end);
+		public weak string get_visible_text (Gtk.TextIter end);
+		public bool has_tag (Gtk.TextTag tag);
+		public bool in_range (Gtk.TextIter start, Gtk.TextIter end);
+		public bool inside_sentence ();
+		public bool inside_word ();
+		public bool is_cursor_position ();
+		public bool is_end ();
+		public bool is_start ();
+		public void order (Gtk.TextIter second);
+		public void set_line (int line_number);
+		public void set_line_index (int byte_on_line);
+		public void set_line_offset (int char_on_line);
+		public void set_offset (int char_offset);
+		public void set_visible_line_index (int byte_on_line);
+		public void set_visible_line_offset (int char_on_line);
+		public bool starts_line ();
+		public bool starts_sentence ();
+		public bool starts_word ();
+		public bool toggles_tag (Gtk.TextTag tag);
+	}
+	[CCode (type_id = "GTK_TYPE_TREE_ITER", cheader_filename = "gtk/gtk.h")]
+	public struct TreeIter {
+		public int stamp;
+		public void* user_data;
+		public void* user_data2;
+		public void* user_data3;
+		public Gtk.TreeIter copy ();
+		public void free ();
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void CallbackMarshal (Gtk.Object object, void* data, Gtk.Arg[] args);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void ActionCallback (Gtk.Action action);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void RadioActionCallback (Gtk.Action action, Gtk.Action current);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void AboutDialogActivateLinkFunc (Gtk.AboutDialog about, string link_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static 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")]
+	public static delegate void AccelMapForeach (void* data, string accel_path, uint accel_key, Gdk.ModifierType accel_mods, bool changed);
+	[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 weak 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")]
+	public delegate void CellLayoutDataFunc (Gtk.CellLayout cell_layout, Gtk.CellRenderer cell, Gtk.TreeModel tree_model, Gtk.TreeIter iter);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void ClipboardClearFunc (Gtk.Clipboard clipboard, void* user_data_or_owner);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static 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, uchar text, ulong length);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void ClipboardTargetsReceivedFunc (Gtk.Clipboard clipboard, out Gdk.Atom atoms, int n_atoms);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void ClipboardTextReceivedFunc (Gtk.Clipboard clipboard, string text);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void ColorSelectionChangePaletteFunc (Gdk.Color colors, int n_colors);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void ColorSelectionChangePaletteWithScreenFunc (Gdk.Screen screen, Gdk.Color colors, int n_colors);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void DestroyNotify ();
+	[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")]
+	public static delegate int KeySnoopFunc (Gtk.Widget grab_widget, Gdk.EventKey event, void* func_data);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void LinkButtonUriFunc (Gtk.LinkButton button, string link_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void MenuDetachFunc (Gtk.Widget attach_widget, Gtk.Menu menu);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate void MenuPositionFunc (Gtk.Menu menu, int x, int y, bool push_in);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void ModuleDisplayInitFunc (Gdk.Display display);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate void ModuleInitFunc (int argc, string argv);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public delegate weak 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")]
+	public static 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")]
+	public static delegate void SignalFunc ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static delegate bool TextBufferDeserializeFunc (Gtk.TextBuffer register_buffer, Gtk.TextBuffer content_buffer, Gtk.TextIter iter, uchar data, ulong length, bool create_tags, void* user_data, GLib.Error 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, ulong 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 static delegate weak string TranslateFunc (string path, void* func_data);
+	[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, 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 static delegate bool TreeViewSearchEqualFunc (Gtk.TreeModel model, int column, string key, Gtk.TreeIter iter, void* search_data);
+	[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 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_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_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_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 string STOCK_ABOUT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ADD;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_APPLY;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_BOLD;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CANCEL;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CDROM;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CLEAR;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CLOSE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_COLOR_PICKER;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CONNECT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CONVERT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_COPY;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_CUT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DELETE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DIALOG_AUTHENTICATION;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DIALOG_ERROR;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DIALOG_INFO;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DIALOG_QUESTION;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DIALOG_WARNING;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DIRECTORY;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DISCARD;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DISCONNECT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DND;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_DND_MULTIPLE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_EDIT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_EXECUTE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_FILE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_FIND;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_FIND_AND_REPLACE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_FLOPPY;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_FULLSCREEN;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GOTO_BOTTOM;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GOTO_FIRST;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GOTO_LAST;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GOTO_TOP;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GO_BACK;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GO_DOWN;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GO_FORWARD;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_GO_UP;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_HARDDISK;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_HELP;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_HOME;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_INDENT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_INDEX;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_INFO;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ITALIC;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_JUMP_TO;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_JUSTIFY_CENTER;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_JUSTIFY_FILL;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_JUSTIFY_LEFT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_JUSTIFY_RIGHT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_LEAVE_FULLSCREEN;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_FORWARD;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_NEXT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_PAUSE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_PLAY;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_PREVIOUS;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_RECORD;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_REWIND;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MEDIA_STOP;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_MISSING_IMAGE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_NETWORK;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_NEW;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_NO;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_OK;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_OPEN;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ORIENTATION_LANDSCAPE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ORIENTATION_PORTRAIT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ORIENTATION_REVERSE_LANDSCAPE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ORIENTATION_REVERSE_PORTRAIT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PAGE_SETUP;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PASTE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PREFERENCES;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PRINT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PRINT_ERROR;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PRINT_PREVIEW;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PRINT_REPORT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PRINT_WARNING;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_PROPERTIES;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_QUIT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_REDO;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_REFRESH;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_REMOVE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_REVERT_TO_SAVED;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SAVE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SAVE_AS;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SELECT_ALL;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SELECT_COLOR;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SELECT_FONT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SORT_ASCENDING;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SORT_DESCENDING;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_SPELL_CHECK;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_STOP;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_STRIKETHROUGH;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_UNDELETE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_UNDERLINE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_UNDO;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_UNINDENT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_YES;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ZOOM_100;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ZOOM_FIT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ZOOM_IN;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const string STOCK_ZOOM_OUT;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const int TEXT_VIEW_PRIORITY_VALIDATE;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public const int 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 weak GLib.SList 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 weak string accelerator_get_label (uint accelerator_key, Gdk.ModifierType accelerator_mods);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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 weak 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 weak 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 weak 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, uint time_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void drag_get_data (Gtk.Widget widget, Gdk.DragContext context, Gdk.Atom target, uint time_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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 weak 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 weak 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 (Gdk.ModifierType state);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static uint get_current_event_time ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak Pango.Language get_default_language ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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 weak 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 weak 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 weak string[] argv);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void init_add (Gtk.Function function, void* data);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static bool init_check ([CCode (array_length_pos = 0.9)] ref weak string[] argv);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static bool init_with_args ([CCode (array_length_pos = 0.9)] ref weak string[] argv, string parameter_string, GLib.OptionEntry[] entries, string translation_domain) throws GLib.Error;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static uint key_snooper_install (Gtk.KeySnoopFunc snooper, void* func_data);
+	[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_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 (int argc, string[] argv);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static GLib.Quark print_error_quark ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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, void* data);
+	[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, void* data);
+	[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 weak string rc_find_module_in_path (string module_file);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak string rc_find_pixmap_in_path (Gtk.Settings settings, GLib.Scanner scanner, string pixmap_file);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak string rc_get_default_files ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak string rc_get_im_module_file ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak string rc_get_im_module_path ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak string rc_get_module_dir ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak Gtk.Style rc_get_style (Gtk.Widget widget);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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 weak 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, Gdk.Color color);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static uint rc_parse_color_full (GLib.Scanner scanner, Gtk.RcStyle style, 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, 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 weak GLib.Scanner rc_scanner_new ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void rc_set_default_files (string filenames);
+	[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, Gtk.TargetEntry[] targets, uint ntargets);
+	[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, uint time_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static bool selection_owner_set (Gtk.Widget widget, Gdk.Atom selection, uint time_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static bool selection_owner_set_for_display (Gdk.Display display, Gtk.Widget widget, Gdk.Atom selection, uint time_);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void selection_remove_all (Gtk.Widget widget);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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, uint timestamp) throws GLib.Error;
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void stock_add (Gtk.StockItem[] items);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void stock_add_static (Gtk.StockItem[] items);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak GLib.SList stock_list_ids ();
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static bool stock_lookup (string stock_id, Gtk.StockItem item);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static void stock_set_translate_func (string domain, Gtk.TranslateFunc func, void* data, Gtk.DestroyNotify notify);
+	[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, int n_targets);
+	[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 weak Gtk.Widget test_create_simple_window (string window_title, string dialog_text);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak Gtk.Widget test_create_widget (GLib.Type widget_type, ...);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak Gtk.Widget test_display_button_window (string window_title, string dialog_text);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak Gtk.Widget test_find_label (Gtk.Widget widget, string label_pattern);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak Gtk.Widget test_find_sibling (Gtk.Widget base_widget, GLib.Type widget_type);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak 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 (int argcp, out weak string argvp);
+	[CCode (cheader_filename = "gtk/gtk.h")]
+	public static weak GLib.Type[] test_list_all_types (uint n_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 weak 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 weak Gtk.TreeModel tree_model, out weak 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);
+}



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