//
// Created by Eugeny Grishul
//
// See license at http://bamelg.com/license.txt
//

using System;
using System.Runtime.InteropServices;

using Platform.Atk;
using Platform.Cairo;
using Platform.Gdk;
using Platform.Glib;
using Platform.Pango;

namespace Platform.Gtk {
	[ExternLibrary( Image = "/usr/lib64/libgtk-x11-2.0.so" )]
	public static partial struct GtkApi {
		public extern static Boolean32 gtk_accel_group_activate( GtkAccelGroup* accelGroup, uint accelQuark, GObject* acceleratable, uint accelKey, GdkModifierType accelMods );
		public extern static void gtk_accel_group_connect( GtkAccelGroup* accelGroup, uint accelKey, GdkModifierType accelMods, GtkAccelFlags accelFlags, GClosure* closure );
		public extern static void gtk_accel_group_connect_by_path( GtkAccelGroup* accelGroup, CUtf8String accelPath, GClosure* closure );
		public extern static Boolean32 gtk_accel_group_disconnect( GtkAccelGroup* accelGroup, GClosure* closure );
		public extern static Boolean32 gtk_accel_group_disconnect_key( GtkAccelGroup* accelGroup, uint accelKey, GdkModifierType accelMods );
		public extern static GtkAccelKey* gtk_accel_group_find( GtkAccelGroup* accelGroup, Functors.Func<GtkAccelKey*, GClosure*, void*, Boolean32> findFunc, void* data );
		public extern static GtkAccelGroup* gtk_accel_group_from_accel_closure( GClosure* closure );
		public extern static Boolean32 gtk_accel_group_get_is_locked( GtkAccelGroup* accelGroup );
		public extern static GdkModifierType gtk_accel_group_get_modifier_mask( GtkAccelGroup* accelGroup );
		[BackendHintReadNone]
		public extern static GType gtk_accel_group_get_type();
		public extern static void gtk_accel_group_lock( GtkAccelGroup* accelGroup );
		public extern static GtkAccelGroup* gtk_accel_group_new();
		public extern static GtkAccelGroupEntry* gtk_accel_group_query( GtkAccelGroup* accelGroup, uint accelKey, GdkModifierType accelMods, uint* nEntries );
		public extern static void gtk_accel_group_unlock( GtkAccelGroup* accelGroup );
		public extern static Boolean32 gtk_accel_groups_activate( GObject* object, uint accelKey, GdkModifierType accelMods );
		public extern static GSList* gtk_accel_groups_from_object( GObject* object );
		public extern static uint gtk_accelerator_get_default_mod_mask();
		public extern static CUtf8String gtk_accelerator_get_label( uint acceleratorKey, GdkModifierType acceleratorMods );
		public extern static CUtf8String gtk_accelerator_name( uint acceleratorKey, GdkModifierType acceleratorMods );
		public extern static void gtk_accelerator_parse( CUtf8String accelerator, uint* acceleratorKey, GdkModifierType* acceleratorMods );
		public extern static void gtk_accelerator_set_default_mod_mask( GdkModifierType defaultModMask );
		[BackendHintReadNone]
		public extern static Boolean32 gtk_accelerator_valid( uint keyval, GdkModifierType modifiers );

		[BackendHintReadNone]
		public extern static GType gtk_accel_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_anchor_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_arg_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_arrow_placement_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_arrow_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_assistant_page_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_attach_options_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_builder_error_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_button_action_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_button_box_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_buttons_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_calendar_display_options_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_accel_mode_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_mode_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_state_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_cell_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_clist_drag_pos_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_corner_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_ctree_expander_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_ctree_expansion_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_ctree_line_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_ctree_pos_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_curve_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_debug_flag_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_delete_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_dest_defaults_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_dialog_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_direction_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_drag_result_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_entry_icon_position_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_expander_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_action_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_confirmation_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_error_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_file_filter_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_icon_lookup_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_icon_size_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_icon_theme_error_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_icon_view_drop_position_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_im_preedit_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_im_status_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_image_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_justification_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_match_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_menu_direction_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_message_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_metric_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_movement_step_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_notebook_tab_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_number_up_layout_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_object_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_orientation_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_pack_direction_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_pack_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_page_orientation_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_page_set_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_path_priority_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_path_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_policy_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_position_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_preview_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_duplex_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_error_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_operation_action_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_operation_result_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_pages_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_quality_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_print_status_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_private_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_progress_bar_orientation_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_progress_bar_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_rc_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_rc_token_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_recent_chooser_error_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_recent_filter_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_recent_manager_error_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_recent_sort_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_relief_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_resize_mode_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_response_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_scroll_step_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_scroll_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_selection_mode_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_sensitivity_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_shadow_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_side_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_signal_run_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_size_group_mode_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_sort_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_spin_button_update_policy_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_spin_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_state_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_submenu_direction_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_submenu_placement_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_target_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_text_buffer_target_info_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_text_direction_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_text_search_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_text_window_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_tool_palette_drag_targets_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_toolbar_child_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_toolbar_space_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_toolbar_style_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_tree_model_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_tree_view_column_sizing_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_tree_view_drop_position_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_tree_view_grid_lines_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_tree_view_mode_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_ui_manager_item_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_unit_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_update_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_visibility_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_widget_flags_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_widget_help_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_window_position_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_window_type_get_type();
		[BackendHintReadNone]
		public extern static GType gtk_wrap_mode_get_type();

		[BackendHintReadNone]
		public extern static GType gtk_identifier_get_type();
		public extern static void* gtk_type_class( uintptr type );
		public extern static GEnumValue* gtk_type_enum_find_value( uintptr enumType, CUtf8String valueName );
		public extern static GEnumValue* gtk_type_enum_get_values( uintptr enumType );
		public extern static GFlagsValue* gtk_type_flags_find_value( uintptr flagsType, CUtf8String valueName );
		public extern static GFlagsValue* gtk_type_flags_get_values( uintptr flagsType );
		public extern static void gtk_type_init( GTypeDebugFlags debugFlags );
		public extern static void* gtk_type_new( uintptr type );
		public extern static uintptr gtk_type_unique( uintptr parentType, GtkTypeInfo* gtkinfo );

		public extern static void gtk_object_add_arg_type( CUtf8String argName, uintptr argType, uint argFlags, uint argId );
		public extern static void gtk_object_destroy( GtkObject* object );
		public extern static void* gtk_object_get_data( GtkObject* object, CUtf8String key );
		public extern static void* gtk_object_get_data_by_id( GtkObject* object, uint dataId );
		[BackendHintReadNone]
		public extern static GType gtk_object_get_type();
		public extern static void* gtk_object_get_user_data( GtkObject* object );
		public extern static GtkObject* gtk_object_ref( GtkObject* object );
		public extern static void gtk_object_remove_data( GtkObject* object, CUtf8String key );
		public extern static void gtk_object_remove_data_by_id( GtkObject* object, uint dataId );
		public extern static void gtk_object_remove_no_notify( GtkObject* object, CUtf8String key );
		public extern static void gtk_object_remove_no_notify_by_id( GtkObject* object, uint keyId );
		public extern static void gtk_object_set_data( GtkObject* object, CUtf8String key, void* data );
		public extern static void gtk_object_set_data_by_id( GtkObject* object, uint dataId, void* data );
		public extern static void gtk_object_set_data_by_id_full( GtkObject* object, uint dataId, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_object_set_data_full( GtkObject* object, CUtf8String key, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_object_set_user_data( GtkObject* object, void* data );
		public extern static void gtk_object_sink( GtkObject* object );
		public extern static void gtk_object_unref( GtkObject* object );
		public extern static void gtk_object_weakref( GtkObject* object, Functors.Action<void*> notify, void* data );
		public extern static void gtk_object_weakunref( GtkObject* object, Functors.Action<void*> notify, void* data );

		public extern static void gtk_adjustment_changed( GtkAdjustment* adjustment );
		public extern static void gtk_adjustment_clamp_page( GtkAdjustment* adjustment, double lower, double upper );
		public extern static void gtk_adjustment_configure( GtkAdjustment* adjustment, double value, double lower, double upper, double stepIncrement, double pageIncrement, double pageSize );
		public extern static double gtk_adjustment_get_lower( GtkAdjustment* adjustment );
		public extern static double gtk_adjustment_get_page_increment( GtkAdjustment* adjustment );
		public extern static double gtk_adjustment_get_page_size( GtkAdjustment* adjustment );
		public extern static double gtk_adjustment_get_step_increment( GtkAdjustment* adjustment );
		[BackendHintReadNone]
		public extern static GType gtk_adjustment_get_type();
		public extern static double gtk_adjustment_get_upper( GtkAdjustment* adjustment );
		public extern static double gtk_adjustment_get_value( GtkAdjustment* adjustment );
		public extern static GtkObject* gtk_adjustment_new( double value, double lower, double upper, double stepIncrement, double pageIncrement, double pageSize );
		public extern static void gtk_adjustment_set_lower( GtkAdjustment* adjustment, double lower );
		public extern static void gtk_adjustment_set_page_increment( GtkAdjustment* adjustment, double pageIncrement );
		public extern static void gtk_adjustment_set_page_size( GtkAdjustment* adjustment, double pageSize );
		public extern static void gtk_adjustment_set_step_increment( GtkAdjustment* adjustment, double stepIncrement );
		public extern static void gtk_adjustment_set_upper( GtkAdjustment* adjustment, double upper );
		public extern static void gtk_adjustment_set_value( GtkAdjustment* adjustment, double value );
		public extern static void gtk_adjustment_value_changed( GtkAdjustment* adjustment );

		public extern static GtkBorder* gtk_border_copy( GtkBorder* border_ );
		public extern static void gtk_border_free( GtkBorder* border_ );
		[BackendHintReadNone]
		public extern static GType gtk_border_get_type();
		public extern static GtkBorder* gtk_border_new();
		public extern static void gtk_draw_arrow( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GtkArrowType arrowType, Boolean32 fill, int x, int y, int width, int height );
		public extern static void gtk_draw_box( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_box_gap( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height, GtkPositionType gapSide, int gapX, int gapWidth );
		public extern static void gtk_draw_check( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_diamond( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_expander( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, int x, int y, GtkExpanderStyle expanderStyle );
		public extern static void gtk_draw_extension( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height, GtkPositionType gapSide );
		public extern static void gtk_draw_flat_box( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_focus( GtkStyle* style, GdkDrawable* window, int x, int y, int width, int height );
		public extern static void gtk_draw_handle( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height, GtkOrientation orientation );
		public extern static void gtk_draw_hline( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, int x1, int x2, int y );
		public extern static void gtk_draw_insertion_cursor( GtkWidget* widget, GdkDrawable* drawable, GdkRectangle* area, GdkRectangle* location, Boolean32 isPrimary, GtkTextDirection direction, Boolean32 drawArrow );
		public extern static void gtk_draw_layout( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, Boolean32 useText, int x, int y, PangoLayout* layout );
		public extern static void gtk_draw_option( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_polygon( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkPoint* points, int npoints, Boolean32 fill );
		public extern static void gtk_draw_resize_grip( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkWindowEdge edge, int x, int y, int width, int height );
		public extern static void gtk_draw_shadow( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_shadow_gap( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height, GtkPositionType gapSide, int gapX, int gapWidth );
		public extern static void gtk_draw_slider( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height, GtkOrientation orientation );
		public extern static void gtk_draw_string( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, int x, int y, CUtf8String @string );
		public extern static void gtk_draw_tab( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, int x, int y, int width, int height );
		public extern static void gtk_draw_vline( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, int y1_, int y2_, int x );
		public extern static void gtk_paint_arrow( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, GtkArrowType arrowType, Boolean32 fill, int x, int y, int width, int height );
		public extern static void gtk_paint_box( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_box_gap( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height, GtkPositionType gapSide, int gapX, int gapWidth );
		public extern static void gtk_paint_check( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_diamond( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_expander( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, GtkExpanderStyle expanderStyle );
		public extern static void gtk_paint_extension( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height, GtkPositionType gapSide );
		public extern static void gtk_paint_flat_box( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_focus( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_handle( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height, GtkOrientation orientation );
		public extern static void gtk_paint_hline( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x1, int x2, int y );
		public extern static void gtk_paint_layout( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, Boolean32 useText, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, PangoLayout* layout );
		public extern static void gtk_paint_option( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_polygon( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, GdkPoint* points, int nPoints, Boolean32 fill );
		public extern static void gtk_paint_resize_grip( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, GdkWindowEdge edge, int x, int y, int width, int height );
		public extern static void gtk_paint_shadow( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_shadow_gap( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height, GtkPositionType gapSide, int gapX, int gapWidth );
		public extern static void gtk_paint_slider( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height, GtkOrientation orientation );
		public extern static void gtk_paint_spinner( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, uint step, int x, int y, int width, int height );
		public extern static void gtk_paint_string( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, sbyte* @string );
		public extern static void gtk_paint_tab( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GtkShadowType shadowType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int x, int y, int width, int height );
		public extern static void gtk_paint_vline( GtkStyle* style, GdkDrawable* window, GtkStateType stateType, GdkRectangle* area, GtkWidget* widget, sbyte* detail, int y1_, int y2_, int x );
		public extern static void gtk_style_apply_default_background( GtkStyle* style, GdkDrawable* window, Boolean32 setBg, GtkStateType stateType, GdkRectangle* area, int x, int y, int width, int height );
		public extern static GtkStyle* gtk_style_attach( GtkStyle* style, GdkDrawable* window );
		public extern static GtkStyle* gtk_style_copy( GtkStyle* style );
		public extern static void gtk_style_detach( GtkStyle* style );
		public extern static GdkFont* gtk_style_get_font( GtkStyle* style );
		public extern static void gtk_style_get_style_property( GtkStyle* style, uintptr widgetType, CUtf8String propertyName, GValue* value );
		[BackendHintReadNone]
		public extern static GType gtk_style_get_type();
		public extern static void gtk_style_get_valist( GtkStyle* style, uintptr widgetType, CUtf8String firstPropertyName, sbyte* varArgs );
		public extern static Boolean32 gtk_style_lookup_color( GtkStyle* style, CUtf8String colorName, GdkColor* color );
		public extern static GtkIconSet* gtk_style_lookup_icon_set( GtkStyle* style, CUtf8String stockId );
		public extern static GtkStyle* gtk_style_new();
		public extern static GtkStyle* gtk_style_ref( GtkStyle* style );
		public extern static GdkPixbuf* gtk_style_render_icon( GtkStyle* style, GtkIconSource* source, GtkTextDirection direction, GtkStateType state, GtkIconSize size, GtkWidget* widget, CUtf8String detail );
		public extern static void gtk_style_set_background( GtkStyle* style, GdkDrawable* window, GtkStateType stateType );
		public extern static void gtk_style_set_font( GtkStyle* style, GdkFont* font );
		public extern static void gtk_style_unref( GtkStyle* style );

		public extern static void gtk_rc_add_class_style( GtkRcStyle* rcStyle, CUtf8String pattern );
		public extern static void gtk_rc_add_default_file( CUtf8String filename );
		public extern static void gtk_rc_add_widget_class_style( GtkRcStyle* rcStyle, CUtf8String pattern );
		public extern static void gtk_rc_add_widget_name_style( GtkRcStyle* rcStyle, CUtf8String pattern );
		public extern static CUtf8String gtk_rc_find_module_in_path( CUtf8String moduleFile );
		public extern static CUtf8String gtk_rc_find_pixmap_in_path( GtkSettings* settings, GScanner* scanner, CUtf8String pixmapFile );
		public extern static sbyte** gtk_rc_get_default_files();
		public extern static CUtf8String gtk_rc_get_im_module_file();
		public extern static CUtf8String gtk_rc_get_im_module_path();
		public extern static CUtf8String gtk_rc_get_module_dir();
		public extern static GtkStyle* gtk_rc_get_style( GtkWidget* widget );
		public extern static GtkStyle* gtk_rc_get_style_by_paths( GtkSettings* settings, CUtf8String widgetPath, CUtf8String classPath, uintptr type );
		public extern static CUtf8String gtk_rc_get_theme_dir();
		public extern static void gtk_rc_parse( CUtf8String filename );
		public extern static uint gtk_rc_parse_color( GScanner* scanner, GdkColor* color );
		public extern static uint gtk_rc_parse_color_full( GScanner* scanner, GtkRcStyle* style, GdkColor* color );
		public extern static uint gtk_rc_parse_priority( GScanner* scanner, GtkPathPriorityType* priority );
		public extern static uint gtk_rc_parse_state( GScanner* scanner, GtkStateType* state );
		public extern static void gtk_rc_parse_string( CUtf8String rcString );
		public extern static Boolean32 gtk_rc_reparse_all();
		public extern static Boolean32 gtk_rc_reparse_all_for_settings( GtkSettings* settings, Boolean32 forceLoad );
		public extern static void gtk_rc_reset_styles( GtkSettings* settings );
		public extern static GScanner* gtk_rc_scanner_new();
		public extern static void gtk_rc_set_default_files( sbyte** filenames );
		public extern static GtkRcStyle* gtk_rc_style_copy( GtkRcStyle* orig );
		[BackendHintReadNone]
		public extern static GType gtk_rc_style_get_type();
		public extern static GtkRcStyle* gtk_rc_style_new();
		public extern static void gtk_rc_style_ref( GtkRcStyle* rcStyle );
		public extern static void gtk_rc_style_unref( GtkRcStyle* rcStyle );

		public extern static Boolean32 gtk_rc_property_parse_border( GParamSpec* pspec, GString* gstring, GValue* propertyValue );
		public extern static Boolean32 gtk_rc_property_parse_color( GParamSpec* pspec, GString* gstring, GValue* propertyValue );
		public extern static Boolean32 gtk_rc_property_parse_enum( GParamSpec* pspec, GString* gstring, GValue* propertyValue );
		public extern static Boolean32 gtk_rc_property_parse_flags( GParamSpec* pspec, GString* gstring, GValue* propertyValue );
		public extern static Boolean32 gtk_rc_property_parse_requisition( GParamSpec* pspec, GString* gstring, GValue* propertyValue );
		public extern static GtkSettings* gtk_settings_get_default();
		public extern static GtkSettings* gtk_settings_get_for_screen( GdkScreen* screen );
		[BackendHintReadNone]
		public extern static GType gtk_settings_get_type();
		public extern static void gtk_settings_install_property( GParamSpec* pspec );
		public extern static void gtk_settings_install_property_parser( GParamSpec* pspec, Functors.Func<GParamSpec*, GString*, GValue*, Boolean32> parser );
		public extern static void gtk_settings_set_double_property( GtkSettings* settings, CUtf8String name, double vDouble, CUtf8String origin );
		public extern static void gtk_settings_set_long_property( GtkSettings* settings, CUtf8String name, intptr vLong, CUtf8String origin );
		public extern static void gtk_settings_set_property_value( GtkSettings* settings, CUtf8String name, GtkSettingsValue* svalue );
		public extern static void gtk_settings_set_string_property( GtkSettings* settings, CUtf8String name, CUtf8String vString, CUtf8String origin );

		public extern static GtkRequisition* gtk_requisition_copy( GtkRequisition* requisition );
		public extern static void gtk_requisition_free( GtkRequisition* requisition );
		[BackendHintReadNone]
		public extern static GType gtk_requisition_get_type();
		public extern static Boolean32 gtk_widget_activate( GtkWidget* widget );
		public extern static void gtk_widget_add_accelerator( GtkWidget* widget, CUtf8String accelSignal, GtkAccelGroup* accelGroup, uint accelKey, GdkModifierType accelMods, GtkAccelFlags accelFlags );
		public extern static void gtk_widget_add_events( GtkWidget* widget, GdkEventMask events );
		public extern static void gtk_widget_add_mnemonic_label( GtkWidget* widget, GtkWidget* label );
		public extern static Boolean32 gtk_widget_can_activate_accel( GtkWidget* widget, uint signalId );
		public extern static Boolean32 gtk_widget_child_focus( GtkWidget* widget, GtkDirectionType direction );
		public extern static void gtk_widget_child_notify( GtkWidget* widget, CUtf8String childProperty );
		public extern static GParamSpec* gtk_widget_class_find_style_property( GtkWidget.Class* klass, CUtf8String propertyName );
		public extern static void gtk_widget_class_install_style_property( GtkWidget.Class* klass, GParamSpec* pspec );
		public extern static void gtk_widget_class_install_style_property_parser( GtkWidget.Class* klass, GParamSpec* pspec, Functors.Func<GParamSpec*, GString*, GValue*, Boolean32> parser );
		public extern static GParamSpec** gtk_widget_class_list_style_properties( GtkWidget.Class* klass, uint* nProperties );
		public extern static void gtk_widget_class_path( GtkWidget* widget, uint* pathLength, sbyte** path, sbyte** pathReversed );
		public extern static PangoContext* gtk_widget_create_pango_context( GtkWidget* widget );
		public extern static PangoLayout* gtk_widget_create_pango_layout( GtkWidget* widget, CUtf8String text );
		public extern static void gtk_widget_destroy( GtkWidget* widget );
		public extern static void gtk_widget_destroyed( GtkWidget* widget, GtkWidget** widgetPointer );
		public extern static void gtk_widget_draw( GtkWidget* widget, GdkRectangle* area );
		public extern static void gtk_widget_ensure_style( GtkWidget* widget );
		public extern static void gtk_widget_error_bell( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_event( GtkWidget* widget, GdkEvent* @event );
		public extern static void gtk_widget_freeze_child_notify( GtkWidget* widget );
		public extern static AtkObject* gtk_widget_get_accessible( GtkWidget* widget );
		public extern static void gtk_widget_get_allocation( GtkWidget* widget, GdkRectangle* allocation );
		public extern static GtkWidget* gtk_widget_get_ancestor( GtkWidget* widget, uintptr widgetType );
		public extern static Boolean32 gtk_widget_get_app_paintable( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_can_default( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_can_focus( GtkWidget* widget );
		public extern static void gtk_widget_get_child_requisition( GtkWidget* widget, GtkRequisition* requisition );
		public extern static Boolean32 gtk_widget_get_child_visible( GtkWidget* widget );
		public extern static GtkClipboard* gtk_widget_get_clipboard( GtkWidget* widget, GdkAtom* selection );
		public extern static GdkColormap* gtk_widget_get_colormap( GtkWidget* widget );
		public extern static CUtf8String gtk_widget_get_composite_name( GtkWidget* widget );
		public extern static GdkColormap* gtk_widget_get_default_colormap();
		public extern static GtkTextDirection gtk_widget_get_default_direction();
		public extern static GtkStyle* gtk_widget_get_default_style();
		public extern static GdkVisual* gtk_widget_get_default_visual();
		public extern static GtkTextDirection gtk_widget_get_direction( GtkWidget* widget );
		public extern static GdkDisplay* gtk_widget_get_display( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_double_buffered( GtkWidget* widget );
		public extern static GdkEventMask gtk_widget_get_events( GtkWidget* widget );
		public extern static GdkExtensionMode gtk_widget_get_extension_events( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_has_tooltip( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_has_window( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_mapped( GtkWidget* widget );
		public extern static GtkRcStyle* gtk_widget_get_modifier_style( GtkWidget* widget );
		public extern static CUtf8String gtk_widget_get_name( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_no_show_all( GtkWidget* widget );
		public extern static PangoContext* gtk_widget_get_pango_context( GtkWidget* widget );
		public extern static GtkWidget* gtk_widget_get_parent( GtkWidget* widget );
		public extern static GdkDrawable* gtk_widget_get_parent_window( GtkWidget* widget );
		public extern static void gtk_widget_get_pointer( GtkWidget* widget, int* x, int* y );
		public extern static Boolean32 gtk_widget_get_realized( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_receives_default( GtkWidget* widget );
		public extern static void gtk_widget_get_requisition( GtkWidget* widget, GtkRequisition* requisition );
		public extern static GdkDrawable* gtk_widget_get_root_window( GtkWidget* widget );
		public extern static GdkScreen* gtk_widget_get_screen( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_get_sensitive( GtkWidget* widget );
		public extern static GtkSettings* gtk_widget_get_settings( GtkWidget* widget );
		public extern static void gtk_widget_get_size_request( GtkWidget* widget, int* width, int* height );
		public extern static GdkDrawable* gtk_widget_get_snapshot( GtkWidget* widget, GdkRectangle* clipRect );
		public extern static GtkStateType gtk_widget_get_state( GtkWidget* widget );
		public extern static GtkStyle* gtk_widget_get_style( GtkWidget* widget );
		public extern static CUtf8String gtk_widget_get_tooltip_markup( GtkWidget* widget );
		public extern static CUtf8String gtk_widget_get_tooltip_text( GtkWidget* widget );
		public extern static GtkWindow* gtk_widget_get_tooltip_window( GtkWidget* widget );
		public extern static GtkWidget* gtk_widget_get_toplevel( GtkWidget* widget );
		[BackendHintReadNone]
		public extern static GType gtk_widget_get_type();
		public extern static Boolean32 gtk_widget_get_visible( GtkWidget* widget );
		public extern static GdkVisual* gtk_widget_get_visual( GtkWidget* widget );
		public extern static GdkDrawable* gtk_widget_get_window( GtkWidget* widget );
		public extern static void gtk_widget_grab_default( GtkWidget* widget );
		public extern static void gtk_widget_grab_focus( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_has_default( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_has_focus( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_has_grab( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_has_rc_style( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_has_screen( GtkWidget* widget );
		public extern static void gtk_widget_hide( GtkWidget* widget );
		public extern static void gtk_widget_hide_all( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_hide_on_delete( GtkWidget* widget );
		public extern static void gtk_widget_input_shape_combine_mask( GtkWidget* widget, GdkDrawable* shapeMask, int offsetX, int offsetY );
		public extern static Boolean32 gtk_widget_intersect( GtkWidget* widget, GdkRectangle* area, GdkRectangle* intersection );
		public extern static Boolean32 gtk_widget_is_ancestor( GtkWidget* widget, GtkWidget* ancestor );
		public extern static Boolean32 gtk_widget_is_composited( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_is_drawable( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_is_focus( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_is_sensitive( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_is_toplevel( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_keynav_failed( GtkWidget* widget, GtkDirectionType direction );
		public extern static GList* gtk_widget_list_accel_closures( GtkWidget* widget );
		public extern static GList* gtk_widget_list_mnemonic_labels( GtkWidget* widget );
		public extern static void gtk_widget_map( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_mnemonic_activate( GtkWidget* widget, Boolean32 groupCycling );
		public extern static void gtk_widget_modify_base( GtkWidget* widget, GtkStateType state, GdkColor& color );
		public extern static void gtk_widget_modify_bg( GtkWidget* widget, GtkStateType state, GdkColor& color );
		public extern static void gtk_widget_modify_cursor( GtkWidget* widget, GdkColor& primary, GdkColor& secondary );
		public extern static void gtk_widget_modify_fg( GtkWidget* widget, GtkStateType state, GdkColor& color );
		public extern static void gtk_widget_modify_font( GtkWidget* widget, PangoFontDescription* fontDesc );
		public extern static void gtk_widget_modify_style( GtkWidget* widget, GtkRcStyle* style );
		public extern static void gtk_widget_modify_text( GtkWidget* widget, GtkStateType state, GdkColor& color );
		public extern static void gtk_widget_path( GtkWidget* widget, uint* pathLength, sbyte** path, sbyte** pathReversed );
		public extern static void gtk_widget_pop_colormap();
		public extern static void gtk_widget_pop_composite_child();
		public extern static void gtk_widget_push_colormap( GdkColormap* cmap );
		public extern static void gtk_widget_push_composite_child();
		public extern static void gtk_widget_queue_clear( GtkWidget* widget );
		public extern static void gtk_widget_queue_clear_area( GtkWidget* widget, int x, int y, int width, int height );
		public extern static void gtk_widget_queue_draw( GtkWidget* widget );
		public extern static void gtk_widget_queue_draw_area( GtkWidget* widget, int x, int y, int width, int height );
		public extern static void gtk_widget_queue_resize( GtkWidget* widget );
		public extern static void gtk_widget_queue_resize_no_redraw( GtkWidget* widget );
		public extern static void gtk_widget_realize( GtkWidget* widget );
		public extern static GtkWidget* gtk_widget_ref( GtkWidget* widget );
		public extern static GdkRegion* gtk_widget_region_intersect( GtkWidget* widget, GdkRegion* region );
		public extern static Boolean32 gtk_widget_remove_accelerator( GtkWidget* widget, GtkAccelGroup* accelGroup, uint accelKey, GdkModifierType accelMods );
		public extern static void gtk_widget_remove_mnemonic_label( GtkWidget* widget, GtkWidget* label );
		public extern static GdkPixbuf* gtk_widget_render_icon( GtkWidget* widget, CUtf8String stockId, GtkIconSize size, CUtf8String detail );
		public extern static void gtk_widget_reparent( GtkWidget* widget, GtkWidget* newParent );
		public extern static void gtk_widget_reset_rc_styles( GtkWidget* widget );
		public extern static void gtk_widget_reset_shapes( GtkWidget* widget );
		public extern static int gtk_widget_send_expose( GtkWidget* widget, GdkEvent* @event );
		public extern static Boolean32 gtk_widget_send_focus_change( GtkWidget* widget, GdkEvent* @event );
		public extern static void gtk_widget_set_accel_path( GtkWidget* widget, CUtf8String accelPath, GtkAccelGroup* accelGroup );
		public extern static void gtk_widget_set_allocation( GtkWidget* widget, GdkRectangle* allocation );
		public extern static void gtk_widget_set_app_paintable( GtkWidget* widget, Boolean32 appPaintable );
		public extern static void gtk_widget_set_can_default( GtkWidget* widget, Boolean32 canDefault );
		public extern static void gtk_widget_set_can_focus( GtkWidget* widget, Boolean32 canFocus );
		public extern static void gtk_widget_set_child_visible( GtkWidget* widget, Boolean32 isVisible );
		public extern static void gtk_widget_set_colormap( GtkWidget* widget, GdkColormap* colormap );
		public extern static void gtk_widget_set_composite_name( GtkWidget* widget, CUtf8String name );
		public extern static void gtk_widget_set_default_colormap( GdkColormap* colormap );
		public extern static void gtk_widget_set_default_direction( GtkTextDirection dir );
		public extern static void gtk_widget_set_direction( GtkWidget* widget, GtkTextDirection dir );
		public extern static void gtk_widget_set_double_buffered( GtkWidget* widget, Boolean32 doubleBuffered );
		public extern static void gtk_widget_set_events( GtkWidget* widget, GdkEventMask events );
		public extern static void gtk_widget_set_extension_events( GtkWidget* widget, GdkExtensionMode mode );
		public extern static void gtk_widget_set_has_tooltip( GtkWidget* widget, Boolean32 hasTooltip );
		public extern static void gtk_widget_set_has_window( GtkWidget* widget, Boolean32 hasWindow );
		public extern static void gtk_widget_set_mapped( GtkWidget* widget, Boolean32 mapped );
		public extern static void gtk_widget_set_name( GtkWidget* widget, CUtf8String name );
		public extern static void gtk_widget_set_no_show_all( GtkWidget* widget, Boolean32 noShowAll );
		public extern static void gtk_widget_set_parent( GtkWidget* widget, GtkWidget* parent );
		public extern static void gtk_widget_set_parent_window( GtkWidget* widget, GdkDrawable* parentWindow );
		public extern static void gtk_widget_set_realized( GtkWidget* widget, Boolean32 realized );
		public extern static void gtk_widget_set_receives_default( GtkWidget* widget, Boolean32 receivesDefault );
		public extern static void gtk_widget_set_redraw_on_allocate( GtkWidget* widget, Boolean32 redrawOnAllocate );
		public extern static Boolean32 gtk_widget_set_scroll_adjustments( GtkWidget* widget, GtkAdjustment* hadjustment, GtkAdjustment* vadjustment );
		public extern static void gtk_widget_set_sensitive( GtkWidget* widget, Boolean32 sensitive );
		public extern static void gtk_widget_set_size_request( GtkWidget* widget, int width, int height );
		public extern static void gtk_widget_set_state( GtkWidget* widget, GtkStateType state );
		public extern static void gtk_widget_set_style( GtkWidget* widget, GtkStyle* style );
		public extern static void gtk_widget_set_tooltip_markup( GtkWidget* widget, CUtf8String markup );
		public extern static void gtk_widget_set_tooltip_text( GtkWidget* widget, CUtf8String text );
		public extern static void gtk_widget_set_tooltip_window( GtkWidget* widget, GtkWindow* customWindow );
		public extern static void gtk_widget_set_uposition( GtkWidget* widget, int x, int y );
		public extern static void gtk_widget_set_usize( GtkWidget* widget, int width, int height );
		public extern static void gtk_widget_set_visible( GtkWidget* widget, Boolean32 visible );
		public extern static void gtk_widget_set_window( GtkWidget* widget, GdkDrawable* window );
		public extern static void gtk_widget_shape_combine_mask( GtkWidget* widget, GdkDrawable* shapeMask, int offsetX, int offsetY );
		public extern static void gtk_widget_show( GtkWidget* widget );
		public extern static void gtk_widget_show_all( GtkWidget* widget );
		public extern static void gtk_widget_show_now( GtkWidget* widget );
		public extern static void gtk_widget_size_allocate( GtkWidget* widget, GdkRectangle* allocation );
		public extern static void gtk_widget_size_request( GtkWidget* widget, GtkRequisition* requisition );
		public extern static void gtk_widget_style_attach( GtkWidget* style );
		public extern static void gtk_widget_style_get_property( GtkWidget* widget, CUtf8String propertyName, GValue* value );
		public extern static void gtk_widget_style_get_valist( GtkWidget* widget, CUtf8String firstPropertyName, sbyte* varArgs );
		public extern static void gtk_widget_thaw_child_notify( GtkWidget* widget );
		public extern static Boolean32 gtk_widget_translate_coordinates( GtkWidget* srcWidget, GtkWidget* destWidget, int srcX, int srcY, int* destX, int* destY );
		public extern static void gtk_widget_trigger_tooltip_query( GtkWidget* widget );
		public extern static void gtk_widget_unmap( GtkWidget* widget );
		public extern static void gtk_widget_unparent( GtkWidget* widget );
		public extern static void gtk_widget_unrealize( GtkWidget* widget );
		public extern static void gtk_widget_unref( GtkWidget* widget );

		public extern static void gtk_container_add( GtkContainer* container, GtkWidget* widget );
		public extern static void gtk_container_check_resize( GtkContainer* container );
		public extern static void gtk_container_child_get_property( GtkContainer* container, GtkWidget* child, CUtf8String propertyName, GValue* value );
		public extern static void gtk_container_child_get_valist( GtkContainer* container, GtkWidget* child, CUtf8String firstPropertyName, sbyte* varArgs );
		public extern static void gtk_container_child_set_property( GtkContainer* container, GtkWidget* child, CUtf8String propertyName, GValue* value );
		public extern static void gtk_container_child_set_valist( GtkContainer* container, GtkWidget* child, CUtf8String firstPropertyName, sbyte* varArgs );
		public extern static uintptr gtk_container_child_type( GtkContainer* container );
		public extern static GParamSpec* gtk_container_class_find_child_property( GObject.Class* cclass, CUtf8String propertyName );
		public extern static void gtk_container_class_install_child_property( GtkContainer.Class* cclass, uint propertyId, GParamSpec* pspec );
		public extern static GParamSpec** gtk_container_class_list_child_properties( GObject.Class* cclass, uint* nProperties );
		public extern static void gtk_container_forall( GtkContainer* container, Functors.Action<GtkWidget*, void*> callback, void* callbackData );
		public extern static void gtk_container_foreach( GtkContainer* container, Functors.Action<GtkWidget*, void*> callback, void* callbackData );
		public extern static void gtk_container_foreach_full( GtkContainer* container, Functors.Action<GtkWidget*, void*> callback, Functors.Action<GtkObject*, void*, uint, GtkArg*> marshal, void* callbackData, Functors.Action<void*> notify );
		public extern static uint gtk_container_get_border_width( GtkContainer* container );
		public extern static GList* gtk_container_get_children( GtkContainer* container );
		public extern static Boolean32 gtk_container_get_focus_chain( GtkContainer* container, GList** focusableWidgets );
		public extern static GtkWidget* gtk_container_get_focus_child( GtkContainer* container );
		public extern static GtkAdjustment* gtk_container_get_focus_hadjustment( GtkContainer* container );
		public extern static GtkAdjustment* gtk_container_get_focus_vadjustment( GtkContainer* container );
		public extern static GtkResizeMode gtk_container_get_resize_mode( GtkContainer* container );
		[BackendHintReadNone]
		public extern static GType gtk_container_get_type();
		public extern static void gtk_container_propagate_expose( GtkContainer* container, GtkWidget* child, GdkEventExpose* @event );
		public extern static void gtk_container_remove( GtkContainer* container, GtkWidget* widget );
		public extern static void gtk_container_resize_children( GtkContainer* container );
		public extern static void gtk_container_set_border_width( GtkContainer* container, uint borderWidth );
		public extern static void gtk_container_set_focus_chain( GtkContainer* container, GList* focusableWidgets );
		public extern static void gtk_container_set_focus_child( GtkContainer* container, GtkWidget* child );
		public extern static void gtk_container_set_focus_hadjustment( GtkContainer* container, GtkAdjustment* adjustment );
		public extern static void gtk_container_set_focus_vadjustment( GtkContainer* container, GtkAdjustment* adjustment );
		public extern static void gtk_container_set_reallocate_redraws( GtkContainer* container, Boolean32 needsRedraws );
		public extern static void gtk_container_set_resize_mode( GtkContainer* container, GtkResizeMode resizeMode );
		public extern static void gtk_container_unset_focus_chain( GtkContainer* container );

		public extern static GtkWidget* gtk_bin_get_child( GtkBin* bin );
		[BackendHintReadNone]
		public extern static GType gtk_bin_get_type();

		public extern static Boolean32 gtk_window_activate_default( GtkWindow* window );
		public extern static Boolean32 gtk_window_activate_focus( GtkWindow* window );
		public extern static Boolean32 gtk_window_activate_key( GtkWindow* window, GdkEventKey* @event );
		public extern static void gtk_window_add_accel_group( GtkWindow* window, GtkAccelGroup* accelGroup );
		public extern static void gtk_window_add_embedded_xid( GtkWindow* window, uint xid );
		public extern static void gtk_window_add_mnemonic( GtkWindow* window, uint keyval, GtkWidget* target );
		public extern static void gtk_window_begin_move_drag( GtkWindow* window, int button, int rootX, int rootY, uint timestamp );
		public extern static void gtk_window_begin_resize_drag( GtkWindow* window, GdkWindowEdge edge, int button, int rootX, int rootY, uint timestamp );
		public extern static void gtk_window_deiconify( GtkWindow* window );
		public extern static void gtk_window_fullscreen( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_accept_focus( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_decorated( GtkWindow* window );
		public extern static GList* gtk_window_get_default_icon_list();
		public extern static sbyte* gtk_window_get_default_icon_name();
		public extern static void gtk_window_get_default_size( GtkWindow* window, int* width, int* height );
		public extern static GtkWidget* gtk_window_get_default_widget( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_deletable( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_destroy_with_parent( GtkWindow* window );
		public extern static GtkWidget* gtk_window_get_focus( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_focus_on_map( GtkWindow* window );
		public extern static void gtk_window_get_frame_dimensions( GtkWindow* window, int* left, int* top, int* right, int* bottom );
		public extern static GdkGravity gtk_window_get_gravity( GtkWindow* window );
		public extern static GtkWindowGroup* gtk_window_get_group( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_has_frame( GtkWindow* window );
		public extern static GdkPixbuf* gtk_window_get_icon( GtkWindow* window );
		public extern static GList* gtk_window_get_icon_list( GtkWindow* window );
		public extern static CUtf8String gtk_window_get_icon_name( GtkWindow* window );
		public extern static GdkModifierType gtk_window_get_mnemonic_modifier( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_mnemonics_visible( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_modal( GtkWindow* window );
		public extern static double gtk_window_get_opacity( GtkWindow* window );
		public extern static void gtk_window_get_position( GtkWindow* window, int* rootX, int* rootY );
		public extern static Boolean32 gtk_window_get_resizable( GtkWindow* window );
		public extern static CUtf8String gtk_window_get_role( GtkWindow* window );
		public extern static GdkScreen* gtk_window_get_screen( GtkWindow* window );
		public extern static void gtk_window_get_size( GtkWindow* window, int* width, int* height );
		public extern static Boolean32 gtk_window_get_skip_pager_hint( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_skip_taskbar_hint( GtkWindow* window );
		public extern static CUtf8String gtk_window_get_title( GtkWindow* window );
		public extern static GtkWindow* gtk_window_get_transient_for( GtkWindow* window );
		[BackendHintReadNone]
		public extern static GType gtk_window_get_type();
		public extern static GdkWindowTypeHint gtk_window_get_type_hint( GtkWindow* window );
		public extern static Boolean32 gtk_window_get_urgency_hint( GtkWindow* window );
		public extern static GtkWindowType gtk_window_get_window_type( GtkWindow* window );
		public extern static void gtk_window_group_add_window( GtkWindowGroup* windowGroup, GtkWindow* window );
		public extern static GtkWidget* gtk_window_group_get_current_grab( GtkWindowGroup* windowGroup );
		[BackendHintReadNone]
		public extern static GType gtk_window_group_get_type();
		public extern static GList* gtk_window_group_list_windows( GtkWindowGroup* windowGroup );
		public extern static GtkWindowGroup* gtk_window_group_new();
		public extern static void gtk_window_group_remove_window( GtkWindowGroup* windowGroup, GtkWindow* window );
		public extern static Boolean32 gtk_window_has_group( GtkWindow* window );
		public extern static Boolean32 gtk_window_has_toplevel_focus( GtkWindow* window );
		public extern static void gtk_window_iconify( GtkWindow* window );
		public extern static Boolean32 gtk_window_is_active( GtkWindow* window );
		public extern static GList* gtk_window_list_toplevels();
		public extern static void gtk_window_maximize( GtkWindow* window );
		public extern static Boolean32 gtk_window_mnemonic_activate( GtkWindow* window, uint keyval, GdkModifierType modifier );
		public extern static void gtk_window_move( GtkWindow* window, int x, int y );
		public extern static GtkWindow* gtk_window_new( GtkWindowType type );
		public extern static Boolean32 gtk_window_parse_geometry( GtkWindow* window, sbyte* geometry );
		public extern static void gtk_window_present( GtkWindow* window );
		public extern static void gtk_window_present_with_time( GtkWindow* window, uint timestamp );
		public extern static Boolean32 gtk_window_propagate_key_event( GtkWindow* window, GdkEventKey* @event );
		public extern static void gtk_window_remove_accel_group( GtkWindow* window, GtkAccelGroup* accelGroup );
		public extern static void gtk_window_remove_embedded_xid( GtkWindow* window, uint xid );
		public extern static void gtk_window_remove_mnemonic( GtkWindow* window, uint keyval, GtkWidget* target );
		public extern static void gtk_window_reshow_with_initial_size( GtkWindow* window );
		public extern static void gtk_window_resize( GtkWindow* window, int width, int height );
		public extern static void gtk_window_set_accept_focus( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_auto_startup_notification( Boolean32 setting );
		public extern static void gtk_window_set_decorated( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_default( GtkWindow* window, GtkWidget* defaultWidget );
		public extern static void gtk_window_set_default_icon( GdkPixbuf* icon );
		public extern static Boolean32 gtk_window_set_default_icon_from_file( CUtf8String filename, GError** err );
		public extern static void gtk_window_set_default_icon_list( GList* list );
		public extern static void gtk_window_set_default_icon_name( CUtf8String name );
		public extern static void gtk_window_set_default_size( GtkWindow* window, int width, int height );
		public extern static void gtk_window_set_deletable( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_destroy_with_parent( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_focus( GtkWindow* window, GtkWidget* focus );
		public extern static void gtk_window_set_focus_on_map( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_frame_dimensions( GtkWindow* window, int left, int top, int right, int bottom );
		public extern static void gtk_window_set_geometry_hints( GtkWindow* window, GtkWidget* geometryWidget, GdkGeometry* geometry, GdkWindowHints geomMask );
		public extern static void gtk_window_set_gravity( GtkWindow* window, GdkGravity gravity );
		public extern static void gtk_window_set_has_frame( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_icon( GtkWindow* window, GdkPixbuf* icon );
		public extern static Boolean32 gtk_window_set_icon_from_file( GtkWindow* window, CUtf8String filename, GError** err );
		public extern static void gtk_window_set_icon_list( GtkWindow* window, GList* list );
		public extern static void gtk_window_set_icon_name( GtkWindow* window, CUtf8String name );
		public extern static void gtk_window_set_keep_above( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_keep_below( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_mnemonic_modifier( GtkWindow* window, GdkModifierType modifier );
		public extern static void gtk_window_set_mnemonics_visible( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_modal( GtkWindow* window, Boolean32 modal );
		public extern static void gtk_window_set_opacity( GtkWindow* window, double opacity );
		public extern static void gtk_window_set_policy( GtkWindow* window, int allowShrink, int allowGrow, int autoShrink );
		public extern static void gtk_window_set_position( GtkWindow* window, GtkWindowPosition position );
		public extern static void gtk_window_set_resizable( GtkWindow* window, Boolean32 resizable );
		public extern static void gtk_window_set_role( GtkWindow* window, CUtf8String role );
		public extern static void gtk_window_set_screen( GtkWindow* window, GdkScreen* screen );
		public extern static void gtk_window_set_skip_pager_hint( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_skip_taskbar_hint( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_startup_id( GtkWindow* window, CUtf8String startupId );
		public extern static void gtk_window_set_title( GtkWindow* window, CUtf8String title );
		public extern static void gtk_window_set_transient_for( GtkWindow* window, GtkWindow* parent );
		public extern static void gtk_window_set_type_hint( GtkWindow* window, GdkWindowTypeHint hint );
		public extern static void gtk_window_set_urgency_hint( GtkWindow* window, Boolean32 setting );
		public extern static void gtk_window_set_wmclass( GtkWindow* window, CUtf8String wmclassName, CUtf8String wmclassClass );
		public extern static void gtk_window_stick( GtkWindow* window );
		public extern static void gtk_window_unfullscreen( GtkWindow* window );
		public extern static void gtk_window_unmaximize( GtkWindow* window );
		public extern static void gtk_window_unstick( GtkWindow* window );

		public extern static Boolean32 gtk_alternative_dialog_button_order( GdkScreen* screen );
		public extern static void gtk_dialog_add_action_widget( GtkDialog* dialog, GtkWidget* child, int responseId );
		public extern static GtkWidget* gtk_dialog_add_button( GtkDialog* dialog, CUtf8String buttonText, int responseId );
		public extern static GtkWidget* gtk_dialog_get_action_area( GtkDialog* dialog );
		public extern static GtkWidget* gtk_dialog_get_content_area( GtkDialog* dialog );
		public extern static Boolean32 gtk_dialog_get_has_separator( GtkDialog* dialog );
		public extern static int gtk_dialog_get_response_for_widget( GtkDialog* dialog, GtkWidget* widget );
		[BackendHintReadNone]
		public extern static GType gtk_dialog_get_type();
		public extern static GtkWidget* gtk_dialog_get_widget_for_response( GtkDialog* dialog, int responseId );
		public extern static GtkWidget* gtk_dialog_new();
		public extern static void gtk_dialog_response( GtkDialog* dialog, int responseId );
		public extern static int gtk_dialog_run( GtkDialog* dialog );
		public extern static void gtk_dialog_set_alternative_button_order_from_array( GtkDialog* dialog, int nParams, int* newOrder );
		public extern static void gtk_dialog_set_default_response( GtkDialog* dialog, int responseId );
		public extern static void gtk_dialog_set_has_separator( GtkDialog* dialog, Boolean32 setting );
		public extern static void gtk_dialog_set_response_sensitive( GtkDialog* dialog, int responseId, Boolean32 setting );

		public extern static sbyte** gtk_about_dialog_get_artists( GtkAboutDialog* about );
		public extern static sbyte** gtk_about_dialog_get_authors( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_comments( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_copyright( GtkAboutDialog* about );
		public extern static sbyte** gtk_about_dialog_get_documenters( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_license( GtkAboutDialog* about );
		public extern static GdkPixbuf* gtk_about_dialog_get_logo( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_logo_icon_name( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_name( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_program_name( GtkAboutDialog* about );
		public extern static sbyte* gtk_about_dialog_get_translator_credits( GtkAboutDialog* about );
		[BackendHintReadNone]
		public extern static GType gtk_about_dialog_get_type();
		public extern static CUtf8String gtk_about_dialog_get_version( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_website( GtkAboutDialog* about );
		public extern static CUtf8String gtk_about_dialog_get_website_label( GtkAboutDialog* about );
		public extern static Boolean32 gtk_about_dialog_get_wrap_license( GtkAboutDialog* about );
		public extern static GtkWidget* gtk_about_dialog_new();
		public extern static void gtk_about_dialog_set_artists( GtkAboutDialog* about, sbyte** artists );
		public extern static void gtk_about_dialog_set_authors( GtkAboutDialog* about, sbyte** authors );
		public extern static void gtk_about_dialog_set_comments( GtkAboutDialog* about, CUtf8String comments );
		public extern static void gtk_about_dialog_set_copyright( GtkAboutDialog* about, CUtf8String copyright );
		public extern static void gtk_about_dialog_set_documenters( GtkAboutDialog* about, sbyte** documenters );
		public extern static Functors.Action<GtkAboutDialog*, CUtf8String, void*> gtk_about_dialog_set_email_hook( Functors.Action<GtkAboutDialog*, CUtf8String, void*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_about_dialog_set_license( GtkAboutDialog* about, CUtf8String license );
		public extern static void gtk_about_dialog_set_logo( GtkAboutDialog* about, GdkPixbuf* logo );
		public extern static void gtk_about_dialog_set_logo_icon_name( GtkAboutDialog* about, CUtf8String iconName );
		public extern static void gtk_about_dialog_set_name( GtkAboutDialog* about, CUtf8String name );
		public extern static void gtk_about_dialog_set_program_name( GtkAboutDialog* about, CUtf8String name );
		public extern static void gtk_about_dialog_set_translator_credits( GtkAboutDialog* about, sbyte* translatorCredits );
		public extern static Functors.Action<GtkAboutDialog*, CUtf8String, void*> gtk_about_dialog_set_url_hook( Functors.Action<GtkAboutDialog*, CUtf8String, void*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_about_dialog_set_version( GtkAboutDialog* about, CUtf8String version );
		public extern static void gtk_about_dialog_set_website( GtkAboutDialog* about, CUtf8String website );
		public extern static void gtk_about_dialog_set_website_label( GtkAboutDialog* about, CUtf8String websiteLabel );
		public extern static void gtk_about_dialog_set_wrap_license( GtkAboutDialog* about, Boolean32 wrapLicense );

		public extern static void gtk_misc_get_alignment( GtkMisc* misc, float* xalign, float* yalign );
		public extern static void gtk_misc_get_padding( GtkMisc* misc, int* xpad, int* ypad );
		[BackendHintReadNone]
		public extern static GType gtk_misc_get_type();
		public extern static void gtk_misc_set_alignment( GtkMisc* misc, float xalign, float yalign );
		public extern static void gtk_misc_set_padding( GtkMisc* misc, int xpad, int ypad );

		public extern static void gtk_menu_shell_activate_item( GtkMenuShell* menuShell, GtkWidget* menuItem, Boolean32 forceDeactivate );
		public extern static void gtk_menu_shell_append( GtkMenuShell* menuShell, GtkWidget* child );
		public extern static void gtk_menu_shell_cancel( GtkMenuShell* menuShell );
		public extern static void gtk_menu_shell_deactivate( GtkMenuShell* menuShell );
		public extern static void gtk_menu_shell_deselect( GtkMenuShell* menuShell );
		public extern static Boolean32 gtk_menu_shell_get_take_focus( GtkMenuShell* menuShell );
		[BackendHintReadNone]
		public extern static GType gtk_menu_shell_get_type();
		public extern static void gtk_menu_shell_insert( GtkMenuShell* menuShell, GtkWidget* child, int position );
		public extern static void gtk_menu_shell_prepend( GtkMenuShell* menuShell, GtkWidget* child );
		public extern static void gtk_menu_shell_select_first( GtkMenuShell* menuShell, Boolean32 searchSensitive );
		public extern static void gtk_menu_shell_select_item( GtkMenuShell* menuShell, GtkWidget* menuItem );
		public extern static void gtk_menu_shell_set_take_focus( GtkMenuShell* menuShell, Boolean32 takeFocus );

		public extern static void gtk_menu_attach( GtkMenu* menu, GtkWidget* child, uint leftAttach, uint rightAttach, uint topAttach, uint bottomAttach );
		public extern static void gtk_menu_attach_to_widget( GtkMenu* menu, GtkWidget* attachWidget, Functors.Action<GtkWidget*, GtkMenu*> detacher );
		public extern static void gtk_menu_detach( GtkMenu* menu );
		public extern static GtkAccelGroup* gtk_menu_get_accel_group( GtkMenu* menu );
		public extern static sbyte* gtk_menu_get_accel_path( GtkMenu* menu );
		public extern static GtkWidget* gtk_menu_get_active( GtkMenu* menu );
		public extern static GtkWidget* gtk_menu_get_attach_widget( GtkMenu* menu );
		public extern static GList* gtk_menu_get_for_attach_widget( GtkWidget* widget );
		public extern static int gtk_menu_get_monitor( GtkMenu* menu );
		public extern static Boolean32 gtk_menu_get_reserve_toggle_size( GtkMenu* menu );
		public extern static Boolean32 gtk_menu_get_tearoff_state( GtkMenu* menu );
		public extern static CUtf8String gtk_menu_get_title( GtkMenu* menu );
		[BackendHintReadNone]
		public extern static GType gtk_menu_get_type();
		public extern static GtkMenu* gtk_menu_new();
		public extern static void gtk_menu_popdown( GtkMenu* menu );
		public extern static void gtk_menu_popup( GtkMenu* menu, GtkWidget* parentMenuShell, GtkWidget* parentMenuItem, Functors.Action<GtkMenu*, int*, int*, int*, void*> func, void* data, uint button, uint activateTime );
		public extern static void gtk_menu_reorder_child( GtkMenu* menu, GtkWidget* child, int position );
		public extern static void gtk_menu_reposition( GtkMenu* menu );
		public extern static void gtk_menu_set_accel_group( GtkMenu* menu, GtkAccelGroup* accelGroup );
		public extern static void gtk_menu_set_accel_path( GtkMenu* menu, CUtf8String accelPath );
		public extern static void gtk_menu_set_active( GtkMenu* menu, uint index_ );
		public extern static void gtk_menu_set_monitor( GtkMenu* menu, int monitorNum );
		public extern static void gtk_menu_set_reserve_toggle_size( GtkMenu* menu, Boolean32 reserveToggleSize );
		public extern static void gtk_menu_set_screen( GtkMenu* menu, GdkScreen* screen );
		public extern static void gtk_menu_set_tearoff_state( GtkMenu* menu, Boolean32 tornOff );
		public extern static void gtk_menu_set_title( GtkMenu* menu, CUtf8String title );

		public extern static void gtk_label_get( GtkLabel* label, sbyte** str );
		public extern static double gtk_label_get_angle( GtkLabel* label );
		public extern static PangoAttrList* gtk_label_get_attributes( GtkLabel* label );
		public extern static sbyte* gtk_label_get_current_uri( GtkLabel* label );
		public extern static PangoEllipsizeMode gtk_label_get_ellipsize( GtkLabel* label );
		public extern static GtkJustification gtk_label_get_justify( GtkLabel* label );
		public extern static CUtf8String gtk_label_get_label( GtkLabel* label );
		public extern static PangoLayout* gtk_label_get_layout( GtkLabel* label );
		public extern static void gtk_label_get_layout_offsets( GtkLabel* label, int& x, int& y );
		public extern static Boolean32 gtk_label_get_line_wrap( GtkLabel* label );
		public extern static PangoWrapMode gtk_label_get_line_wrap_mode( GtkLabel* label );
		public extern static int gtk_label_get_max_width_chars( GtkLabel* label );
		public extern static uint gtk_label_get_mnemonic_keyval( GtkLabel* label );
		public extern static GtkWidget* gtk_label_get_mnemonic_widget( GtkLabel* label );
		public extern static Boolean32 gtk_label_get_selectable( GtkLabel* label );
		public extern static Boolean32 gtk_label_get_selection_bounds( GtkLabel* label, int& start, int& end );
		public extern static Boolean32 gtk_label_get_single_line_mode( GtkLabel* label );
		public extern static CUtf8String gtk_label_get_text( GtkLabel* label );
		public extern static Boolean32 gtk_label_get_track_visited_links( GtkLabel* label );
		[BackendHintReadNone]
		public extern static GType gtk_label_get_type();
		public extern static Boolean32 gtk_label_get_use_markup( GtkLabel* label );
		public extern static Boolean32 gtk_label_get_use_underline( GtkLabel* label );
		public extern static int gtk_label_get_width_chars( GtkLabel* label );
		public extern static GtkLabel* gtk_label_new( CUtf8String str );
		public extern static GtkWidget* gtk_label_new_with_mnemonic( CUtf8String str );
		public extern static uint gtk_label_parse_uline( GtkLabel* label, CUtf8String @string );
		public extern static void gtk_label_select_region( GtkLabel* label, int startOffset, int endOffset );
		public extern static void gtk_label_set_angle( GtkLabel* label, double angle );
		public extern static void gtk_label_set_attributes( GtkLabel* label, PangoAttrList* attrs );
		public extern static void gtk_label_set_ellipsize( GtkLabel* label, PangoEllipsizeMode mode );
		public extern static void gtk_label_set_justify( GtkLabel* label, GtkJustification jtype );
		public extern static void gtk_label_set_label( GtkLabel* label, CUtf8String str );
		public extern static void gtk_label_set_line_wrap( GtkLabel* label, Boolean32 wrap );
		public extern static void gtk_label_set_line_wrap_mode( GtkLabel* label, PangoWrapMode wrapMode );
		public extern static void gtk_label_set_markup( GtkLabel* label, CUtf8String str );
		public extern static void gtk_label_set_markup_with_mnemonic( GtkLabel* label, CUtf8String str );
		public extern static void gtk_label_set_max_width_chars( GtkLabel* label, int nChars );
		public extern static void gtk_label_set_mnemonic_widget( GtkLabel* label, GtkWidget* widget );
		public extern static void gtk_label_set_pattern( GtkLabel* label, CUtf8String pattern );
		public extern static void gtk_label_set_selectable( GtkLabel* label, Boolean32 setting );
		public extern static void gtk_label_set_single_line_mode( GtkLabel* label, Boolean32 singleLineMode );
		public extern static void gtk_label_set_text( GtkLabel* label, CUtf8String str );
		public extern static void gtk_label_set_text_with_mnemonic( GtkLabel* label, CUtf8String str );
		public extern static void gtk_label_set_track_visited_links( GtkLabel* label, Boolean32 trackLinks );
		public extern static void gtk_label_set_use_markup( GtkLabel* label, Boolean32 setting );
		public extern static void gtk_label_set_use_underline( GtkLabel* label, Boolean32 setting );
		public extern static void gtk_label_set_width_chars( GtkLabel* label, int nChars );

		public extern static GtkWidget* gtk_accel_label_get_accel_widget( GtkAccelLabel* accelLabel );
		public extern static uint gtk_accel_label_get_accel_width( GtkAccelLabel* accelLabel );
		[BackendHintReadNone]
		public extern static GType gtk_accel_label_get_type();
		public extern static GtkWidget* gtk_accel_label_new( CUtf8String @string );
		public extern static Boolean32 gtk_accel_label_refetch( GtkAccelLabel* accelLabel );
		public extern static void gtk_accel_label_set_accel_closure( GtkAccelLabel* accelLabel, GClosure* accelClosure );
		public extern static void gtk_accel_label_set_accel_widget( GtkAccelLabel* accelLabel, GtkWidget* accelWidget );

		public extern static void gtk_accel_map_add_entry( CUtf8String accelPath, uint accelKey, GdkModifierType accelMods );
		public extern static void gtk_accel_map_add_filter( CUtf8String filterPattern );
		public extern static Boolean32 gtk_accel_map_change_entry( CUtf8String accelPath, uint accelKey, GdkModifierType accelMods, Boolean32 replace );
		public extern static void gtk_accel_map_foreach( void* data, Functors.Action<void*, CUtf8String, uint, GdkModifierType, Boolean32> foreachFunc );
		public extern static void gtk_accel_map_foreach_unfiltered( void* data, Functors.Action<void*, CUtf8String, uint, GdkModifierType, Boolean32> foreachFunc );
		public extern static GtkAccelMap* gtk_accel_map_get();
		[BackendHintReadNone]
		public extern static GType gtk_accel_map_get_type();
		public extern static void gtk_accel_map_load( CUtf8String fileName );
		public extern static void gtk_accel_map_load_fd( int fd );
		public extern static void gtk_accel_map_load_scanner( GScanner* scanner );
		public extern static void gtk_accel_map_lock_path( CUtf8String accelPath );
		public extern static Boolean32 gtk_accel_map_lookup_entry( CUtf8String accelPath, GtkAccelKey* key );
		public extern static void gtk_accel_map_save( CUtf8String fileName );
		public extern static void gtk_accel_map_save_fd( int fd );
		public extern static void gtk_accel_map_unlock_path( CUtf8String accelPath );

		public extern static void gtk_accessible_connect_widget_destroyed( GtkAccessible* accessible );
		[BackendHintReadNone]
		public extern static GType gtk_accessible_get_type();
		public extern static GtkWidget* gtk_accessible_get_widget( GtkAccessible* accessible );
		public extern static void gtk_accessible_set_widget( GtkAccessible* accessible, GtkWidget* widget );

		public extern static void gtk_action_activate( GtkAction* action );
		public extern static void gtk_action_block_activate( GtkAction* action );
		public extern static void gtk_action_block_activate_from( GtkAction* action, GtkWidget* proxy );
		public extern static void gtk_action_connect_accelerator( GtkAction* action );
		public extern static void gtk_action_connect_proxy( GtkAction* action, GtkWidget* proxy );
		public extern static GtkWidget* gtk_action_create_icon( GtkAction* action, GtkIconSize iconSize );
		public extern static GtkWidget* gtk_action_create_menu( GtkAction* action );
		public extern static GtkWidget* gtk_action_create_menu_item( GtkAction* action );
		public extern static GtkWidget* gtk_action_create_tool_item( GtkAction* action );
		public extern static void gtk_action_disconnect_accelerator( GtkAction* action );
		public extern static void gtk_action_disconnect_proxy( GtkAction* action, GtkWidget* proxy );
		public extern static GClosure* gtk_action_get_accel_closure( GtkAction* action );
		public extern static CUtf8String gtk_action_get_accel_path( GtkAction* action );
		public extern static Boolean32 gtk_action_get_always_show_image( GtkAction* action );
		public extern static GIcon* gtk_action_get_gicon( GtkAction* action );
		public extern static sbyte* gtk_action_get_icon_name( GtkAction* action );
		public extern static Boolean32 gtk_action_get_is_important( GtkAction* action );
		public extern static sbyte* gtk_action_get_label( GtkAction* action );
		public extern static CUtf8String gtk_action_get_name( GtkAction* action );
		public extern static GSList* gtk_action_get_proxies( GtkAction* action );
		public extern static Boolean32 gtk_action_get_sensitive( GtkAction* action );
		public extern static sbyte* gtk_action_get_short_label( GtkAction* action );
		public extern static sbyte* gtk_action_get_stock_id( GtkAction* action );
		public extern static sbyte* gtk_action_get_tooltip( GtkAction* action );
		[BackendHintReadNone]
		public extern static GType gtk_action_get_type();
		public extern static Boolean32 gtk_action_get_visible( GtkAction* action );
		public extern static Boolean32 gtk_action_get_visible_horizontal( GtkAction* action );
		public extern static Boolean32 gtk_action_get_visible_vertical( GtkAction* action );
		public extern static Boolean32 gtk_action_is_sensitive( GtkAction* action );
		public extern static Boolean32 gtk_action_is_visible( GtkAction* action );
		public extern static GtkAction* gtk_action_new( CUtf8String name, CUtf8String label, CUtf8String tooltip, CUtf8String stockId );
		public extern static void gtk_action_set_accel_group( GtkAction* action, GtkAccelGroup* accelGroup );
		public extern static void gtk_action_set_accel_path( GtkAction* action, CUtf8String accelPath );
		public extern static void gtk_action_set_always_show_image( GtkAction* action, Boolean32 alwaysShow );
		public extern static void gtk_action_set_gicon( GtkAction* action, GIcon* icon );
		public extern static void gtk_action_set_icon_name( GtkAction* action, CUtf8String iconName );
		public extern static void gtk_action_set_is_important( GtkAction* action, Boolean32 isImportant );
		public extern static void gtk_action_set_label( GtkAction* action, sbyte* label );
		public extern static void gtk_action_set_sensitive( GtkAction* action, Boolean32 sensitive );
		public extern static void gtk_action_set_short_label( GtkAction* action, sbyte* shortLabel );
		public extern static void gtk_action_set_stock_id( GtkAction* action, sbyte* stockId );
		public extern static void gtk_action_set_tooltip( GtkAction* action, sbyte* tooltip );
		public extern static void gtk_action_set_visible( GtkAction* action, Boolean32 visible );
		public extern static void gtk_action_set_visible_horizontal( GtkAction* action, Boolean32 visibleHorizontal );
		public extern static void gtk_action_set_visible_vertical( GtkAction* action, Boolean32 visibleVertical );
		public extern static void gtk_action_unblock_activate( GtkAction* action );
		public extern static void gtk_action_unblock_activate_from( GtkAction* action, GtkWidget* proxy );
		public extern static GtkAction* gtk_widget_get_action( GtkWidget* widget );

		public extern static void gtk_action_group_add_action( GtkActionGroup* actionGroup, GtkAction* action );
		public extern static void gtk_action_group_add_action_with_accel( GtkActionGroup* actionGroup, GtkAction* action, CUtf8String accelerator );
		public extern static void gtk_action_group_add_actions( GtkActionGroup* actionGroup, GtkActionEntry* entries, uint nEntries, void* userData );
		public extern static void gtk_action_group_add_actions_full( GtkActionGroup* actionGroup, GtkActionEntry* entries, uint nEntries, void* userData, Functors.Action<void*> destroy );
		public extern static void gtk_action_group_add_radio_actions( GtkActionGroup* actionGroup, GtkRadioActionEntry* entries, uint nEntries, int value, Functors.Action onChange, void* userData );
		public extern static void gtk_action_group_add_radio_actions_full( GtkActionGroup* actionGroup, GtkRadioActionEntry* entries, uint nEntries, int value, Functors.Action onChange, void* userData, Functors.Action<void*> destroy );
		public extern static void gtk_action_group_add_toggle_actions( GtkActionGroup* actionGroup, GtkToggleActionEntry* entries, uint nEntries, void* userData );
		public extern static void gtk_action_group_add_toggle_actions_full( GtkActionGroup* actionGroup, GtkToggleActionEntry* entries, uint nEntries, void* userData, Functors.Action<void*> destroy );
		public extern static GtkAction* gtk_action_group_get_action( GtkActionGroup* actionGroup, CUtf8String actionName );
		public extern static CUtf8String gtk_action_group_get_name( GtkActionGroup* actionGroup );
		public extern static Boolean32 gtk_action_group_get_sensitive( GtkActionGroup* actionGroup );
		[BackendHintReadNone]
		public extern static GType gtk_action_group_get_type();
		public extern static Boolean32 gtk_action_group_get_visible( GtkActionGroup* actionGroup );
		public extern static GList* gtk_action_group_list_actions( GtkActionGroup* actionGroup );
		public extern static GtkActionGroup* gtk_action_group_new( CUtf8String name );
		public extern static void gtk_action_group_remove_action( GtkActionGroup* actionGroup, GtkAction* action );
		public extern static void gtk_action_group_set_sensitive( GtkActionGroup* actionGroup, Boolean32 sensitive );
		public extern static void gtk_action_group_set_translate_func( GtkActionGroup* actionGroup, Functors.Func<CUtf8String, void*, CUtf8String> func, void* data, Functors.Action<void*> notify );
		public extern static void gtk_action_group_set_translation_domain( GtkActionGroup* actionGroup, CUtf8String domain );
		public extern static void gtk_action_group_set_visible( GtkActionGroup* actionGroup, Boolean32 visible );
		public extern static CUtf8String gtk_action_group_translate_string( GtkActionGroup* actionGroup, CUtf8String @string );

		public extern static void gtk_activatable_do_set_related_action( GtkActivatable* activatable, GtkAction* action );
		public extern static GtkAction* gtk_activatable_get_related_action( GtkActivatable* activatable );
		[BackendHintReadNone]
		public extern static GType gtk_activatable_get_type();
		public extern static Boolean32 gtk_activatable_get_use_action_appearance( GtkActivatable* activatable );
		public extern static void gtk_activatable_set_related_action( GtkActivatable* activatable, GtkAction* action );
		public extern static void gtk_activatable_set_use_action_appearance( GtkActivatable* activatable, Boolean32 useAppearance );
		public extern static void gtk_activatable_sync_action_properties( GtkActivatable* activatable, GtkAction* action );

		public extern static void gtk_alignment_get_padding( GtkAlignment* alignment, uint* paddingTop, uint* paddingBottom, uint* paddingLeft, uint* paddingRight );
		[BackendHintReadNone]
		public extern static GType gtk_alignment_get_type();
		public extern static GtkAlignment* gtk_alignment_new( float xalign, float yalign, float xscale, float yscale );
		public extern static void gtk_alignment_set( GtkAlignment* alignment, float xalign, float yalign, float xscale, float yscale );
		public extern static void gtk_alignment_set_padding( GtkAlignment* alignment, uint paddingTop, uint paddingBottom, uint paddingLeft, uint paddingRight );

		[BackendHintReadNone]
		public extern static GType gtk_arrow_get_type();
		public extern static GtkWidget* gtk_arrow_new( GtkArrowType arrowType, GtkShadowType shadowType );
		public extern static void gtk_arrow_set( GtkArrow* arrow, GtkArrowType arrowType, GtkShadowType shadowType );

		public extern static CUtf8String gtk_frame_get_label( GtkFrame* frame );
		public extern static void gtk_frame_get_label_align( GtkFrame* frame, float* xalign, float* yalign );
		public extern static GtkWidget* gtk_frame_get_label_widget( GtkFrame* frame );
		public extern static GtkShadowType gtk_frame_get_shadow_type( GtkFrame* frame );
		[BackendHintReadNone]
		public extern static GType gtk_frame_get_type();
		public extern static GtkFrame* gtk_frame_new( CUtf8String label );
		public extern static void gtk_frame_set_label( GtkFrame* frame, CUtf8String label );
		public extern static void gtk_frame_set_label_align( GtkFrame* frame, float xalign, float yalign );
		public extern static void gtk_frame_set_label_widget( GtkFrame* frame, GtkWidget* labelWidget );
		public extern static void gtk_frame_set_shadow_type( GtkFrame* frame, GtkShadowType type );

		[BackendHintReadNone]
		public extern static GType gtk_aspect_frame_get_type();
		public extern static GtkWidget* gtk_aspect_frame_new( CUtf8String label, float xalign, float yalign, float ratio, Boolean32 obeyChild );
		public extern static void gtk_aspect_frame_set( GtkAspectFrame* aspectFrame, float xalign, float yalign, float ratio, Boolean32 obeyChild );

		public extern static void gtk_assistant_add_action_widget( GtkAssistant* assistant, GtkWidget* child );
		public extern static int gtk_assistant_append_page( GtkAssistant* assistant, GtkWidget* page );
		public extern static void gtk_assistant_commit( GtkAssistant* assistant );
		public extern static int gtk_assistant_get_current_page( GtkAssistant* assistant );
		public extern static int gtk_assistant_get_n_pages( GtkAssistant* assistant );
		public extern static GtkWidget* gtk_assistant_get_nth_page( GtkAssistant* assistant, int pageNum );
		public extern static Boolean32 gtk_assistant_get_page_complete( GtkAssistant* assistant, GtkWidget* page );
		public extern static GdkPixbuf* gtk_assistant_get_page_header_image( GtkAssistant* assistant, GtkWidget* page );
		public extern static GdkPixbuf* gtk_assistant_get_page_side_image( GtkAssistant* assistant, GtkWidget* page );
		public extern static CUtf8String gtk_assistant_get_page_title( GtkAssistant* assistant, GtkWidget* page );
		public extern static GtkAssistantPageType gtk_assistant_get_page_type( GtkAssistant* assistant, GtkWidget* page );
		[BackendHintReadNone]
		public extern static GType gtk_assistant_get_type();
		public extern static int gtk_assistant_insert_page( GtkAssistant* assistant, GtkWidget* page, int position );
		public extern static GtkWidget* gtk_assistant_new();
		public extern static int gtk_assistant_prepend_page( GtkAssistant* assistant, GtkWidget* page );
		public extern static void gtk_assistant_remove_action_widget( GtkAssistant* assistant, GtkWidget* child );
		public extern static void gtk_assistant_set_current_page( GtkAssistant* assistant, int pageNum );
		public extern static void gtk_assistant_set_forward_page_func( GtkAssistant* assistant, Functors.Func<int, void*, int> pageFunc, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_assistant_set_page_complete( GtkAssistant* assistant, GtkWidget* page, Boolean32 complete );
		public extern static void gtk_assistant_set_page_header_image( GtkAssistant* assistant, GtkWidget* page, GdkPixbuf* pixbuf );
		public extern static void gtk_assistant_set_page_side_image( GtkAssistant* assistant, GtkWidget* page, GdkPixbuf* pixbuf );
		public extern static void gtk_assistant_set_page_title( GtkAssistant* assistant, GtkWidget* page, CUtf8String title );
		public extern static void gtk_assistant_set_page_type( GtkAssistant* assistant, GtkWidget* page, GtkAssistantPageType type );
		public extern static void gtk_assistant_update_buttons_state( GtkAssistant* assistant );

		public extern static Boolean32 gtk_box_get_homogeneous( GtkBox* box );
		public extern static int gtk_box_get_spacing( GtkBox* box );
		[BackendHintReadNone]
		public extern static GType gtk_box_get_type();
		public extern static void gtk_box_pack_end( GtkBox* box, GtkWidget* child, Boolean32 expand, Boolean32 fill, uint padding );
		public extern static void gtk_box_pack_end_defaults( GtkBox* box, GtkWidget* widget );
		public extern static void gtk_box_pack_start( GtkBox* box, GtkWidget* child, Boolean32 expand, Boolean32 fill, uint padding );
		public extern static void gtk_box_pack_start_defaults( GtkBox* box, GtkWidget* widget );
		public extern static void gtk_box_query_child_packing( GtkBox* box, GtkWidget* child, int* expand, int* fill, uint* padding, GtkPackType* packType );
		public extern static void gtk_box_reorder_child( GtkBox* box, GtkWidget* child, int position );
		public extern static void gtk_box_set_child_packing( GtkBox* box, GtkWidget* child, Boolean32 expand, Boolean32 fill, uint padding, GtkPackType packType );
		public extern static void gtk_box_set_homogeneous( GtkBox* box, Boolean32 homogeneous );
		public extern static void gtk_box_set_spacing( GtkBox* box, int spacing );

		public extern static void gtk_button_box_get_child_ipadding( GtkButtonBox* widget, int* ipadX, int* ipadY );
		public extern static Boolean32 gtk_button_box_get_child_secondary( GtkButtonBox* widget, GtkWidget* child );
		public extern static void gtk_button_box_get_child_size( GtkButtonBox* widget, int* minWidth, int* minHeight );
		public extern static GtkButtonBoxStyle gtk_button_box_get_layout( GtkButtonBox* widget );
		[BackendHintReadNone]
		public extern static GType gtk_button_box_get_type();
		public extern static void gtk_button_box_set_child_ipadding( GtkButtonBox* widget, int ipadX, int ipadY );
		public extern static void gtk_button_box_set_child_secondary( GtkButtonBox* widget, GtkWidget* child, Boolean32 isSecondary );
		public extern static void gtk_button_box_set_child_size( GtkButtonBox* widget, int minWidth, int minHeight );
		public extern static void gtk_button_box_set_layout( GtkButtonBox* widget, GtkButtonBoxStyle layoutStyle );

		public extern static void gtk_binding_entry_add_signall( GtkBindingSet* bindingSet, uint keyval, GdkModifierType modifiers, CUtf8String signalName, GSList* bindingArgs );
		public extern static void gtk_binding_entry_clear( GtkBindingSet* bindingSet, uint keyval, GdkModifierType modifiers );
		public extern static void gtk_binding_entry_remove( GtkBindingSet* bindingSet, uint keyval, GdkModifierType modifiers );
		public extern static void gtk_binding_entry_skip( GtkBindingSet* bindingSet, uint keyval, GdkModifierType modifiers );
		public extern static uint gtk_binding_parse_binding( GScanner* scanner );
		public extern static Boolean32 gtk_binding_set_activate( GtkBindingSet* bindingSet, uint keyval, GdkModifierType modifiers, GtkObject* object );
		public extern static void gtk_binding_set_add_path( GtkBindingSet* bindingSet, GtkPathType pathType, CUtf8String pathPattern, GtkPathPriorityType priority );
		public extern static GtkBindingSet* gtk_binding_set_by_class( void* objectClass );
		public extern static GtkBindingSet* gtk_binding_set_find( CUtf8String setName );
		public extern static GtkBindingSet* gtk_binding_set_new( CUtf8String setName );
		public extern static Boolean32 gtk_bindings_activate( GtkObject* object, uint keyval, GdkModifierType modifiers );
		public extern static Boolean32 gtk_bindings_activate_event( GtkObject* object, GdkEventKey* @event );

		public extern static uint gtk_builder_add_from_file( GtkBuilder* builder, CUtf8String filename, GError*& error );
		public extern static uint gtk_builder_add_from_string( GtkBuilder* builder, CUtf8String buffer, uint length, GError*& error );
		public extern static uint gtk_builder_add_objects_from_file( GtkBuilder* builder, CUtf8String filename, sbyte** objectIds, GError** error );
		public extern static uint gtk_builder_add_objects_from_string( GtkBuilder* builder, sbyte* buffer, uint length, sbyte** objectIds, GError** error );
		public extern static void gtk_builder_connect_signals( GtkBuilder* builder, void* userData );
		public extern static void gtk_builder_connect_signals_full( GtkBuilder* builder, Functors.Action<GtkBuilder*, GObject*, CUtf8String, CUtf8String, GObject*, GConnectFlags, void*> func, void* userData );
		public extern static uint gtk_builder_error_quark();
		public extern static GObject* gtk_builder_get_object( GtkBuilder* builder, CUtf8String name );
		public extern static GSList* gtk_builder_get_objects( GtkBuilder* builder );
		public extern static CUtf8String gtk_builder_get_translation_domain( GtkBuilder* builder );
		[BackendHintReadNone]
		public extern static GType gtk_builder_get_type();
		public extern static uintptr gtk_builder_get_type_from_name( GtkBuilder* builder, CUtf8String typeName );
		public extern static GtkBuilder* gtk_builder_new();
		public extern static void gtk_builder_set_translation_domain( GtkBuilder* builder, CUtf8String domain );
		public extern static Boolean32 gtk_builder_value_from_string( GtkBuilder* builder, GParamSpec* pspec, CUtf8String @string, GValue& value, GError*& error );
		public extern static Boolean32 gtk_builder_value_from_string_type( GtkBuilder* builder, uintptr type, CUtf8String @string, GValue& value, GError*& error );

		public extern static void gtk_buildable_add_child( GtkBuildable* buildable, GtkBuilder* builder, GObject* child, CUtf8String type );
		public extern static GObject* gtk_buildable_construct_child( GtkBuildable* buildable, GtkBuilder* builder, CUtf8String name );
		public extern static void gtk_buildable_custom_finished( GtkBuildable* buildable, GtkBuilder* builder, GObject* child, CUtf8String tagname, void* data );
		public extern static void gtk_buildable_custom_tag_end( GtkBuildable* buildable, GtkBuilder* builder, GObject* child, CUtf8String tagname, void** data );
		public extern static Boolean32 gtk_buildable_custom_tag_start( GtkBuildable* buildable, GtkBuilder* builder, GObject* child, CUtf8String tagname, GMarkupParser* parser, void** data );
		public extern static GObject* gtk_buildable_get_internal_child( GtkBuildable* buildable, GtkBuilder* builder, CUtf8String childname );
		public extern static CUtf8String gtk_buildable_get_name( GtkBuildable* buildable );
		[BackendHintReadNone]
		public extern static GType gtk_buildable_get_type();
		public extern static void gtk_buildable_parser_finished( GtkBuildable* buildable, GtkBuilder* builder );
		public extern static void gtk_buildable_set_buildable_property( GtkBuildable* buildable, GtkBuilder* builder, CUtf8String name, GValue* value );
		public extern static void gtk_buildable_set_name( GtkBuildable* buildable, CUtf8String name );

		public extern static void gtk_image_clear( GtkImage* image );
		public extern static void gtk_image_get( GtkImage* image, GdkImage** val, GdkDrawable** mask );
		public extern static GdkPixbufAnimation* gtk_image_get_animation( GtkImage* image );
		public extern static void gtk_image_get_gicon( GtkImage* image, GIcon** gicon, GtkIconSize* size );
		public extern static void gtk_image_get_icon_name( GtkImage* image, sbyte** iconName, GtkIconSize* size );
		public extern static void gtk_image_get_icon_set( GtkImage* image, GtkIconSet** iconSet, GtkIconSize* size );
		public extern static void gtk_image_get_image( GtkImage* image, GdkImage** gdkImage, GdkDrawable** mask );
		public extern static GdkPixbuf* gtk_image_get_pixbuf( GtkImage* image );
		public extern static int gtk_image_get_pixel_size( GtkImage* image );
		public extern static void gtk_image_get_pixmap( GtkImage* image, GdkDrawable** pixmap, GdkDrawable** mask );
		public extern static void gtk_image_get_stock( GtkImage* image, sbyte** stockId, GtkIconSize* size );
		public extern static GtkImageType gtk_image_get_storage_type( GtkImage* image );
		[BackendHintReadNone]
		public extern static GType gtk_image_get_type();
		public extern static GtkImage* gtk_image_new();
		public extern static GtkImage* gtk_image_new_from_animation( GdkPixbufAnimation* animation );
		public extern static GtkImage* gtk_image_new_from_file( CUtf8String filename );
		public extern static GtkWidget* gtk_image_new_from_gicon( GIcon* icon, GtkIconSize size );
		public extern static GtkImage* gtk_image_new_from_icon_name( CUtf8String iconName, GtkIconSize size );
		public extern static GtkImage* gtk_image_new_from_icon_set( GtkIconSet* iconSet, GtkIconSize size );
		public extern static GtkImage* gtk_image_new_from_image( GdkImage* image, GdkDrawable* mask );
		public extern static GtkImage* gtk_image_new_from_pixbuf( GdkPixbuf* pixbuf );
		public extern static GtkImage* gtk_image_new_from_pixmap( GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static GtkImage* gtk_image_new_from_stock( CUtf8String stockId, GtkIconSize size );
		public extern static void gtk_image_set( GtkImage* image, GdkImage* val, GdkDrawable* mask );
		public extern static void gtk_image_set_from_animation( GtkImage* image, GdkPixbufAnimation* animation );
		public extern static void gtk_image_set_from_file( GtkImage* image, CUtf8String filename );
		public extern static void gtk_image_set_from_gicon( GtkImage* image, GIcon* icon, GtkIconSize size );
		public extern static void gtk_image_set_from_icon_name( GtkImage* image, CUtf8String iconName, GtkIconSize size );
		public extern static void gtk_image_set_from_icon_set( GtkImage* image, GtkIconSet* iconSet, GtkIconSize size );
		public extern static void gtk_image_set_from_image( GtkImage* image, GdkImage* gdkImage, GdkDrawable* mask );
		public extern static void gtk_image_set_from_pixbuf( GtkImage* image, GdkPixbuf* pixbuf );
		public extern static void gtk_image_set_from_pixmap( GtkImage* image, GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_image_set_from_stock( GtkImage* image, CUtf8String stockId, GtkIconSize size );
		public extern static void gtk_image_set_pixel_size( GtkImage* image, int pixelSize );

		public extern static void gtk_button_clicked( GtkButton* button );
		public extern static void gtk_button_enter( GtkButton* button );
		public extern static void gtk_button_get_alignment( GtkButton* button, float& xalign, float& yalign );
		public extern static GdkDrawable* gtk_button_get_event_window( GtkButton* button );
		public extern static Boolean32 gtk_button_get_focus_on_click( GtkButton* button );
		public extern static GtkWidget* gtk_button_get_image( GtkButton* button );
		public extern static GtkPositionType gtk_button_get_image_position( GtkButton* button );
		public extern static CUtf8String gtk_button_get_label( GtkButton* button );
		public extern static GtkReliefStyle gtk_button_get_relief( GtkButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_button_get_type();
		public extern static Boolean32 gtk_button_get_use_stock( GtkButton* button );
		public extern static Boolean32 gtk_button_get_use_underline( GtkButton* button );
		public extern static void gtk_button_leave( GtkButton* button );
		public extern static GtkButton* gtk_button_new();
		public extern static GtkButton* gtk_button_new_from_stock( CUtf8String stockId );
		public extern static GtkButton* gtk_button_new_with_label( CUtf8String label );
		public extern static GtkButton* gtk_button_new_with_mnemonic( CUtf8String label );
		public extern static void gtk_button_pressed( GtkButton* button );
		public extern static void gtk_button_released( GtkButton* button );
		public extern static void gtk_button_set_alignment( GtkButton* button, float xalign, float yalign );
		public extern static void gtk_button_set_focus_on_click( GtkButton* button, Boolean32 focusOnClick );
		public extern static void gtk_button_set_image( GtkButton* button, GtkWidget* image );
		public extern static void gtk_button_set_image_position( GtkButton* button, GtkPositionType position );
		public extern static void gtk_button_set_label( GtkButton* button, CUtf8String label );
		public extern static void gtk_button_set_relief( GtkButton* button, GtkReliefStyle newstyle );
		public extern static void gtk_button_set_use_stock( GtkButton* button, Boolean32 useStock );
		public extern static void gtk_button_set_use_underline( GtkButton* button, Boolean32 useUnderline );

		public extern static void gtk_marshal_BOOLEAN__POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_BOOLEAN__POINTER_INT_INT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_BOOLEAN__POINTER_INT_INT_UINT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_BOOLEAN__POINTER_POINTER_INT_INT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_BOOLEAN__POINTER_STRING_STRING_POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_BOOLEAN__VOID( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_ENUM__ENUM( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_INT__POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_INT__POINTER_CHAR_CHAR( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__ENUM_FLOAT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__ENUM_FLOAT_BOOLEAN( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__INT_INT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__INT_INT_POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_INT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_INT_INT_POINTER_UINT_UINT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_POINTER_POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_POINTER_UINT_UINT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_STRING_STRING( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_UINT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_UINT_ENUM( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__POINTER_UINT_UINT( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__STRING_INT_POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__UINT_POINTER_UINT_ENUM_ENUM_POINTER( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__UINT_POINTER_UINT_UINT_ENUM( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );
		public extern static void gtk_marshal_VOID__UINT_STRING( GClosure* closure, GValue* returnValue, uint nParamValues, GValue* paramValues, void* invocationHint, void* marshalData );

		public extern static void gtk_signal_compat_matched( GtkObject* object, Functors.Action func, void* data, GSignalMatchType match, uint action );
		public extern static uintptr gtk_signal_connect_full( GtkObject* object, CUtf8String name, Functors.Action func, Functors.Action<GtkObject*, void*, uint, GtkArg*> unsupported, void* data, Functors.Action<void*> destroyFunc, int objectSignal, int after );
		public extern static void gtk_signal_connect_object_while_alive( GtkObject* object, CUtf8String name, Functors.Action func, GtkObject* aliveObject );
		public extern static void gtk_signal_connect_while_alive( GtkObject* object, CUtf8String name, Functors.Action func, void* funcData, GtkObject* aliveObject );
		public extern static void gtk_signal_emit_stop_by_name( GtkObject* object, CUtf8String name );
		public extern static void gtk_signal_emitv( GtkObject* object, uint signalId, GtkArg* args );
		public extern static void gtk_signal_emitv_by_name( GtkObject* object, CUtf8String name, GtkArg* args );
		public extern static uint gtk_signal_newv( CUtf8String name, GtkSignalRunType signalFlags, uintptr objectType, uint functionOffset, Functors.Action<GClosure*, GValue*, uint, GValue*, void*, void*> marshaller, uintptr returnVal, uint nArgs, uintptr* args );

		public extern static void gtk_calendar_clear_marks( GtkCalendar* calendar );
		public extern static void gtk_calendar_display_options( GtkCalendar* calendar, GtkCalendarDisplayOptions flags );
		public extern static void gtk_calendar_freeze( GtkCalendar* calendar );
		public extern static void gtk_calendar_get_date( GtkCalendar* calendar, uint* year, uint* month, uint* day );
		public extern static int gtk_calendar_get_detail_height_rows( GtkCalendar* calendar );
		public extern static int gtk_calendar_get_detail_width_chars( GtkCalendar* calendar );
		public extern static GtkCalendarDisplayOptions gtk_calendar_get_display_options( GtkCalendar* calendar );
		[BackendHintReadNone]
		public extern static GType gtk_calendar_get_type();
		public extern static Boolean32 gtk_calendar_mark_day( GtkCalendar* calendar, uint day );
		public extern static GtkWidget* gtk_calendar_new();
		public extern static void gtk_calendar_select_day( GtkCalendar* calendar, uint day );
		public extern static Boolean32 gtk_calendar_select_month( GtkCalendar* calendar, uint month, uint year );
		public extern static void gtk_calendar_set_detail_func( GtkCalendar* calendar, Functors.Func<GtkCalendar*, uint, uint, uint, void*, sbyte*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_calendar_set_detail_height_rows( GtkCalendar* calendar, int rows );
		public extern static void gtk_calendar_set_detail_width_chars( GtkCalendar* calendar, int chars );
		public extern static void gtk_calendar_set_display_options( GtkCalendar* calendar, GtkCalendarDisplayOptions flags );
		public extern static void gtk_calendar_thaw( GtkCalendar* calendar );
		public extern static Boolean32 gtk_calendar_unmark_day( GtkCalendar* calendar, uint day );

		public extern static void gtk_cell_editable_editing_done( GtkCellEditable* cellEditable );
		[BackendHintReadNone]
		public extern static GType gtk_cell_editable_get_type();
		public extern static void gtk_cell_editable_remove_widget( GtkCellEditable* cellEditable );
		public extern static void gtk_cell_editable_start_editing( GtkCellEditable* cellEditable, GdkEvent* @event );

		public extern static Boolean32 gtk_cell_renderer_activate( GtkCellRenderer* cell, GdkEvent* @event, GtkWidget* widget, CUtf8String path, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags );
		public extern static void gtk_cell_renderer_editing_canceled( GtkCellRenderer* cell );
		public extern static void gtk_cell_renderer_get_alignment( GtkCellRenderer* cell, float* xalign, float* yalign );
		public extern static void gtk_cell_renderer_get_fixed_size( GtkCellRenderer* cell, int* width, int* height );
		public extern static void gtk_cell_renderer_get_padding( GtkCellRenderer* cell, int* xpad, int* ypad );
		public extern static Boolean32 gtk_cell_renderer_get_sensitive( GtkCellRenderer* cell );
		public extern static void gtk_cell_renderer_get_size( GtkCellRenderer* cell, GtkWidget* widget, GdkRectangle* cellArea, int* xOffset, int* yOffset, int* width, int* height );
		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_get_type();
		public extern static Boolean32 gtk_cell_renderer_get_visible( GtkCellRenderer* cell );
		public extern static void gtk_cell_renderer_render( GtkCellRenderer* cell, GdkDrawable* window, GtkWidget* widget, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GdkRectangle* exposeArea, GtkCellRendererState flags );
		public extern static void gtk_cell_renderer_set_alignment( GtkCellRenderer* cell, float xalign, float yalign );
		public extern static void gtk_cell_renderer_set_fixed_size( GtkCellRenderer* cell, int width, int height );
		public extern static void gtk_cell_renderer_set_padding( GtkCellRenderer* cell, int xpad, int ypad );
		public extern static void gtk_cell_renderer_set_sensitive( GtkCellRenderer* cell, Boolean32 sensitive );
		public extern static void gtk_cell_renderer_set_visible( GtkCellRenderer* cell, Boolean32 visible );
		public extern static GtkCellEditable* gtk_cell_renderer_start_editing( GtkCellRenderer* cell, GdkEvent* @event, GtkWidget* widget, CUtf8String path, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags );
		public extern static void gtk_cell_renderer_stop_editing( GtkCellRenderer* cell, Boolean32 canceled );

		public extern static GtkTreeIter* gtk_tree_iter_copy( GtkTreeIter& iter );
		public extern static void gtk_tree_iter_free( GtkTreeIter* iter );
		[BackendHintReadNone]
		public extern static GType gtk_tree_iter_get_type();
		public extern static void gtk_tree_model_foreach( GtkTreeModel* model, Functors.Func<GtkTreeModel*, GtkTreePath*, GtkTreeIter&, void*, Boolean32> func, void* userData );
		public extern static uintptr gtk_tree_model_get_column_type( GtkTreeModel* treeModel, int index_ );
		public extern static GtkTreeModelFlags gtk_tree_model_get_flags( GtkTreeModel* treeModel );
		public extern static Boolean32 gtk_tree_model_get_iter( GtkTreeModel* treeModel, GtkTreeIter& iter, GtkTreePath* path );
		public extern static Boolean32 gtk_tree_model_get_iter_first( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static Boolean32 gtk_tree_model_get_iter_from_string( GtkTreeModel* treeModel, GtkTreeIter& iter, CUtf8String pathString );
		public extern static int gtk_tree_model_get_n_columns( GtkTreeModel* treeModel );
		public extern static GtkTreePath* gtk_tree_model_get_path( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static CUtf8String gtk_tree_model_get_string_from_iter( GtkTreeModel* treeModel, GtkTreeIter& iter );
		[BackendHintReadNone]
		public extern static GType gtk_tree_model_get_type();
		public extern static void gtk_tree_model_get_valist( GtkTreeModel* treeModel, GtkTreeIter& iter, sbyte* varArgs );
		public extern static void gtk_tree_model_get_value( GtkTreeModel* treeModel, GtkTreeIter& iter, int column, GValue& value );
		public extern static Boolean32 gtk_tree_model_iter_children( GtkTreeModel* treeModel, GtkTreeIter& iter, GtkTreeIter& parent );
		public extern static Boolean32 gtk_tree_model_iter_has_child( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static int gtk_tree_model_iter_n_children( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static Boolean32 gtk_tree_model_iter_next( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static Boolean32 gtk_tree_model_iter_nth_child( GtkTreeModel* treeModel, GtkTreeIter& iter, GtkTreeIter& parent, int n );
		public extern static Boolean32 gtk_tree_model_iter_parent( GtkTreeModel* treeModel, GtkTreeIter& iter, GtkTreeIter& child );
		public extern static void gtk_tree_model_ref_node( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static void gtk_tree_model_row_changed( GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter& iter );
		public extern static void gtk_tree_model_row_deleted( GtkTreeModel* treeModel, GtkTreePath* path );
		public extern static void gtk_tree_model_row_has_child_toggled( GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter& iter );
		public extern static void gtk_tree_model_row_inserted( GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter& iter );
		public extern static void gtk_tree_model_rows_reordered( GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter& iter, int* newOrder );
		public extern static void gtk_tree_model_unref_node( GtkTreeModel* treeModel, GtkTreeIter& iter );
		public extern static void gtk_tree_path_append_index( GtkTreePath* path, int index_ );
		public extern static int gtk_tree_path_compare( GtkTreePath* a, GtkTreePath* b );
		public extern static GtkTreePath* gtk_tree_path_copy( GtkTreePath* path );
		public extern static void gtk_tree_path_down( GtkTreePath* path );
		public extern static void gtk_tree_path_free( GtkTreePath* path );
		public extern static int gtk_tree_path_get_depth( GtkTreePath* path );
		public extern static int* gtk_tree_path_get_indices( GtkTreePath* path );
		public extern static int* gtk_tree_path_get_indices_with_depth( GtkTreePath* path, int* depth );
		[BackendHintReadNone]
		public extern static GType gtk_tree_path_get_type();
		public extern static Boolean32 gtk_tree_path_is_ancestor( GtkTreePath* path, GtkTreePath* descendant );
		public extern static Boolean32 gtk_tree_path_is_descendant( GtkTreePath* path, GtkTreePath* ancestor );
		public extern static GtkTreePath* gtk_tree_path_new();
		public extern static GtkTreePath* gtk_tree_path_new_first();
		public extern static GtkTreePath* gtk_tree_path_new_from_string( CUtf8String path );
		public extern static void gtk_tree_path_next( GtkTreePath* path );
		public extern static void gtk_tree_path_prepend_index( GtkTreePath* path, int index_ );
		public extern static Boolean32 gtk_tree_path_prev( GtkTreePath* path );
		public extern static CUtf8String gtk_tree_path_to_string( GtkTreePath* path );
		public extern static Boolean32 gtk_tree_path_up( GtkTreePath* path );
		public extern static GtkTreeRowReference* gtk_tree_row_reference_copy( GtkTreeRowReference* reference );
		public extern static void gtk_tree_row_reference_deleted( GObject* proxy, GtkTreePath* path );
		public extern static void gtk_tree_row_reference_free( GtkTreeRowReference* reference );
		public extern static GtkTreeModel* gtk_tree_row_reference_get_model( GtkTreeRowReference* reference );
		public extern static GtkTreePath* gtk_tree_row_reference_get_path( GtkTreeRowReference* reference );
		[BackendHintReadNone]
		public extern static GType gtk_tree_row_reference_get_type();
		public extern static void gtk_tree_row_reference_inserted( GObject* proxy, GtkTreePath* path );
		public extern static GtkTreeRowReference* gtk_tree_row_reference_new( GtkTreeModel* model, GtkTreePath* path );
		public extern static GtkTreeRowReference* gtk_tree_row_reference_new_proxy( GObject* proxy, GtkTreeModel* model, GtkTreePath* path );
		public extern static void gtk_tree_row_reference_reordered( GObject* proxy, GtkTreePath* path, GtkTreeIter& iter, int* newOrder );
		public extern static Boolean32 gtk_tree_row_reference_valid( GtkTreeRowReference* reference );

		public extern static Boolean32 gtk_tree_sortable_get_sort_column_id( GtkTreeSortable* sortable, int* sortColumnId, GtkSortType* order );
		[BackendHintReadNone]
		public extern static GType gtk_tree_sortable_get_type();
		public extern static Boolean32 gtk_tree_sortable_has_default_sort_func( GtkTreeSortable* sortable );
		public extern static void gtk_tree_sortable_set_default_sort_func( GtkTreeSortable* sortable, Functors.Func<GtkTreeModel*, GtkTreeIter&, GtkTreeIter&, void*, int> sortFunc, void* userData, Functors.Action<void*> destroy );
		public extern static void gtk_tree_sortable_set_sort_column_id( GtkTreeSortable* sortable, int sortColumnId, GtkSortType order );
		public extern static void gtk_tree_sortable_set_sort_func( GtkTreeSortable* sortable, int sortColumnId, Functors.Func<GtkTreeModel*, GtkTreeIter&, GtkTreeIter&, void*, int> sortFunc, void* userData, Functors.Action<void*> destroy );
		public extern static void gtk_tree_sortable_sort_column_changed( GtkTreeSortable* sortable );

		public extern static void gtk_tree_view_column_add_attribute( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cellRenderer, CUtf8String attribute, int column );
		public extern static Boolean32 gtk_tree_view_column_cell_get_position( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cellRenderer, int* startPos, int* width );
		public extern static void gtk_tree_view_column_cell_get_size( GtkTreeViewColumn* treeColumn, GdkRectangle* cellArea, int* xOffset, int* yOffset, int* width, int* height );
		public extern static Boolean32 gtk_tree_view_column_cell_is_visible( GtkTreeViewColumn* treeColumn );
		public extern static void gtk_tree_view_column_cell_set_cell_data( GtkTreeViewColumn* treeColumn, GtkTreeModel* treeModel, GtkTreeIter& iter, Boolean32 isExpander, Boolean32 isExpanded );
		public extern static void gtk_tree_view_column_clear( GtkTreeViewColumn* treeColumn );
		public extern static void gtk_tree_view_column_clear_attributes( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cellRenderer );
		public extern static void gtk_tree_view_column_clicked( GtkTreeViewColumn* treeColumn );
		public extern static void gtk_tree_view_column_focus_cell( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cell );
		public extern static float gtk_tree_view_column_get_alignment( GtkTreeViewColumn* treeColumn );
		public extern static GList* gtk_tree_view_column_get_cell_renderers( GtkTreeViewColumn* treeColumn );
		public extern static Boolean32 gtk_tree_view_column_get_clickable( GtkTreeViewColumn* treeColumn );
		public extern static Boolean32 gtk_tree_view_column_get_expand( GtkTreeViewColumn* treeColumn );
		public extern static int gtk_tree_view_column_get_fixed_width( GtkTreeViewColumn* treeColumn );
		public extern static int gtk_tree_view_column_get_max_width( GtkTreeViewColumn* treeColumn );
		public extern static int gtk_tree_view_column_get_min_width( GtkTreeViewColumn* treeColumn );
		public extern static Boolean32 gtk_tree_view_column_get_reorderable( GtkTreeViewColumn* treeColumn );
		public extern static Boolean32 gtk_tree_view_column_get_resizable( GtkTreeViewColumn* treeColumn );
		public extern static GtkTreeViewColumnSizing gtk_tree_view_column_get_sizing( GtkTreeViewColumn* treeColumn );
		public extern static int gtk_tree_view_column_get_sort_column_id( GtkTreeViewColumn* treeColumn );
		public extern static Boolean32 gtk_tree_view_column_get_sort_indicator( GtkTreeViewColumn* treeColumn );
		public extern static GtkSortType gtk_tree_view_column_get_sort_order( GtkTreeViewColumn* treeColumn );
		public extern static int gtk_tree_view_column_get_spacing( GtkTreeViewColumn* treeColumn );
		public extern static CUtf8String gtk_tree_view_column_get_title( GtkTreeViewColumn* treeColumn );
		public extern static GtkWidget* gtk_tree_view_column_get_tree_view( GtkTreeViewColumn* treeColumn );
		[BackendHintReadNone]
		public extern static GType gtk_tree_view_column_get_type();
		public extern static Boolean32 gtk_tree_view_column_get_visible( GtkTreeViewColumn* treeColumn );
		public extern static GtkWidget* gtk_tree_view_column_get_widget( GtkTreeViewColumn* treeColumn );
		public extern static int gtk_tree_view_column_get_width( GtkTreeViewColumn* treeColumn );
		public extern static GtkTreeViewColumn* gtk_tree_view_column_new();
		public extern static void gtk_tree_view_column_pack_end( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cell, Boolean32 expand );
		public extern static void gtk_tree_view_column_pack_start( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cell, Boolean32 expand );
		public extern static void gtk_tree_view_column_queue_resize( GtkTreeViewColumn* treeColumn );
		public extern static void gtk_tree_view_column_set_alignment( GtkTreeViewColumn* treeColumn, float xalign );
		public extern static void gtk_tree_view_column_set_cell_data_func( GtkTreeViewColumn* treeColumn, GtkCellRenderer* cellRenderer, Functors.Action<GtkTreeViewColumn*, GtkCellRenderer*, GtkTreeModel*, GtkTreeIter*, void*> func, void* funcData, Functors.Action<void*> destroy );
		public extern static void gtk_tree_view_column_set_clickable( GtkTreeViewColumn* treeColumn, Boolean32 clickable );
		public extern static void gtk_tree_view_column_set_expand( GtkTreeViewColumn* treeColumn, Boolean32 expand );
		public extern static void gtk_tree_view_column_set_fixed_width( GtkTreeViewColumn* treeColumn, int fixedWidth );
		public extern static void gtk_tree_view_column_set_max_width( GtkTreeViewColumn* treeColumn, int maxWidth );
		public extern static void gtk_tree_view_column_set_min_width( GtkTreeViewColumn* treeColumn, int minWidth );
		public extern static void gtk_tree_view_column_set_reorderable( GtkTreeViewColumn* treeColumn, Boolean32 reorderable );
		public extern static void gtk_tree_view_column_set_resizable( GtkTreeViewColumn* treeColumn, Boolean32 resizable );
		public extern static void gtk_tree_view_column_set_sizing( GtkTreeViewColumn* treeColumn, GtkTreeViewColumnSizing type );
		public extern static void gtk_tree_view_column_set_sort_column_id( GtkTreeViewColumn* treeColumn, int sortColumnId );
		public extern static void gtk_tree_view_column_set_sort_indicator( GtkTreeViewColumn* treeColumn, Boolean32 setting );
		public extern static void gtk_tree_view_column_set_sort_order( GtkTreeViewColumn* treeColumn, GtkSortType order );
		public extern static void gtk_tree_view_column_set_spacing( GtkTreeViewColumn* treeColumn, int spacing );
		public extern static void gtk_tree_view_column_set_title( GtkTreeViewColumn* treeColumn, CUtf8String title );
		public extern static void gtk_tree_view_column_set_visible( GtkTreeViewColumn* treeColumn, Boolean32 visible );
		public extern static void gtk_tree_view_column_set_widget( GtkTreeViewColumn* treeColumn, GtkWidget* widget );

		public extern static void gtk_cell_layout_add_attribute( GtkCellLayout* cellLayout, GtkCellRenderer* cell, CUtf8String attribute, int column );
		public extern static void gtk_cell_layout_clear( GtkCellLayout* cellLayout );
		public extern static void gtk_cell_layout_clear_attributes( GtkCellLayout* cellLayout, GtkCellRenderer* cell );
		public extern static GList* gtk_cell_layout_get_cells( GtkCellLayout* cellLayout );
		[BackendHintReadNone]
		public extern static GType gtk_cell_layout_get_type();
		public extern static void gtk_cell_layout_pack_end( GtkCellLayout* cellLayout, GtkCellRenderer* cell, Boolean32 expand );
		public extern static void gtk_cell_layout_pack_start( GtkCellLayout* cellLayout, GtkCellRenderer* cell, Boolean32 expand );
		public extern static void gtk_cell_layout_reorder( GtkCellLayout* cellLayout, GtkCellRenderer* cell, int position );
		public extern static void gtk_cell_layout_set_cell_data_func( GtkCellLayout* cellLayout, GtkCellRenderer* cell, Functors.Action<GtkCellLayout*, GtkCellRenderer*, GtkTreeModel*, GtkTreeIter&, void*> func, void* funcData, Functors.Action<void*> destroy );

		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_text_get_type();
		public extern static GtkCellRendererText* gtk_cell_renderer_text_new();
		public extern static void gtk_cell_renderer_text_set_fixed_height_from_font( GtkCellRendererText* renderer, int numberOfRows );

		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_accel_get_type();
		public extern static GtkCellRenderer* gtk_cell_renderer_accel_new();

		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_combo_get_type();
		public extern static GtkCellRenderer* gtk_cell_renderer_combo_new();

		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_pixbuf_get_type();
		public extern static GtkCellRenderer* gtk_cell_renderer_pixbuf_new();

		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_progress_get_type();
		public extern static GtkCellRenderer* gtk_cell_renderer_progress_new();

		public extern static GType gtk_cell_renderer_spin_get_type();
		public extern static GtkCellRenderer* gtk_cell_renderer_spin_new();

		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_spinner_get_type();
		public extern static GtkCellRenderer* gtk_cell_renderer_spinner_new();

		public extern static Boolean32 gtk_cell_renderer_toggle_get_activatable( GtkCellRendererToggle* toggle );
		public extern static Boolean32 gtk_cell_renderer_toggle_get_active( GtkCellRendererToggle* toggle );
		public extern static Boolean32 gtk_cell_renderer_toggle_get_radio( GtkCellRendererToggle* toggle );
		[BackendHintReadNone]
		public extern static GType gtk_cell_renderer_toggle_get_type();
		public extern static GtkCellRendererToggle* gtk_cell_renderer_toggle_new();
		public extern static void gtk_cell_renderer_toggle_set_activatable( GtkCellRendererToggle* toggle, Boolean32 setting );
		public extern static void gtk_cell_renderer_toggle_set_active( GtkCellRendererToggle* toggle, Boolean32 setting );
		public extern static void gtk_cell_renderer_toggle_set_radio( GtkCellRendererToggle* toggle, Boolean32 radio );

		public extern static GList* gtk_cell_view_get_cell_renderers( GtkCellView* cellView );
		public extern static GtkTreePath* gtk_cell_view_get_displayed_row( GtkCellView* cellView );
		public extern static GtkTreeModel* gtk_cell_view_get_model( GtkCellView* cellView );
		public extern static Boolean32 gtk_cell_view_get_size_of_row( GtkCellView* cellView, GtkTreePath* path, GtkRequisition* requisition );
		[BackendHintReadNone]
		public extern static GType gtk_cell_view_get_type();
		public extern static GtkWidget* gtk_cell_view_new();
		public extern static GtkWidget* gtk_cell_view_new_with_markup( CUtf8String markup );
		public extern static GtkWidget* gtk_cell_view_new_with_pixbuf( GdkPixbuf* pixbuf );
		public extern static GtkWidget* gtk_cell_view_new_with_text( CUtf8String text );
		public extern static void gtk_cell_view_set_background_color( GtkCellView* cellView, GdkColor* color );
		public extern static void gtk_cell_view_set_displayed_row( GtkCellView* cellView, GtkTreePath* path );
		public extern static void gtk_cell_view_set_model( GtkCellView* cellView, GtkTreeModel* model );

		public extern static Boolean32 gtk_toggle_button_get_active( GtkToggleButton* toggleButton );
		public extern static Boolean32 gtk_toggle_button_get_inconsistent( GtkToggleButton* toggleButton );
		public extern static Boolean32 gtk_toggle_button_get_mode( GtkToggleButton* toggleButton );
		[BackendHintReadNone]
		public extern static GType gtk_toggle_button_get_type();
		public extern static GtkToggleButton* gtk_toggle_button_new();
		public extern static GtkToggleButton* gtk_toggle_button_new_with_label( CUtf8String label );
		public extern static GtkToggleButton* gtk_toggle_button_new_with_mnemonic( CUtf8String label );
		public extern static void gtk_toggle_button_set_active( GtkToggleButton* toggleButton, Boolean32 isActive );
		public extern static void gtk_toggle_button_set_inconsistent( GtkToggleButton* toggleButton, Boolean32 setting );
		public extern static void gtk_toggle_button_set_mode( GtkToggleButton* toggleButton, Boolean32 drawIndicator );
		public extern static void gtk_toggle_button_toggled( GtkToggleButton* toggleButton );

		[BackendHintReadNone]
		public extern static GType gtk_check_button_get_type();
		public extern static GtkCheckButton* gtk_check_button_new();
		public extern static GtkCheckButton* gtk_check_button_new_with_label( CUtf8String label );
		public extern static GtkCheckButton* gtk_check_button_new_with_mnemonic( CUtf8String label );

		public extern static void gtk_item_deselect( GtkItem* item );
		[BackendHintReadNone]
		public extern static GType gtk_item_get_type();
		public extern static void gtk_item_select( GtkItem* item );
		public extern static void gtk_item_toggle( GtkItem* item );

		public extern static void gtk_menu_item_activate( GtkMenuItem* menuItem );
		public extern static void gtk_menu_item_deselect( GtkMenuItem* menuItem );
		public extern static sbyte* gtk_menu_item_get_accel_path( GtkMenuItem* menuItem );
		public extern static sbyte* gtk_menu_item_get_label( GtkMenuItem* menuItem );
		public extern static Boolean32 gtk_menu_item_get_right_justified( GtkMenuItem* menuItem );
		public extern static GtkWidget* gtk_menu_item_get_submenu( GtkMenuItem* menuItem );
		[BackendHintReadNone]
		public extern static GType gtk_menu_item_get_type();
		public extern static Boolean32 gtk_menu_item_get_use_underline( GtkMenuItem* menuItem );
		public extern static GtkMenuItem* gtk_menu_item_new();
		public extern static GtkMenuItem* gtk_menu_item_new_with_label( CUtf8String label );
		public extern static GtkMenuItem* gtk_menu_item_new_with_mnemonic( CUtf8String label );
		public extern static void gtk_menu_item_remove_submenu( GtkMenuItem* menuItem );
		public extern static void gtk_menu_item_select( GtkMenuItem* menuItem );
		public extern static void gtk_menu_item_set_accel_path( GtkMenuItem* menuItem, CUtf8String accelPath );
		public extern static void gtk_menu_item_set_label( GtkMenuItem* menuItem, sbyte* label );
		public extern static void gtk_menu_item_set_right_justified( GtkMenuItem* menuItem, Boolean32 rightJustified );
		public extern static void gtk_menu_item_set_submenu( GtkMenuItem* menuItem, GtkWidget* submenu );
		public extern static void gtk_menu_item_set_use_underline( GtkMenuItem* menuItem, Boolean32 setting );
		public extern static void gtk_menu_item_toggle_size_allocate( GtkMenuItem* menuItem, int allocation );
		public extern static void gtk_menu_item_toggle_size_request( GtkMenuItem* menuItem, int* requisition );

		public extern static Boolean32 gtk_check_menu_item_get_active( GtkCheckMenuItem* checkMenuItem );
		public extern static Boolean32 gtk_check_menu_item_get_draw_as_radio( GtkCheckMenuItem* checkMenuItem );
		public extern static Boolean32 gtk_check_menu_item_get_inconsistent( GtkCheckMenuItem* checkMenuItem );
		[BackendHintReadNone]
		public extern static GType gtk_check_menu_item_get_type();
		public extern static GtkCheckMenuItem* gtk_check_menu_item_new();
		public extern static GtkCheckMenuItem* gtk_check_menu_item_new_with_label( CUtf8String label );
		public extern static GtkCheckMenuItem* gtk_check_menu_item_new_with_mnemonic( CUtf8String label );
		public extern static void gtk_check_menu_item_set_active( GtkCheckMenuItem* checkMenuItem, Boolean32 isActive );
		public extern static void gtk_check_menu_item_set_draw_as_radio( GtkCheckMenuItem* checkMenuItem, Boolean32 drawAsRadio );
		public extern static void gtk_check_menu_item_set_inconsistent( GtkCheckMenuItem* checkMenuItem, Boolean32 setting );
		public extern static void gtk_check_menu_item_set_show_toggle( GtkCheckMenuItem* menuItem, Boolean32 always );
		public extern static void gtk_check_menu_item_toggled( GtkCheckMenuItem* checkMenuItem );

		public extern static GtkTextAttributes* gtk_text_attributes_copy( GtkTextAttributes* src );
		public extern static void gtk_text_attributes_copy_values( GtkTextAttributes* src, GtkTextAttributes* dest );
		[BackendHintReadNone]
		public extern static GType gtk_text_attributes_get_type();
		public extern static GtkTextAttributes* gtk_text_attributes_new();
		public extern static GtkTextAttributes* gtk_text_attributes_ref( GtkTextAttributes* values );
		public extern static void gtk_text_attributes_unref( GtkTextAttributes* values );
		public extern static Boolean32 gtk_text_tag_event( GtkTextTag* tag, GObject* eventObject, GdkEvent* @event, GtkTextIter* iter );
		public extern static int gtk_text_tag_get_priority( GtkTextTag* tag );
		[BackendHintReadNone]
		public extern static GType gtk_text_tag_get_type();
		public extern static GtkTextTag* gtk_text_tag_new( CUtf8String name );
		public extern static void gtk_text_tag_set_priority( GtkTextTag* tag, int priority );

		public extern static Boolean32 gtk_text_child_anchor_get_deleted( GtkTextChildAnchor* anchor );
		[BackendHintReadNone]
		public extern static GType gtk_text_child_anchor_get_type();
		public extern static GList* gtk_text_child_anchor_get_widgets( GtkTextChildAnchor* anchor );
		public extern static GtkTextChildAnchor* gtk_text_child_anchor_new();

		public extern static Boolean32 gtk_text_iter_backward_char( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_chars( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_cursor_position( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_cursor_positions( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_find_char( GtkTextIter* iter, Functors.Func<uint, void*, Boolean32> pred, void* userData, GtkTextIter* limit );
		public extern static Boolean32 gtk_text_iter_backward_line( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_lines( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_search( GtkTextIter* iter, CUtf8String str, GtkTextSearchFlags flags, GtkTextIter* matchStart, GtkTextIter* matchEnd, GtkTextIter* limit );
		public extern static Boolean32 gtk_text_iter_backward_sentence_start( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_sentence_starts( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_to_tag_toggle( GtkTextIter* iter, GtkTextTag* tag );
		public extern static Boolean32 gtk_text_iter_backward_visible_cursor_position( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_visible_cursor_positions( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_visible_line( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_visible_lines( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_visible_word_start( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_visible_word_starts( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_backward_word_start( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_backward_word_starts( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_begins_tag( GtkTextIter* iter, GtkTextTag* tag );
		public extern static Boolean32 gtk_text_iter_can_insert( GtkTextIter* iter, Boolean32 defaultEditability );
		public extern static int gtk_text_iter_compare( GtkTextIter* lhs, GtkTextIter* rhs );
		public extern static GtkTextIter* gtk_text_iter_copy( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_editable( GtkTextIter* iter, Boolean32 defaultSetting );
		public extern static Boolean32 gtk_text_iter_ends_line( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_ends_sentence( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_ends_tag( GtkTextIter* iter, GtkTextTag* tag );
		public extern static Boolean32 gtk_text_iter_ends_word( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_equal( GtkTextIter* lhs, GtkTextIter* rhs );
		public extern static Boolean32 gtk_text_iter_forward_char( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_chars( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_forward_cursor_position( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_cursor_positions( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_forward_find_char( GtkTextIter* iter, Functors.Func<uint, void*, Boolean32> pred, void* userData, GtkTextIter* limit );
		public extern static Boolean32 gtk_text_iter_forward_line( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_lines( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_forward_search( GtkTextIter* iter, CUtf8String str, GtkTextSearchFlags flags, GtkTextIter* matchStart, GtkTextIter* matchEnd, GtkTextIter* limit );
		public extern static Boolean32 gtk_text_iter_forward_sentence_end( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_sentence_ends( GtkTextIter* iter, int count );
		public extern static void gtk_text_iter_forward_to_end( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_to_line_end( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_to_tag_toggle( GtkTextIter* iter, GtkTextTag* tag );
		public extern static Boolean32 gtk_text_iter_forward_visible_cursor_position( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_visible_cursor_positions( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_forward_visible_line( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_visible_lines( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_forward_visible_word_end( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_visible_word_ends( GtkTextIter* iter, int count );
		public extern static Boolean32 gtk_text_iter_forward_word_end( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_forward_word_ends( GtkTextIter* iter, int count );
		public extern static void gtk_text_iter_free( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_get_attributes( GtkTextIter* iter, GtkTextAttributes* values );
		public extern static GtkTextBuffer* gtk_text_iter_get_buffer( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_bytes_in_line( GtkTextIter* iter );
		public extern static uint gtk_text_iter_get_char( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_chars_in_line( GtkTextIter* iter );
		public extern static GtkTextChildAnchor* gtk_text_iter_get_child_anchor( GtkTextIter* iter );
		public extern static PangoLanguage* gtk_text_iter_get_language( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_line( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_line_index( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_line_offset( GtkTextIter* iter );
		public extern static GSList* gtk_text_iter_get_marks( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_offset( GtkTextIter* iter );
		public extern static GdkPixbuf* gtk_text_iter_get_pixbuf( GtkTextIter* iter );
		public extern static sbyte* gtk_text_iter_get_slice( GtkTextIter* start, GtkTextIter* end );
		public extern static GSList* gtk_text_iter_get_tags( GtkTextIter* iter );
		public extern static sbyte* gtk_text_iter_get_text( GtkTextIter* start, GtkTextIter* end );
		public extern static GSList* gtk_text_iter_get_toggled_tags( GtkTextIter* iter, Boolean32 toggledOn );
		[BackendHintReadNone]
		public extern static GType gtk_text_iter_get_type();
		public extern static int gtk_text_iter_get_visible_line_index( GtkTextIter* iter );
		public extern static int gtk_text_iter_get_visible_line_offset( GtkTextIter* iter );
		public extern static sbyte* gtk_text_iter_get_visible_slice( GtkTextIter* start, GtkTextIter* end );
		public extern static sbyte* gtk_text_iter_get_visible_text( GtkTextIter* start, GtkTextIter* end );
		public extern static Boolean32 gtk_text_iter_has_tag( GtkTextIter* iter, GtkTextTag* tag );
		public extern static Boolean32 gtk_text_iter_in_range( GtkTextIter* iter, GtkTextIter* start, GtkTextIter* end );
		public extern static Boolean32 gtk_text_iter_inside_sentence( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_inside_word( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_is_cursor_position( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_is_end( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_is_start( GtkTextIter* iter );
		public extern static void gtk_text_iter_order( GtkTextIter* first, GtkTextIter* second );
		public extern static void gtk_text_iter_set_line( GtkTextIter* iter, int lineNumber );
		public extern static void gtk_text_iter_set_line_index( GtkTextIter* iter, int byteOnLine );
		public extern static void gtk_text_iter_set_line_offset( GtkTextIter* iter, int charOnLine );
		public extern static void gtk_text_iter_set_offset( GtkTextIter* iter, int charOffset );
		public extern static void gtk_text_iter_set_visible_line_index( GtkTextIter* iter, int byteOnLine );
		public extern static void gtk_text_iter_set_visible_line_offset( GtkTextIter* iter, int charOnLine );
		public extern static Boolean32 gtk_text_iter_starts_line( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_starts_sentence( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_starts_word( GtkTextIter* iter );
		public extern static Boolean32 gtk_text_iter_toggles_tag( GtkTextIter* iter, GtkTextTag* tag );

		public extern static void gtk_selection_add_target( GtkWidget* widget, GdkAtom* selection, GdkAtom* target, uint info );
		public extern static void gtk_selection_add_targets( GtkWidget* widget, GdkAtom* selection, GtkTargetEntry* targets, uint ntargets );
		public extern static Boolean32 gtk_selection_clear( GtkWidget* widget, GdkEventSelection* @event );
		public extern static void gtk_selection_clear_targets( GtkWidget* widget, GdkAtom* selection );
		public extern static Boolean32 gtk_selection_convert( GtkWidget* widget, GdkAtom* selection, GdkAtom* target, uint time_ );
		public extern static GtkSelectionData* gtk_selection_data_copy( GtkSelectionData* data );
		public extern static void gtk_selection_data_free( GtkSelectionData* data );
		public extern static byte* gtk_selection_data_get_data( GtkSelectionData* selectionData );
		public extern static GdkAtom* gtk_selection_data_get_data_type( GtkSelectionData* selectionData );
		public extern static GdkDisplay* gtk_selection_data_get_display( GtkSelectionData* selectionData );
		public extern static int gtk_selection_data_get_format( GtkSelectionData* selectionData );
		public extern static int gtk_selection_data_get_length( GtkSelectionData* selectionData );
		public extern static GdkPixbuf* gtk_selection_data_get_pixbuf( GtkSelectionData* selectionData );
		public extern static GdkAtom* gtk_selection_data_get_selection( GtkSelectionData* selectionData );
		public extern static GdkAtom* gtk_selection_data_get_target( GtkSelectionData* selectionData );
		public extern static Boolean32 gtk_selection_data_get_targets( GtkSelectionData* selectionData, GdkAtom*** targets, int* nAtoms );
		public extern static byte* gtk_selection_data_get_text( GtkSelectionData* selectionData );
		[BackendHintReadNone]
		public extern static GType gtk_selection_data_get_type();
		public extern static sbyte** gtk_selection_data_get_uris( GtkSelectionData* selectionData );
		public extern static void gtk_selection_data_set( GtkSelectionData* selectionData, GdkAtom* type, int format, byte* data, int length );
		public extern static Boolean32 gtk_selection_data_set_pixbuf( GtkSelectionData* selectionData, GdkPixbuf* pixbuf );
		public extern static Boolean32 gtk_selection_data_set_text( GtkSelectionData* selectionData, sbyte* str, int len );
		public extern static Boolean32 gtk_selection_data_set_uris( GtkSelectionData* selectionData, sbyte** uris );
		public extern static Boolean32 gtk_selection_data_targets_include_image( GtkSelectionData* selectionData, Boolean32 writable );
		public extern static Boolean32 gtk_selection_data_targets_include_rich_text( GtkSelectionData* selectionData, GtkTextBuffer* buffer );
		public extern static Boolean32 gtk_selection_data_targets_include_text( GtkSelectionData* selectionData );
		public extern static Boolean32 gtk_selection_data_targets_include_uri( GtkSelectionData* selectionData );
		public extern static Boolean32 gtk_selection_owner_set( GtkWidget* widget, GdkAtom* selection, uint time_ );
		public extern static Boolean32 gtk_selection_owner_set_for_display( GdkDisplay* display, GtkWidget* widget, GdkAtom* selection, uint time_ );
		public extern static void gtk_selection_remove_all( GtkWidget* widget );
		public extern static void gtk_target_list_add( GtkTargetList* list, GdkAtom* target, uint flags, uint info );
		public extern static void gtk_target_list_add_image_targets( GtkTargetList* list, uint info, Boolean32 writable );
		public extern static void gtk_target_list_add_rich_text_targets( GtkTargetList* list, uint info, Boolean32 deserializable, GtkTextBuffer* buffer );
		public extern static void gtk_target_list_add_table( GtkTargetList* list, GtkTargetEntry* targets, uint ntargets );
		public extern static void gtk_target_list_add_text_targets( GtkTargetList* list, uint info );
		public extern static void gtk_target_list_add_uri_targets( GtkTargetList* list, uint info );
		public extern static Boolean32 gtk_target_list_find( GtkTargetList* list, GdkAtom* target, uint* info );
		[BackendHintReadNone]
		public extern static GType gtk_target_list_get_type();
		public extern static GtkTargetList* gtk_target_list_new( GtkTargetEntry* targets, uint ntargets );
		public extern static GtkTargetList* gtk_target_list_ref( GtkTargetList* list );
		public extern static void gtk_target_list_remove( GtkTargetList* list, GdkAtom* target );
		public extern static void gtk_target_list_unref( GtkTargetList* list );
		public extern static void gtk_target_table_free( GtkTargetEntry* targets, int nTargets );
		public extern static GtkTargetEntry* gtk_target_table_new_from_list( GtkTargetList* list, int* nTargets );
		public extern static Boolean32 gtk_targets_include_image( GdkAtom** targets, int nTargets, Boolean32 writable );
		public extern static Boolean32 gtk_targets_include_rich_text( GdkAtom** targets, int nTargets, GtkTextBuffer* buffer );
		public extern static Boolean32 gtk_targets_include_text( GdkAtom** targets, int nTargets );
		public extern static Boolean32 gtk_targets_include_uri( GdkAtom** targets, int nTargets );

		public extern static void gtk_clipboard_clear( GtkClipboard* clipboard );
		public extern static GtkClipboard* gtk_clipboard_get( GdkAtom* selection );
		public extern static GdkDisplay* gtk_clipboard_get_display( GtkClipboard* clipboard );
		public extern static GtkClipboard* gtk_clipboard_get_for_display( GdkDisplay* display, GdkAtom* selection );
		public extern static GObject* gtk_clipboard_get_owner( GtkClipboard* clipboard );
		[BackendHintReadNone]
		public extern static GType gtk_clipboard_get_type();
		public extern static void gtk_clipboard_request_contents( GtkClipboard* clipboard, GdkAtom* target, Functors.Action<GtkClipboard*, GtkSelectionData*, void*> callback, void* userData );
		public extern static void gtk_clipboard_request_image( GtkClipboard* clipboard, Functors.Action<GtkClipboard*, GdkPixbuf*, void*> callback, void* userData );
		public extern static void gtk_clipboard_request_rich_text( GtkClipboard* clipboard, GtkTextBuffer* buffer, Functors.Action<GtkClipboard*, GdkAtom*, byte*, uint, void*> callback, void* userData );
		public extern static void gtk_clipboard_request_targets( GtkClipboard* clipboard, Functors.Action<GtkClipboard*, GdkAtom**, int, void*> callback, void* userData );
		public extern static void gtk_clipboard_request_text( GtkClipboard* clipboard, Functors.Action<GtkClipboard*, sbyte*, void*> callback, void* userData );
		public extern static void gtk_clipboard_request_uris( GtkClipboard* clipboard, Functors.Action<GtkClipboard*, sbyte**, void*> callback, void* userData );
		public extern static void gtk_clipboard_set_can_store( GtkClipboard* clipboard, GtkTargetEntry* targets, int nTargets );
		public extern static void gtk_clipboard_set_image( GtkClipboard* clipboard, GdkPixbuf* pixbuf );
		public extern static void gtk_clipboard_set_text( GtkClipboard* clipboard, CUtf8String text, int len );
		public extern static Boolean32 gtk_clipboard_set_with_data( GtkClipboard* clipboard, GtkTargetEntry* targets, uint nTargets, Functors.Action<GtkClipboard*, GtkSelectionData*, uint, void*> getFunc, Functors.Action<GtkClipboard*, void*> clearFunc, void* userData );
		public extern static Boolean32 gtk_clipboard_set_with_owner( GtkClipboard* clipboard, GtkTargetEntry* targets, uint nTargets, Functors.Action<GtkClipboard*, GtkSelectionData*, uint, void*> getFunc, Functors.Action<GtkClipboard*, void*> clearFunc, GObject* owner );
		public extern static void gtk_clipboard_store( GtkClipboard* clipboard );
		public extern static GtkSelectionData* gtk_clipboard_wait_for_contents( GtkClipboard* clipboard, GdkAtom* target );
		public extern static GdkPixbuf* gtk_clipboard_wait_for_image( GtkClipboard* clipboard );
		public extern static byte* gtk_clipboard_wait_for_rich_text( GtkClipboard* clipboard, GtkTextBuffer* buffer, GdkAtom** format, uint* length );
		public extern static Boolean32 gtk_clipboard_wait_for_targets( GtkClipboard* clipboard, GdkAtom*** targets, int* nTargets );
		public extern static sbyte* gtk_clipboard_wait_for_text( GtkClipboard* clipboard );
		public extern static sbyte** gtk_clipboard_wait_for_uris( GtkClipboard* clipboard );
		public extern static Boolean32 gtk_clipboard_wait_is_image_available( GtkClipboard* clipboard );
		public extern static Boolean32 gtk_clipboard_wait_is_rich_text_available( GtkClipboard* clipboard, GtkTextBuffer* buffer );
		public extern static Boolean32 gtk_clipboard_wait_is_target_available( GtkClipboard* clipboard, GdkAtom* target );
		public extern static Boolean32 gtk_clipboard_wait_is_text_available( GtkClipboard* clipboard );
		public extern static Boolean32 gtk_clipboard_wait_is_uris_available( GtkClipboard* clipboard );

		public extern static ushort gtk_color_button_get_alpha( GtkColorButton* colorButton );
		public extern static void gtk_color_button_get_color( GtkColorButton* colorButton, GdkColor* color );
		public extern static sbyte* gtk_color_button_get_title( GtkColorButton* colorButton );
		[BackendHintReadNone]
		public extern static GType gtk_color_button_get_type();
		public extern static Boolean32 gtk_color_button_get_use_alpha( GtkColorButton* colorButton );
		public extern static GtkWidget* gtk_color_button_new();
		public extern static GtkWidget* gtk_color_button_new_with_color( GdkColor* color );
		public extern static void gtk_color_button_set_alpha( GtkColorButton* colorButton, ushort alpha );
		public extern static void gtk_color_button_set_color( GtkColorButton* colorButton, GdkColor* color );
		public extern static void gtk_color_button_set_title( GtkColorButton* colorButton, sbyte* title );
		public extern static void gtk_color_button_set_use_alpha( GtkColorButton* colorButton, Boolean32 useAlpha );

		[BackendHintReadNone]
		public extern static GType gtk_vbox_get_type();
		public extern static GtkVBox* gtk_vbox_new( Boolean32 homogeneous, int spacing );

		public extern static void gtk_color_selection_get_color( GtkColorSelection* colorsel, double* color );
		public extern static ushort gtk_color_selection_get_current_alpha( GtkColorSelection* colorsel );
		public extern static void gtk_color_selection_get_current_color( GtkColorSelection* colorsel, GdkColor* color );
		public extern static Boolean32 gtk_color_selection_get_has_opacity_control( GtkColorSelection* colorsel );
		public extern static Boolean32 gtk_color_selection_get_has_palette( GtkColorSelection* colorsel );
		public extern static ushort gtk_color_selection_get_previous_alpha( GtkColorSelection* colorsel );
		public extern static void gtk_color_selection_get_previous_color( GtkColorSelection* colorsel, GdkColor* color );
		[BackendHintReadNone]
		public extern static GType gtk_color_selection_get_type();
		public extern static Boolean32 gtk_color_selection_is_adjusting( GtkColorSelection* colorsel );
		public extern static GtkWidget* gtk_color_selection_new();
		public extern static Boolean32 gtk_color_selection_palette_from_string( sbyte* str, GdkColor** colors, int* nColors );
		public extern static sbyte* gtk_color_selection_palette_to_string( GdkColor* colors, int nColors );
		public extern static Functors.Action<GdkColor*, int> gtk_color_selection_set_change_palette_hook( Functors.Action<GdkColor*, int> func );
		public extern static Functors.Action<GdkScreen*, GdkColor*, int> gtk_color_selection_set_change_palette_with_screen_hook( Functors.Action<GdkScreen*, GdkColor*, int> func );
		public extern static void gtk_color_selection_set_color( GtkColorSelection* colorsel, double* color );
		public extern static void gtk_color_selection_set_current_alpha( GtkColorSelection* colorsel, ushort alpha );
		public extern static void gtk_color_selection_set_current_color( GtkColorSelection* colorsel, GdkColor* color );
		public extern static void gtk_color_selection_set_has_opacity_control( GtkColorSelection* colorsel, Boolean32 hasOpacity );
		public extern static void gtk_color_selection_set_has_palette( GtkColorSelection* colorsel, Boolean32 hasPalette );
		public extern static void gtk_color_selection_set_previous_alpha( GtkColorSelection* colorsel, ushort alpha );
		public extern static void gtk_color_selection_set_previous_color( GtkColorSelection* colorsel, GdkColor* color );
		public extern static void gtk_color_selection_set_update_policy( GtkColorSelection* colorsel, GtkUpdateType policy );

		public extern static GtkWidget* gtk_color_selection_dialog_get_color_selection( GtkColorSelectionDialog* colorsel );
		[BackendHintReadNone]
		public extern static GType gtk_color_selection_dialog_get_type();
		public extern static GtkWidget* gtk_color_selection_dialog_new( sbyte* title );

		public extern static GdkDragContext* gtk_drag_begin( GtkWidget* widget, GtkTargetList* targets, GdkDragAction actions, int button, GdkEvent* @event );
		public extern static Boolean32 gtk_drag_check_threshold( GtkWidget* widget, int startX, int startY, int currentX, int currentY );
		public extern static void gtk_drag_dest_add_image_targets( GtkWidget* widget );
		public extern static void gtk_drag_dest_add_text_targets( GtkWidget* widget );
		public extern static void gtk_drag_dest_add_uri_targets( GtkWidget* widget );
		public extern static GdkAtom* gtk_drag_dest_find_target( GtkWidget* widget, GdkDragContext* context, GtkTargetList* targetList );
		public extern static GtkTargetList* gtk_drag_dest_get_target_list( GtkWidget* widget );
		public extern static Boolean32 gtk_drag_dest_get_track_motion( GtkWidget* widget );
		public extern static void gtk_drag_dest_set( GtkWidget* widget, GtkDestDefaults flags, GtkTargetEntry* targets, int nTargets, GdkDragAction actions );
		public extern static void gtk_drag_dest_set_proxy( GtkWidget* widget, GdkDrawable* proxyWindow, GdkDragProtocol protocol, Boolean32 useCoordinates );
		public extern static void gtk_drag_dest_set_target_list( GtkWidget* widget, GtkTargetList* targetList );
		public extern static void gtk_drag_dest_set_track_motion( GtkWidget* widget, Boolean32 trackMotion );
		public extern static void gtk_drag_dest_unset( GtkWidget* widget );
		public extern static void gtk_drag_finish( GdkDragContext* context, Boolean32 success, Boolean32 del, uint time_ );
		public extern static void gtk_drag_get_data( GtkWidget* widget, GdkDragContext* context, GdkAtom* target, uint time_ );
		public extern static GtkWidget* gtk_drag_get_source_widget( GdkDragContext* context );
		public extern static void gtk_drag_highlight( GtkWidget* widget );
		public extern static void gtk_drag_set_default_icon( GdkColormap* colormap, GdkDrawable* pixmap, GdkDrawable* mask, int hotX, int hotY );
		public extern static void gtk_drag_set_icon_default( GdkDragContext* context );
		public extern static void gtk_drag_set_icon_name( GdkDragContext* context, CUtf8String iconName, int hotX, int hotY );
		public extern static void gtk_drag_set_icon_pixbuf( GdkDragContext* context, GdkPixbuf* pixbuf, int hotX, int hotY );
		public extern static void gtk_drag_set_icon_pixmap( GdkDragContext* context, GdkColormap* colormap, GdkDrawable* pixmap, GdkDrawable* mask, int hotX, int hotY );
		public extern static void gtk_drag_set_icon_stock( GdkDragContext* context, CUtf8String stockId, int hotX, int hotY );
		public extern static void gtk_drag_set_icon_widget( GdkDragContext* context, GtkWidget* widget, int hotX, int hotY );
		public extern static void gtk_drag_source_add_image_targets( GtkWidget* widget );
		public extern static void gtk_drag_source_add_text_targets( GtkWidget* widget );
		public extern static void gtk_drag_source_add_uri_targets( GtkWidget* widget );
		public extern static GtkTargetList* gtk_drag_source_get_target_list( GtkWidget* widget );
		public extern static void gtk_drag_source_set( GtkWidget* widget, GdkModifierType startButtonMask, GtkTargetEntry* targets, int nTargets, GdkDragAction actions );
		public extern static void gtk_drag_source_set_icon( GtkWidget* widget, GdkColormap* colormap, GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_drag_source_set_icon_name( GtkWidget* widget, CUtf8String iconName );
		public extern static void gtk_drag_source_set_icon_pixbuf( GtkWidget* widget, GdkPixbuf* pixbuf );
		public extern static void gtk_drag_source_set_icon_stock( GtkWidget* widget, CUtf8String stockId );
		public extern static void gtk_drag_source_set_target_list( GtkWidget* widget, GtkTargetList* targetList );
		public extern static void gtk_drag_source_unset( GtkWidget* widget );
		public extern static void gtk_drag_unhighlight( GtkWidget* widget );

		public extern static void gtk_editable_copy_clipboard( GtkEditable* editable );
		public extern static void gtk_editable_cut_clipboard( GtkEditable* editable );
		public extern static void gtk_editable_delete_selection( GtkEditable* editable );
		public extern static void gtk_editable_delete_text( GtkEditable* editable, int startPos, int endPos );
		public extern static sbyte* gtk_editable_get_chars( GtkEditable* editable, int startPos, int endPos );
		public extern static Boolean32 gtk_editable_get_editable( GtkEditable* editable );
		public extern static int gtk_editable_get_position( GtkEditable* editable );
		public extern static Boolean32 gtk_editable_get_selection_bounds( GtkEditable* editable, int* startPos, int* endPos );
		[BackendHintReadNone]
		public extern static GType gtk_editable_get_type();
		public extern static void gtk_editable_insert_text( GtkEditable* editable, CUtf8String newText, int newTextLength, int* position );
		public extern static void gtk_editable_paste_clipboard( GtkEditable* editable );
		public extern static void gtk_editable_select_region( GtkEditable* editable, int startPos, int endPos );
		public extern static void gtk_editable_set_editable( GtkEditable* editable, Boolean32 isEditable );
		public extern static void gtk_editable_set_position( GtkEditable* editable, int position );

		public extern static Boolean32 gtk_im_context_delete_surrounding( GtkIMContext* context, int offset, int nChars );
		public extern static Boolean32 gtk_im_context_filter_keypress( GtkIMContext* context, GdkEventKey* @event );
		public extern static void gtk_im_context_focus_in( GtkIMContext* context );
		public extern static void gtk_im_context_focus_out( GtkIMContext* context );
		public extern static void gtk_im_context_get_preedit_string( GtkIMContext* context, sbyte** str, PangoAttrList** attrs, int* cursorPos );
		public extern static Boolean32 gtk_im_context_get_surrounding( GtkIMContext* context, sbyte** text, int* cursorIndex );
		[BackendHintReadNone]
		public extern static GType gtk_im_context_get_type();
		public extern static void gtk_im_context_reset( GtkIMContext* context );
		public extern static void gtk_im_context_set_client_window( GtkIMContext* context, GdkDrawable* window );
		public extern static void gtk_im_context_set_cursor_location( GtkIMContext* context, GdkRectangle* area );
		public extern static void gtk_im_context_set_surrounding( GtkIMContext* context, CUtf8String text, int len, int cursorIndex );
		public extern static void gtk_im_context_set_use_preedit( GtkIMContext* context, Boolean32 usePreedit );

		public extern static uint gtk_entry_buffer_delete_text( GtkEntryBuffer* buffer, uint position, int nChars );
		public extern static void gtk_entry_buffer_emit_deleted_text( GtkEntryBuffer* buffer, uint position, uint nChars );
		public extern static void gtk_entry_buffer_emit_inserted_text( GtkEntryBuffer* buffer, uint position, sbyte* chars, uint nChars );
		public extern static uint gtk_entry_buffer_get_bytes( GtkEntryBuffer* buffer );
		public extern static uint gtk_entry_buffer_get_length( GtkEntryBuffer* buffer );
		public extern static int gtk_entry_buffer_get_max_length( GtkEntryBuffer* buffer );
		public extern static sbyte* gtk_entry_buffer_get_text( GtkEntryBuffer* buffer );
		[BackendHintReadNone]
		public extern static GType gtk_entry_buffer_get_type();
		public extern static uint gtk_entry_buffer_insert_text( GtkEntryBuffer* buffer, uint position, sbyte* chars, int nChars );
		public extern static GtkEntryBuffer* gtk_entry_buffer_new( sbyte* initialChars, int nInitialChars );
		public extern static void gtk_entry_buffer_set_max_length( GtkEntryBuffer* buffer, int maxLength );
		public extern static void gtk_entry_buffer_set_text( GtkEntryBuffer* buffer, sbyte* chars, int nChars );

		public extern static void gtk_list_store_append( GtkListStore* listStore, GtkTreeIter* iter );
		public extern static void gtk_list_store_clear( GtkListStore* listStore );
		[BackendHintReadNone]
		public extern static GType gtk_list_store_get_type();
		public extern static void gtk_list_store_insert( GtkListStore* listStore, GtkTreeIter& iter, int position );
		public extern static void gtk_list_store_insert_after( GtkListStore* listStore, GtkTreeIter& iter, GtkTreeIter& sibling );
		public extern static void gtk_list_store_insert_before( GtkListStore* listStore, GtkTreeIter& iter, GtkTreeIter& sibling );
		public extern static void gtk_list_store_insert_with_valuesv( GtkListStore* listStore, GtkTreeIter& iter, int position, int* columns, GValue* values, int nValues );
		public extern static Boolean32 gtk_list_store_iter_is_valid( GtkListStore* listStore, GtkTreeIter& iter );
		public extern static void gtk_list_store_move_after( GtkListStore* store, GtkTreeIter& iter, GtkTreeIter& position );
		public extern static void gtk_list_store_move_before( GtkListStore* store, GtkTreeIter& iter, GtkTreeIter& position );
		public extern static GtkListStore* gtk_list_store_newv( int nColumns, GType* types );
		public extern static void gtk_list_store_prepend( GtkListStore* listStore, GtkTreeIter& iter );
		public extern static Boolean32 gtk_list_store_remove( GtkListStore* listStore, GtkTreeIter& iter );
		public extern static void gtk_list_store_reorder( GtkListStore* store, int* newOrder );
		public extern static void gtk_list_store_set_column_types( GtkListStore* listStore, int nColumns, uintptr* types );
		public extern static void gtk_list_store_set_valist( GtkListStore* listStore, GtkTreeIter& iter, sbyte* varArgs );
		public extern static void gtk_list_store_set_value( GtkListStore* listStore, GtkTreeIter& iter, int column, GValue& value );
		public extern static void gtk_list_store_set_valuesv( GtkListStore* listStore, GtkTreeIter& iter, int* columns, GValue* values, int nValues );
		public extern static void gtk_list_store_swap( GtkListStore* store, GtkTreeIter& a, GtkTreeIter& b );

		public extern static void gtk_tree_model_filter_clear_cache( GtkTreeModelFilter* filter );
		public extern static Boolean32 gtk_tree_model_filter_convert_child_iter_to_iter( GtkTreeModelFilter* filter, GtkTreeIter& filterIter, GtkTreeIter& childIter );
		public extern static GtkTreePath* gtk_tree_model_filter_convert_child_path_to_path( GtkTreeModelFilter* filter, GtkTreePath* childPath );
		public extern static void gtk_tree_model_filter_convert_iter_to_child_iter( GtkTreeModelFilter* filter, GtkTreeIter& childIter, GtkTreeIter& filterIter );
		public extern static GtkTreePath* gtk_tree_model_filter_convert_path_to_child_path( GtkTreeModelFilter* filter, GtkTreePath* filterPath );
		public extern static GtkTreeModel* gtk_tree_model_filter_get_model( GtkTreeModelFilter* filter );
		[BackendHintReadNone]
		public extern static GType gtk_tree_model_filter_get_type();
		public extern static GtkTreeModel* gtk_tree_model_filter_new( GtkTreeModel* childModel, GtkTreePath* root );
		public extern static void gtk_tree_model_filter_refilter( GtkTreeModelFilter* filter );
		public extern static void gtk_tree_model_filter_set_modify_func( GtkTreeModelFilter* filter, int nColumns, uintptr* types, Functors.Action<GtkTreeModel*, GtkTreeIter&, GValue*, int, void*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_tree_model_filter_set_visible_column( GtkTreeModelFilter* filter, int column );
		public extern static void gtk_tree_model_filter_set_visible_func( GtkTreeModelFilter* filter, Functors.Func<GtkTreeModel*, GtkTreeIter&, void*, Boolean32> func, void* data, Functors.Action<void*> destroy );

		public extern static void gtk_entry_completion_complete( GtkEntryCompletion* completion );
		public extern static void gtk_entry_completion_delete_action( GtkEntryCompletion* completion, int index_ );
		public extern static CUtf8String gtk_entry_completion_get_completion_prefix( GtkEntryCompletion* completion );
		public extern static GtkWidget* gtk_entry_completion_get_entry( GtkEntryCompletion* completion );
		public extern static Boolean32 gtk_entry_completion_get_inline_completion( GtkEntryCompletion* completion );
		public extern static Boolean32 gtk_entry_completion_get_inline_selection( GtkEntryCompletion* completion );
		public extern static int gtk_entry_completion_get_minimum_key_length( GtkEntryCompletion* completion );
		public extern static GtkTreeModel* gtk_entry_completion_get_model( GtkEntryCompletion* completion );
		public extern static Boolean32 gtk_entry_completion_get_popup_completion( GtkEntryCompletion* completion );
		public extern static Boolean32 gtk_entry_completion_get_popup_set_width( GtkEntryCompletion* completion );
		public extern static Boolean32 gtk_entry_completion_get_popup_single_match( GtkEntryCompletion* completion );
		public extern static int gtk_entry_completion_get_text_column( GtkEntryCompletion* completion );
		[BackendHintReadNone]
		public extern static GType gtk_entry_completion_get_type();
		public extern static void gtk_entry_completion_insert_action_markup( GtkEntryCompletion* completion, int index_, CUtf8String markup );
		public extern static void gtk_entry_completion_insert_action_text( GtkEntryCompletion* completion, int index_, CUtf8String text );
		public extern static void gtk_entry_completion_insert_prefix( GtkEntryCompletion* completion );
		public extern static GtkEntryCompletion* gtk_entry_completion_new();
		public extern static void gtk_entry_completion_set_inline_completion( GtkEntryCompletion* completion, Boolean32 inlineCompletion );
		public extern static void gtk_entry_completion_set_inline_selection( GtkEntryCompletion* completion, Boolean32 inlineSelection );
		public extern static void gtk_entry_completion_set_match_func( GtkEntryCompletion* completion, Functors.Func<GtkEntryCompletion*, CUtf8String, GtkTreeIter&, void*, Boolean32> func, void* funcData, Functors.Action<void*> funcNotify );
		public extern static void gtk_entry_completion_set_minimum_key_length( GtkEntryCompletion* completion, int length );
		public extern static void gtk_entry_completion_set_model( GtkEntryCompletion* completion, GtkTreeModel* model );
		public extern static void gtk_entry_completion_set_popup_completion( GtkEntryCompletion* completion, Boolean32 popupCompletion );
		public extern static void gtk_entry_completion_set_popup_set_width( GtkEntryCompletion* completion, Boolean32 popupSetWidth );
		public extern static void gtk_entry_completion_set_popup_single_match( GtkEntryCompletion* completion, Boolean32 popupSingleMatch );
		public extern static void gtk_entry_completion_set_text_column( GtkEntryCompletion* completion, int column );

		public extern static void gtk_entry_append_text( GtkEntry* entry, CUtf8String text );
		public extern static Boolean32 gtk_entry_get_activates_default( GtkEntry* entry );
		public extern static float gtk_entry_get_alignment( GtkEntry* entry );
		public extern static GtkEntryBuffer* gtk_entry_get_buffer( GtkEntry* entry );
		public extern static GtkEntryCompletion* gtk_entry_get_completion( GtkEntry* entry );
		public extern static int gtk_entry_get_current_icon_drag_source( GtkEntry* entry );
		public extern static GtkAdjustment* gtk_entry_get_cursor_hadjustment( GtkEntry* entry );
		public extern static Boolean32 gtk_entry_get_has_frame( GtkEntry* entry );
		public extern static Boolean32 gtk_entry_get_icon_activatable( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static int gtk_entry_get_icon_at_pos( GtkEntry* entry, int x, int y );
		public extern static GIcon* gtk_entry_get_icon_gicon( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static sbyte* gtk_entry_get_icon_name( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static GdkPixbuf* gtk_entry_get_icon_pixbuf( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static Boolean32 gtk_entry_get_icon_sensitive( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static sbyte* gtk_entry_get_icon_stock( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static GtkImageType gtk_entry_get_icon_storage_type( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static sbyte* gtk_entry_get_icon_tooltip_markup( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static sbyte* gtk_entry_get_icon_tooltip_text( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static GdkDrawable* gtk_entry_get_icon_window( GtkEntry* entry, GtkEntryIconPosition iconPos );
		public extern static GtkBorder* gtk_entry_get_inner_border( GtkEntry* entry );
		public extern static uint gtk_entry_get_invisible_char( GtkEntry* entry );
		public extern static PangoLayout* gtk_entry_get_layout( GtkEntry* entry );
		public extern static void gtk_entry_get_layout_offsets( GtkEntry* entry, int* x, int* y );
		public extern static int gtk_entry_get_max_length( GtkEntry* entry );
		public extern static Boolean32 gtk_entry_get_overwrite_mode( GtkEntry* entry );
		public extern static double gtk_entry_get_progress_fraction( GtkEntry* entry );
		public extern static double gtk_entry_get_progress_pulse_step( GtkEntry* entry );
		public extern static CUtf8String gtk_entry_get_text( GtkEntry* entry );
		public extern static ushort gtk_entry_get_text_length( GtkEntry* entry );
		public extern static GdkDrawable* gtk_entry_get_text_window( GtkEntry* entry );
		[BackendHintReadNone]
		public extern static GType gtk_entry_get_type();
		public extern static Boolean32 gtk_entry_get_visibility( GtkEntry* entry );
		public extern static int gtk_entry_get_width_chars( GtkEntry* entry );
		public extern static Boolean32 gtk_entry_im_context_filter_keypress( GtkEntry* entry, GdkEventKey* @event );
		public extern static int gtk_entry_layout_index_to_text_index( GtkEntry* entry, int layoutIndex );
		public extern static GtkEntry* gtk_entry_new();
		public extern static GtkWidget* gtk_entry_new_with_buffer( GtkEntryBuffer* buffer );
		public extern static GtkWidget* gtk_entry_new_with_max_length( int max );
		public extern static void gtk_entry_prepend_text( GtkEntry* entry, CUtf8String text );
		public extern static void gtk_entry_progress_pulse( GtkEntry* entry );
		public extern static void gtk_entry_reset_im_context( GtkEntry* entry );
		public extern static void gtk_entry_select_region( GtkEntry* entry, int start, int end );
		public extern static void gtk_entry_set_activates_default( GtkEntry* entry, Boolean32 setting );
		public extern static void gtk_entry_set_alignment( GtkEntry* entry, float xalign );
		public extern static void gtk_entry_set_buffer( GtkEntry* entry, GtkEntryBuffer* buffer );
		public extern static void gtk_entry_set_completion( GtkEntry* entry, GtkEntryCompletion* completion );
		public extern static void gtk_entry_set_cursor_hadjustment( GtkEntry* entry, GtkAdjustment* adjustment );
		public extern static void gtk_entry_set_editable( GtkEntry* entry, Boolean32 editable );
		public extern static void gtk_entry_set_has_frame( GtkEntry* entry, Boolean32 setting );
		public extern static void gtk_entry_set_icon_activatable( GtkEntry* entry, GtkEntryIconPosition iconPos, Boolean32 activatable );
		public extern static void gtk_entry_set_icon_drag_source( GtkEntry* entry, GtkEntryIconPosition iconPos, GtkTargetList* targetList, GdkDragAction actions );
		public extern static void gtk_entry_set_icon_from_gicon( GtkEntry* entry, GtkEntryIconPosition iconPos, GIcon* icon );
		public extern static void gtk_entry_set_icon_from_icon_name( GtkEntry* entry, GtkEntryIconPosition iconPos, CUtf8String iconName );
		public extern static void gtk_entry_set_icon_from_pixbuf( GtkEntry* entry, GtkEntryIconPosition iconPos, GdkPixbuf* pixbuf );
		public extern static void gtk_entry_set_icon_from_stock( GtkEntry* entry, GtkEntryIconPosition iconPos, sbyte* stockId );
		public extern static void gtk_entry_set_icon_sensitive( GtkEntry* entry, GtkEntryIconPosition iconPos, Boolean32 sensitive );
		public extern static void gtk_entry_set_icon_tooltip_markup( GtkEntry* entry, GtkEntryIconPosition iconPos, sbyte* tooltip );
		public extern static void gtk_entry_set_icon_tooltip_text( GtkEntry* entry, GtkEntryIconPosition iconPos, sbyte* tooltip );
		public extern static void gtk_entry_set_inner_border( GtkEntry* entry, GtkBorder* border );
		public extern static void gtk_entry_set_invisible_char( GtkEntry* entry, uint ch );
		public extern static void gtk_entry_set_max_length( GtkEntry* entry, int max );
		public extern static void gtk_entry_set_overwrite_mode( GtkEntry* entry, Boolean32 overwrite );
		public extern static void gtk_entry_set_position( GtkEntry* entry, int position );
		public extern static void gtk_entry_set_progress_fraction( GtkEntry* entry, double fraction );
		public extern static void gtk_entry_set_progress_pulse_step( GtkEntry* entry, double fraction );
		public extern static void gtk_entry_set_text( GtkEntry* entry, CUtf8String text );
		public extern static void gtk_entry_set_visibility( GtkEntry* entry, Boolean32 visible );
		public extern static void gtk_entry_set_width_chars( GtkEntry* entry, int nChars );
		public extern static int gtk_entry_text_index_to_layout_index( GtkEntry* entry, int textIndex );
		public extern static void gtk_entry_unset_invisible_char( GtkEntry* entry );

		public extern static int gtk_tree_view_append_column( GtkTreeView* treeView, GtkTreeViewColumn* column );
		public extern static void gtk_tree_view_collapse_all( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_collapse_row( GtkTreeView* treeView, GtkTreePath* path );
		public extern static void gtk_tree_view_columns_autosize( GtkTreeView* treeView );
		public extern static void gtk_tree_view_convert_bin_window_to_tree_coords( GtkTreeView* treeView, int bx, int by, int* tx, int* ty );
		public extern static void gtk_tree_view_convert_bin_window_to_widget_coords( GtkTreeView* treeView, int bx, int by, int* wx, int* wy );
		public extern static void gtk_tree_view_convert_tree_to_bin_window_coords( GtkTreeView* treeView, int tx, int ty, int* bx, int* by );
		public extern static void gtk_tree_view_convert_tree_to_widget_coords( GtkTreeView* treeView, int tx, int ty, int* wx, int* wy );
		public extern static void gtk_tree_view_convert_widget_to_bin_window_coords( GtkTreeView* treeView, int wx, int wy, int* bx, int* by );
		public extern static void gtk_tree_view_convert_widget_to_tree_coords( GtkTreeView* treeView, int wx, int wy, int* tx, int* ty );
		public extern static GdkDrawable* gtk_tree_view_create_row_drag_icon( GtkTreeView* treeView, GtkTreePath* path );
		public extern static void gtk_tree_view_enable_model_drag_dest( GtkTreeView* treeView, GtkTargetEntry* targets, int nTargets, GdkDragAction actions );
		public extern static void gtk_tree_view_enable_model_drag_source( GtkTreeView* treeView, GdkModifierType startButtonMask, GtkTargetEntry* targets, int nTargets, GdkDragAction actions );
		public extern static void gtk_tree_view_expand_all( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_expand_row( GtkTreeView* treeView, GtkTreePath* path, Boolean32 openAll );
		public extern static void gtk_tree_view_expand_to_path( GtkTreeView* treeView, GtkTreePath* path );
		public extern static void gtk_tree_view_get_background_area( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* column, GdkRectangle* rect );
		public extern static GdkDrawable* gtk_tree_view_get_bin_window( GtkTreeView* treeView );
		public extern static void gtk_tree_view_get_cell_area( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* column, GdkRectangle* rect );
		public extern static GtkTreeViewColumn* gtk_tree_view_get_column( GtkTreeView* treeView, int n );
		public extern static GList* gtk_tree_view_get_columns( GtkTreeView* treeView );
		public extern static void gtk_tree_view_get_cursor( GtkTreeView* treeView, GtkTreePath** path, GtkTreeViewColumn** focusColumn );
		public extern static Boolean32 gtk_tree_view_get_dest_row_at_pos( GtkTreeView* treeView, int dragX, int dragY, GtkTreePath** path, GtkTreeViewDropPosition* pos );
		public extern static void gtk_tree_view_get_drag_dest_row( GtkTreeView* treeView, GtkTreePath** path, GtkTreeViewDropPosition* pos );
		public extern static Boolean32 gtk_tree_view_get_enable_search( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_enable_tree_lines( GtkTreeView* treeView );
		public extern static GtkTreeViewColumn* gtk_tree_view_get_expander_column( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_fixed_height_mode( GtkTreeView* treeView );
		public extern static GtkTreeViewGridLines gtk_tree_view_get_grid_lines( GtkTreeView* treeView );
		public extern static GtkAdjustment* gtk_tree_view_get_hadjustment( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_headers_clickable( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_headers_visible( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_hover_expand( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_hover_selection( GtkTreeView* treeView );
		public extern static int gtk_tree_view_get_level_indentation( GtkTreeView* treeView );
		public extern static GtkTreeModel* gtk_tree_view_get_model( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_path_at_pos( GtkTreeView* treeView, int x, int y, GtkTreePath** path, GtkTreeViewColumn** column, int* cellX, int* cellY );
		public extern static Boolean32 gtk_tree_view_get_reorderable( GtkTreeView* treeView );
		public extern static Functors.Func<GtkTreeModel*, GtkTreeIter&, void*, Boolean32> gtk_tree_view_get_row_separator_func( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_rubber_banding( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_rules_hint( GtkTreeView* treeView );
		public extern static int gtk_tree_view_get_search_column( GtkTreeView* treeView );
		public extern static GtkEntry* gtk_tree_view_get_search_entry( GtkTreeView* treeView );
		public extern static Functors.Func<GtkTreeModel*, int, CUtf8String, GtkTreeIter&, void*, Boolean32> gtk_tree_view_get_search_equal_func( GtkTreeView* treeView );
		public extern static Functors.Action<GtkTreeView*, GtkWidget*, void*> gtk_tree_view_get_search_position_func( GtkTreeView* treeView );
		public extern static GtkTreeSelection* gtk_tree_view_get_selection( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_show_expanders( GtkTreeView* treeView );
		public extern static int gtk_tree_view_get_tooltip_column( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_tooltip_context( GtkTreeView* treeView, int* x, int* y, Boolean32 keyboardTip, GtkTreeModel** model, GtkTreePath** path, GtkTreeIter& iter );
		[BackendHintReadNone]
		public extern static GType gtk_tree_view_get_type();
		public extern static GtkAdjustment* gtk_tree_view_get_vadjustment( GtkTreeView* treeView );
		public extern static Boolean32 gtk_tree_view_get_visible_range( GtkTreeView* treeView, GtkTreePath** startPath, GtkTreePath** endPath );
		public extern static void gtk_tree_view_get_visible_rect( GtkTreeView* treeView, GdkRectangle* visibleRect );
		public extern static int gtk_tree_view_insert_column( GtkTreeView* treeView, GtkTreeViewColumn* column, int position );
		public extern static int gtk_tree_view_insert_column_with_data_func( GtkTreeView* treeView, int position, CUtf8String title, GtkCellRenderer* cell, Functors.Action<GtkTreeViewColumn*, GtkCellRenderer*, GtkTreeModel*, GtkTreeIter&, void*> func, void* data, Functors.Action<void*> dnotify );
		public extern static Boolean32 gtk_tree_view_is_rubber_banding_active( GtkTreeView* treeView );
		public extern static void gtk_tree_view_map_expanded_rows( GtkTreeView* treeView, Functors.Action<GtkTreeView*, GtkTreePath*, void*> func, void* data );
		public extern static void gtk_tree_view_move_column_after( GtkTreeView* treeView, GtkTreeViewColumn* column, GtkTreeViewColumn* baseColumn );
		public extern static GtkTreeView* gtk_tree_view_new();
		public extern static GtkTreeView* gtk_tree_view_new_with_model( GtkTreeModel* model );
		public extern static int gtk_tree_view_remove_column( GtkTreeView* treeView, GtkTreeViewColumn* column );
		public extern static void gtk_tree_view_row_activated( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* column );
		public extern static Boolean32 gtk_tree_view_row_expanded( GtkTreeView* treeView, GtkTreePath* path );
		public extern static void gtk_tree_view_scroll_to_cell( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* column, Boolean32 useAlign, float rowAlign, float colAlign );
		public extern static void gtk_tree_view_scroll_to_point( GtkTreeView* treeView, int treeX, int treeY );
		public extern static void gtk_tree_view_set_column_drag_function( GtkTreeView* treeView, Functors.Func<GtkTreeView*, GtkTreeViewColumn*, GtkTreeViewColumn*, GtkTreeViewColumn*, void*, Boolean32> func, void* userData, Functors.Action<void*> destroy );
		public extern static void gtk_tree_view_set_cursor( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* focusColumn, Boolean32 startEditing );
		public extern static void gtk_tree_view_set_cursor_on_cell( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* focusColumn, GtkCellRenderer* focusCell, Boolean32 startEditing );
		public extern static void gtk_tree_view_set_destroy_count_func( GtkTreeView* treeView, Functors.Action<GtkTreeView*, GtkTreePath*, int, void*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_tree_view_set_drag_dest_row( GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewDropPosition pos );
		public extern static void gtk_tree_view_set_enable_search( GtkTreeView* treeView, Boolean32 enableSearch );
		public extern static void gtk_tree_view_set_enable_tree_lines( GtkTreeView* treeView, Boolean32 enabled );
		public extern static void gtk_tree_view_set_expander_column( GtkTreeView* treeView, GtkTreeViewColumn* column );
		public extern static void gtk_tree_view_set_fixed_height_mode( GtkTreeView* treeView, Boolean32 enable );
		public extern static void gtk_tree_view_set_grid_lines( GtkTreeView* treeView, GtkTreeViewGridLines gridLines );
		public extern static void gtk_tree_view_set_hadjustment( GtkTreeView* treeView, GtkAdjustment* adjustment );
		public extern static void gtk_tree_view_set_headers_clickable( GtkTreeView* treeView, Boolean32 setting );
		public extern static void gtk_tree_view_set_headers_visible( GtkTreeView* treeView, Boolean32 headersVisible );
		public extern static void gtk_tree_view_set_hover_expand( GtkTreeView* treeView, Boolean32 expand );
		public extern static void gtk_tree_view_set_hover_selection( GtkTreeView* treeView, Boolean32 hover );
		public extern static void gtk_tree_view_set_level_indentation( GtkTreeView* treeView, int indentation );
		public extern static void gtk_tree_view_set_model( GtkTreeView* treeView, GtkTreeModel* model );
		public extern static void gtk_tree_view_set_reorderable( GtkTreeView* treeView, Boolean32 reorderable );
		public extern static void gtk_tree_view_set_row_separator_func( GtkTreeView* treeView, Functors.Func<GtkTreeModel*, GtkTreeIter&, void*, Boolean32> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_tree_view_set_rubber_banding( GtkTreeView* treeView, Boolean32 enable );
		public extern static void gtk_tree_view_set_rules_hint( GtkTreeView* treeView, Boolean32 setting );
		public extern static void gtk_tree_view_set_search_column( GtkTreeView* treeView, int column );
		public extern static void gtk_tree_view_set_search_entry( GtkTreeView* treeView, GtkEntry* entry );
		public extern static void gtk_tree_view_set_search_equal_func( GtkTreeView* treeView, Functors.Func<GtkTreeModel*, int, CUtf8String, GtkTreeIter&, void*, Boolean32> searchEqualFunc, void* searchUserData, Functors.Action<void*> searchDestroy );
		public extern static void gtk_tree_view_set_search_position_func( GtkTreeView* treeView, Functors.Action<GtkTreeView*, GtkWidget*, void*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_tree_view_set_show_expanders( GtkTreeView* treeView, Boolean32 enabled );
		public extern static void gtk_tree_view_set_tooltip_cell( GtkTreeView* treeView, GtkTooltip* tooltip, GtkTreePath* path, GtkTreeViewColumn* column, GtkCellRenderer* cell );
		public extern static void gtk_tree_view_set_tooltip_column( GtkTreeView* treeView, int column );
		public extern static void gtk_tree_view_set_tooltip_row( GtkTreeView* treeView, GtkTooltip* tooltip, GtkTreePath* path );
		public extern static void gtk_tree_view_set_vadjustment( GtkTreeView* treeView, GtkAdjustment* adjustment );
		public extern static void gtk_tree_view_tree_to_widget_coords( GtkTreeView* treeView, int tx, int ty, int* wx, int* wy );
		public extern static void gtk_tree_view_unset_rows_drag_dest( GtkTreeView* treeView );
		public extern static void gtk_tree_view_unset_rows_drag_source( GtkTreeView* treeView );
		public extern static void gtk_tree_view_widget_to_tree_coords( GtkTreeView* treeView, int wx, int wy, int* tx, int* ty );

		public extern static void gtk_combo_box_append_text( GtkComboBox* comboBox, CUtf8String text );
		public extern static int gtk_combo_box_get_active( GtkComboBox* comboBox );
		public extern static Boolean32 gtk_combo_box_get_active_iter( GtkComboBox* comboBox, GtkTreeIter& iter );
		public extern static CUtf8String gtk_combo_box_get_active_text( GtkComboBox* comboBox );
		public extern static Boolean32 gtk_combo_box_get_add_tearoffs( GtkComboBox* comboBox );
		public extern static GtkSensitivityType gtk_combo_box_get_button_sensitivity( GtkComboBox* comboBox );
		public extern static int gtk_combo_box_get_column_span_column( GtkComboBox* comboBox );
		public extern static int gtk_combo_box_get_entry_text_column( GtkComboBox* comboBox );
		public extern static Boolean32 gtk_combo_box_get_focus_on_click( GtkComboBox* combo );
		public extern static Boolean32 gtk_combo_box_get_has_entry( GtkComboBox* comboBox );
		public extern static GtkTreeModel* gtk_combo_box_get_model( GtkComboBox* comboBox );
		public extern static AtkObject* gtk_combo_box_get_popup_accessible( GtkComboBox* comboBox );
		public extern static Functors.Func<GtkTreeModel*, GtkTreeIter&, void*, Boolean32> gtk_combo_box_get_row_separator_func( GtkComboBox* comboBox );
		public extern static int gtk_combo_box_get_row_span_column( GtkComboBox* comboBox );
		public extern static CUtf8String gtk_combo_box_get_title( GtkComboBox* comboBox );
		[BackendHintReadNone]
		public extern static GType gtk_combo_box_get_type();
		public extern static int gtk_combo_box_get_wrap_width( GtkComboBox* comboBox );
		public extern static void gtk_combo_box_insert_text( GtkComboBox* comboBox, int position, CUtf8String text );
		public extern static GtkComboBox* gtk_combo_box_new();
		public extern static GtkComboBox* gtk_combo_box_new_text();
		public extern static GtkWidget* gtk_combo_box_new_with_entry();
		public extern static GtkComboBox* gtk_combo_box_new_with_model( GtkTreeModel* model );
		public extern static GtkWidget* gtk_combo_box_new_with_model_and_entry( GtkTreeModel* model );
		public extern static void gtk_combo_box_popdown( GtkComboBox* comboBox );
		public extern static void gtk_combo_box_popup( GtkComboBox* comboBox );
		public extern static void gtk_combo_box_prepend_text( GtkComboBox* comboBox, CUtf8String text );
		public extern static void gtk_combo_box_remove_text( GtkComboBox* comboBox, int position );
		public extern static void gtk_combo_box_set_active( GtkComboBox* comboBox, int index_ );
		public extern static void gtk_combo_box_set_active_iter( GtkComboBox* comboBox, GtkTreeIter& iter );
		public extern static void gtk_combo_box_set_add_tearoffs( GtkComboBox* comboBox, Boolean32 addTearoffs );
		public extern static void gtk_combo_box_set_button_sensitivity( GtkComboBox* comboBox, GtkSensitivityType sensitivity );
		public extern static void gtk_combo_box_set_column_span_column( GtkComboBox* comboBox, int columnSpan );
		public extern static void gtk_combo_box_set_entry_text_column( GtkComboBox* comboBox, int textColumn );
		public extern static void gtk_combo_box_set_focus_on_click( GtkComboBox* combo, Boolean32 focusOnClick );
		public extern static void gtk_combo_box_set_model( GtkComboBox* comboBox, GtkTreeModel* model );
		public extern static void gtk_combo_box_set_row_separator_func( GtkComboBox* comboBox, Functors.Func<GtkTreeModel*, GtkTreeIter&, void*, Boolean32> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_combo_box_set_row_span_column( GtkComboBox* comboBox, int rowSpan );
		public extern static void gtk_combo_box_set_title( GtkComboBox* comboBox, CUtf8String title );
		public extern static void gtk_combo_box_set_wrap_width( GtkComboBox* comboBox, int width );

		public extern static int gtk_combo_box_entry_get_text_column( GtkComboBoxEntry* entryBox );
		[BackendHintReadNone]
		public extern static GType gtk_combo_box_entry_get_type();
		public extern static GtkComboBoxEntry* gtk_combo_box_entry_new();
		public extern static GtkComboBoxEntry* gtk_combo_box_entry_new_text();
		public extern static GtkComboBoxEntry* gtk_combo_box_entry_new_with_model( GtkTreeModel* model, int textColumn );
		public extern static void gtk_combo_box_entry_set_text_column( GtkComboBoxEntry* entryBox, int textColumn );

		public extern static void gtk_combo_box_text_append_text( GtkComboBoxText* comboBox, CUtf8String text );
		public extern static sbyte* gtk_combo_box_text_get_active_text( GtkComboBoxText* comboBox );
		[BackendHintReadNone]
		public extern static GType gtk_combo_box_text_get_type();
		public extern static void gtk_combo_box_text_insert_text( GtkComboBoxText* comboBox, int position, CUtf8String text );
		public extern static GtkWidget* gtk_combo_box_text_new();
		public extern static GtkWidget* gtk_combo_box_text_new_with_entry();
		public extern static void gtk_combo_box_text_prepend_text( GtkComboBoxText* comboBox, CUtf8String text );
		public extern static void gtk_combo_box_text_remove( GtkComboBoxText* comboBox, int position );

		[BackendHintReadNone]
		public extern static GType gtk_drawing_area_get_type();
		public extern static GtkWidget* gtk_drawing_area_new();
		public extern static void gtk_drawing_area_size( GtkDrawingArea* darea, int width, int height );

		public extern static Boolean32 gtk_event_box_get_above_child( GtkEventBox* eventBox );
		[BackendHintReadNone]
		public extern static GType gtk_event_box_get_type();
		public extern static Boolean32 gtk_event_box_get_visible_window( GtkEventBox* eventBox );
		public extern static GtkEventBox* gtk_event_box_new();
		public extern static void gtk_event_box_set_above_child( GtkEventBox* eventBox, Boolean32 aboveChild );
		public extern static void gtk_event_box_set_visible_window( GtkEventBox* eventBox, Boolean32 visibleWindow );

		public extern static Boolean32 gtk_expander_get_expanded( GtkExpander* expander );
		public extern static CUtf8String gtk_expander_get_label( GtkExpander* expander );
		public extern static Boolean32 gtk_expander_get_label_fill( GtkExpander* expander );
		public extern static GtkWidget* gtk_expander_get_label_widget( GtkExpander* expander );
		public extern static int gtk_expander_get_spacing( GtkExpander* expander );
		[BackendHintReadNone]
		public extern static GType gtk_expander_get_type();
		public extern static Boolean32 gtk_expander_get_use_markup( GtkExpander* expander );
		public extern static Boolean32 gtk_expander_get_use_underline( GtkExpander* expander );
		public extern static GtkWidget* gtk_expander_new( CUtf8String label );
		public extern static GtkWidget* gtk_expander_new_with_mnemonic( CUtf8String label );
		public extern static void gtk_expander_set_expanded( GtkExpander* expander, Boolean32 expanded );
		public extern static void gtk_expander_set_label( GtkExpander* expander, CUtf8String label );
		public extern static void gtk_expander_set_label_fill( GtkExpander* expander, Boolean32 labelFill );
		public extern static void gtk_expander_set_label_widget( GtkExpander* expander, GtkWidget* labelWidget );
		public extern static void gtk_expander_set_spacing( GtkExpander* expander, int spacing );
		public extern static void gtk_expander_set_use_markup( GtkExpander* expander, Boolean32 useMarkup );
		public extern static void gtk_expander_set_use_underline( GtkExpander* expander, Boolean32 useUnderline );

		public extern static Boolean32 gtk_fixed_get_has_window( GtkFixed* fixed );
		[BackendHintReadNone]
		public extern static GType gtk_fixed_get_type();
		public extern static void gtk_fixed_move( GtkFixed* fixed, GtkWidget* widget, int x, int y );
		public extern static GtkFixed* gtk_fixed_new();
		public extern static void gtk_fixed_put( GtkFixed* fixed, GtkWidget* widget, int x, int y );
		public extern static void gtk_fixed_set_has_window( GtkFixed* fixed, Boolean32 hasWindow );

		public extern static void gtk_file_filter_add_custom( GtkFileFilter* filter, GtkFileFilterFlags needed, Functors.Func<GtkFileFilterInfo*, void*, Boolean32> func, void* data, Functors.Action<void*> notify );
		public extern static void gtk_file_filter_add_mime_type( GtkFileFilter* filter, CUtf8String mimeType );
		public extern static void gtk_file_filter_add_pattern( GtkFileFilter* filter, CUtf8String pattern );
		public extern static void gtk_file_filter_add_pixbuf_formats( GtkFileFilter* filter );
		public extern static Boolean32 gtk_file_filter_filter( GtkFileFilter* filter, GtkFileFilterInfo* filterInfo );
		public extern static CUtf8String gtk_file_filter_get_name( GtkFileFilter* filter );
		public extern static GtkFileFilterFlags gtk_file_filter_get_needed( GtkFileFilter* filter );
		[BackendHintReadNone]
		public extern static GType gtk_file_filter_get_type();
		public extern static GtkFileFilter* gtk_file_filter_new();
		public extern static void gtk_file_filter_set_name( GtkFileFilter* filter, CUtf8String name );

		public extern static void gtk_file_chooser_add_filter( GtkFileChooser* chooser, GtkFileFilter* filter );
		public extern static Boolean32 gtk_file_chooser_add_shortcut_folder( GtkFileChooser* chooser, CUtf8String folder, GError** error );
		public extern static Boolean32 gtk_file_chooser_add_shortcut_folder_uri( GtkFileChooser* chooser, CUtf8String uri, GError** error );
		public extern static uint gtk_file_chooser_error_quark();
		public extern static GtkFileChooserAction gtk_file_chooser_get_action( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_create_folders( GtkFileChooser* chooser );
		public extern static CUtf8String gtk_file_chooser_get_current_folder( GtkFileChooser* chooser );
		public extern static GFile* gtk_file_chooser_get_current_folder_file( GtkFileChooser* chooser );
		public extern static CUtf8String gtk_file_chooser_get_current_folder_uri( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_do_overwrite_confirmation( GtkFileChooser* chooser );
		public extern static GtkWidget* gtk_file_chooser_get_extra_widget( GtkFileChooser* chooser );
		public extern static GFile* gtk_file_chooser_get_file( GtkFileChooser* chooser );
		public extern static CUtf8String gtk_file_chooser_get_filename( GtkFileChooser* chooser );
		public extern static GSList* gtk_file_chooser_get_filenames( GtkFileChooser* chooser );
		public extern static GSList* gtk_file_chooser_get_files( GtkFileChooser* chooser );
		public extern static GtkFileFilter* gtk_file_chooser_get_filter( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_local_only( GtkFileChooser* chooser );
		public extern static GFile* gtk_file_chooser_get_preview_file( GtkFileChooser* chooser );
		public extern static CUtf8String gtk_file_chooser_get_preview_filename( GtkFileChooser* chooser );
		public extern static CUtf8String gtk_file_chooser_get_preview_uri( GtkFileChooser* chooser );
		public extern static GtkWidget* gtk_file_chooser_get_preview_widget( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_preview_widget_active( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_select_multiple( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_show_hidden( GtkFileChooser* chooser );
		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_get_type();
		public extern static CUtf8String gtk_file_chooser_get_uri( GtkFileChooser* chooser );
		public extern static GSList* gtk_file_chooser_get_uris( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_get_use_preview_label( GtkFileChooser* chooser );
		public extern static GSList* gtk_file_chooser_list_filters( GtkFileChooser* chooser );
		public extern static GSList* gtk_file_chooser_list_shortcut_folder_uris( GtkFileChooser* chooser );
		public extern static GSList* gtk_file_chooser_list_shortcut_folders( GtkFileChooser* chooser );
		public extern static void gtk_file_chooser_remove_filter( GtkFileChooser* chooser, GtkFileFilter* filter );
		public extern static Boolean32 gtk_file_chooser_remove_shortcut_folder( GtkFileChooser* chooser, CUtf8String folder, GError** error );
		public extern static Boolean32 gtk_file_chooser_remove_shortcut_folder_uri( GtkFileChooser* chooser, CUtf8String uri, GError** error );
		public extern static void gtk_file_chooser_select_all( GtkFileChooser* chooser );
		public extern static Boolean32 gtk_file_chooser_select_file( GtkFileChooser* chooser, GFile* file, GError** error );
		public extern static Boolean32 gtk_file_chooser_select_filename( GtkFileChooser* chooser, CUtf8String filename );
		public extern static Boolean32 gtk_file_chooser_select_uri( GtkFileChooser* chooser, CUtf8String uri );
		public extern static void gtk_file_chooser_set_action( GtkFileChooser* chooser, GtkFileChooserAction action );
		public extern static void gtk_file_chooser_set_create_folders( GtkFileChooser* chooser, Boolean32 createFolders );
		public extern static Boolean32 gtk_file_chooser_set_current_folder( GtkFileChooser* chooser, CUtf8String filename );
		public extern static Boolean32 gtk_file_chooser_set_current_folder_file( GtkFileChooser* chooser, GFile* file, GError** error );
		public extern static Boolean32 gtk_file_chooser_set_current_folder_uri( GtkFileChooser* chooser, CUtf8String uri );
		public extern static void gtk_file_chooser_set_current_name( GtkFileChooser* chooser, CUtf8String name );
		public extern static void gtk_file_chooser_set_do_overwrite_confirmation( GtkFileChooser* chooser, Boolean32 doOverwriteConfirmation );
		public extern static void gtk_file_chooser_set_extra_widget( GtkFileChooser* chooser, GtkWidget* extraWidget );
		public extern static Boolean32 gtk_file_chooser_set_file( GtkFileChooser* chooser, GFile* file, GError** error );
		public extern static Boolean32 gtk_file_chooser_set_filename( GtkFileChooser* chooser, CUtf8String filename );
		public extern static void gtk_file_chooser_set_filter( GtkFileChooser* chooser, GtkFileFilter* filter );
		public extern static void gtk_file_chooser_set_local_only( GtkFileChooser* chooser, Boolean32 localOnly );
		public extern static void gtk_file_chooser_set_preview_widget( GtkFileChooser* chooser, GtkWidget* previewWidget );
		public extern static void gtk_file_chooser_set_preview_widget_active( GtkFileChooser* chooser, Boolean32 active );
		public extern static void gtk_file_chooser_set_select_multiple( GtkFileChooser* chooser, Boolean32 selectMultiple );
		public extern static void gtk_file_chooser_set_show_hidden( GtkFileChooser* chooser, Boolean32 showHidden );
		public extern static Boolean32 gtk_file_chooser_set_uri( GtkFileChooser* chooser, CUtf8String uri );
		public extern static void gtk_file_chooser_set_use_preview_label( GtkFileChooser* chooser, Boolean32 useLabel );
		public extern static void gtk_file_chooser_unselect_all( GtkFileChooser* chooser );
		public extern static void gtk_file_chooser_unselect_file( GtkFileChooser* chooser, GFile* file );
		public extern static void gtk_file_chooser_unselect_filename( GtkFileChooser* chooser, CUtf8String filename );
		public extern static void gtk_file_chooser_unselect_uri( GtkFileChooser* chooser, CUtf8String uri );

		[BackendHintReadNone]
		public extern static GType gtk_hbox_get_type();
		public extern static GtkHBox* gtk_hbox_new( Boolean32 homogeneous, int spacing );

		public extern static Boolean32 gtk_file_chooser_button_get_focus_on_click( GtkFileChooserButton* button );
		public extern static CUtf8String gtk_file_chooser_button_get_title( GtkFileChooserButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_button_get_type();
		public extern static int gtk_file_chooser_button_get_width_chars( GtkFileChooserButton* button );
		public extern static GtkWidget* gtk_file_chooser_button_new( CUtf8String title, GtkFileChooserAction action );
		public extern static GtkWidget* gtk_file_chooser_button_new_with_backend( CUtf8String title, GtkFileChooserAction action, CUtf8String backend );
		public extern static GtkWidget* gtk_file_chooser_button_new_with_dialog( GtkWidget* dialog );
		public extern static void gtk_file_chooser_button_set_focus_on_click( GtkFileChooserButton* button, Boolean32 focusOnClick );
		public extern static void gtk_file_chooser_button_set_title( GtkFileChooserButton* button, CUtf8String title );
		public extern static void gtk_file_chooser_button_set_width_chars( GtkFileChooserButton* button, int nChars );

		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_dialog_get_type();

		[BackendHintReadNone]
		public extern static GType gtk_file_chooser_widget_get_type();
		public extern static GtkWidget* gtk_file_chooser_widget_new( GtkFileChooserAction action );
		public extern static GtkWidget* gtk_file_chooser_widget_new_with_backend( GtkFileChooserAction action, CUtf8String backend );

		public extern static CUtf8String gtk_font_button_get_font_name( GtkFontButton* fontButton );
		public extern static Boolean32 gtk_font_button_get_show_size( GtkFontButton* fontButton );
		public extern static Boolean32 gtk_font_button_get_show_style( GtkFontButton* fontButton );
		public extern static CUtf8String gtk_font_button_get_title( GtkFontButton* fontButton );
		[BackendHintReadNone]
		public extern static GType gtk_font_button_get_type();
		public extern static Boolean32 gtk_font_button_get_use_font( GtkFontButton* fontButton );
		public extern static Boolean32 gtk_font_button_get_use_size( GtkFontButton* fontButton );
		public extern static GtkWidget* gtk_font_button_new();
		public extern static GtkWidget* gtk_font_button_new_with_font( CUtf8String fontname );
		public extern static Boolean32 gtk_font_button_set_font_name( GtkFontButton* fontButton, CUtf8String fontname );
		public extern static void gtk_font_button_set_show_size( GtkFontButton* fontButton, Boolean32 showSize );
		public extern static void gtk_font_button_set_show_style( GtkFontButton* fontButton, Boolean32 showStyle );
		public extern static void gtk_font_button_set_title( GtkFontButton* fontButton, CUtf8String title );
		public extern static void gtk_font_button_set_use_font( GtkFontButton* fontButton, Boolean32 useFont );
		public extern static void gtk_font_button_set_use_size( GtkFontButton* fontButton, Boolean32 useSize );

		public extern static GtkWidget* gtk_font_selection_dialog_get_apply_button( GtkFontSelectionDialog* fsd );
		public extern static GtkWidget* gtk_font_selection_dialog_get_cancel_button( GtkFontSelectionDialog* fsd );
		public extern static GdkFont* gtk_font_selection_dialog_get_font( GtkFontSelectionDialog* fsd );
		public extern static CUtf8String gtk_font_selection_dialog_get_font_name( GtkFontSelectionDialog* fsd );
		public extern static GtkWidget* gtk_font_selection_dialog_get_font_selection( GtkFontSelectionDialog* fsd );
		public extern static GtkWidget* gtk_font_selection_dialog_get_ok_button( GtkFontSelectionDialog* fsd );
		public extern static CUtf8String gtk_font_selection_dialog_get_preview_text( GtkFontSelectionDialog* fsd );
		[BackendHintReadNone]
		public extern static GType gtk_font_selection_dialog_get_type();
		public extern static GtkWidget* gtk_font_selection_dialog_new( CUtf8String title );
		public extern static Boolean32 gtk_font_selection_dialog_set_font_name( GtkFontSelectionDialog* fsd, CUtf8String fontname );
		public extern static void gtk_font_selection_dialog_set_preview_text( GtkFontSelectionDialog* fsd, CUtf8String text );
		public extern static PangoFontFace* gtk_font_selection_get_face( GtkFontSelection* fontsel );
		public extern static GtkWidget* gtk_font_selection_get_face_list( GtkFontSelection* fontsel );
		public extern static PangoFontFamily* gtk_font_selection_get_family( GtkFontSelection* fontsel );
		public extern static GtkWidget* gtk_font_selection_get_family_list( GtkFontSelection* fontsel );
		public extern static GdkFont* gtk_font_selection_get_font( GtkFontSelection* fontsel );
		public extern static CUtf8String gtk_font_selection_get_font_name( GtkFontSelection* fontsel );
		public extern static GtkWidget* gtk_font_selection_get_preview_entry( GtkFontSelection* fontsel );
		public extern static CUtf8String gtk_font_selection_get_preview_text( GtkFontSelection* fontsel );
		public extern static int gtk_font_selection_get_size( GtkFontSelection* fontsel );
		public extern static GtkWidget* gtk_font_selection_get_size_entry( GtkFontSelection* fontsel );
		public extern static GtkWidget* gtk_font_selection_get_size_list( GtkFontSelection* fontsel );
		[BackendHintReadNone]
		public extern static GType gtk_font_selection_get_type();
		public extern static GtkWidget* gtk_font_selection_new();
		public extern static Boolean32 gtk_font_selection_set_font_name( GtkFontSelection* fontsel, CUtf8String fontname );
		public extern static void gtk_font_selection_set_preview_text( GtkFontSelection* fontsel, CUtf8String text );

		public extern static GdkGC* gtk_gc_get( int depth, GdkColormap* colormap, GdkGCValues* values, GdkGCValuesMask valuesMask );
		public extern static void gtk_gc_release( GdkGC* gc );

		public extern static Boolean32 gtk_handle_box_get_child_detached( GtkHandleBox* handleBox );
		public extern static GtkPositionType gtk_handle_box_get_handle_position( GtkHandleBox* handleBox );
		public extern static GtkShadowType gtk_handle_box_get_shadow_type( GtkHandleBox* handleBox );
		public extern static GtkPositionType gtk_handle_box_get_snap_edge( GtkHandleBox* handleBox );
		[BackendHintReadNone]
		public extern static GType gtk_handle_box_get_type();
		public extern static GtkWidget* gtk_handle_box_new();
		public extern static void gtk_handle_box_set_handle_position( GtkHandleBox* handleBox, GtkPositionType position );
		public extern static void gtk_handle_box_set_shadow_type( GtkHandleBox* handleBox, GtkShadowType type );
		public extern static void gtk_handle_box_set_snap_edge( GtkHandleBox* handleBox, GtkPositionType edge );

		public extern static GtkButtonBoxStyle gtk_hbutton_box_get_layout_default();
		public extern static int gtk_hbutton_box_get_spacing_default();
		[BackendHintReadNone]
		public extern static GType gtk_hbutton_box_get_type();
		public extern static GtkWidget* gtk_hbutton_box_new();
		public extern static void gtk_hbutton_box_set_layout_default( GtkButtonBoxStyle layout );
		public extern static void gtk_hbutton_box_set_spacing_default( int spacing );

		public extern static void gtk_paned_add1( GtkPaned* paned, GtkWidget* child );
		public extern static void gtk_paned_add2( GtkPaned* paned, GtkWidget* child );
		public extern static void gtk_paned_compute_position( GtkPaned* paned, int allocation, int child1Req, int child2Req );
		public extern static GtkWidget* gtk_paned_get_child1( GtkPaned* paned );
		public extern static GtkWidget* gtk_paned_get_child2( GtkPaned* paned );
		public extern static GdkDrawable* gtk_paned_get_handle_window( GtkPaned* paned );
		public extern static int gtk_paned_get_position( GtkPaned* paned );
		[BackendHintReadNone]
		public extern static GType gtk_paned_get_type();
		public extern static void gtk_paned_pack1( GtkPaned* paned, GtkWidget* child, Boolean32 resize, Boolean32 shrink );
		public extern static void gtk_paned_pack2( GtkPaned* paned, GtkWidget* child, Boolean32 resize, Boolean32 shrink );
		public extern static void gtk_paned_set_position( GtkPaned* paned, int position );

		[BackendHintReadNone]
		public extern static GType gtk_hpaned_get_type();
		public extern static GtkHPaned* gtk_hpaned_new();

		public extern static void gtk_ruler_draw_pos( GtkRuler* ruler );
		public extern static void gtk_ruler_draw_ticks( GtkRuler* ruler );
		public extern static GtkMetricType gtk_ruler_get_metric( GtkRuler* ruler );
		public extern static void gtk_ruler_get_range( GtkRuler* ruler, double* lower, double* upper, double* position, double* maxSize );
		[BackendHintReadNone]
		public extern static GType gtk_ruler_get_type();
		public extern static void gtk_ruler_set_metric( GtkRuler* ruler, GtkMetricType metric );
		public extern static void gtk_ruler_set_range( GtkRuler* ruler, double lower, double upper, double position, double maxSize );

		[BackendHintReadNone]
		public extern static GType gtk_hruler_get_type();
		public extern static GtkWidget* gtk_hruler_new();

		public extern static GtkAdjustment* gtk_range_get_adjustment( GtkRange* range );
		public extern static double gtk_range_get_fill_level( GtkRange* range );
		public extern static Boolean32 gtk_range_get_flippable( GtkRange* range );
		public extern static Boolean32 gtk_range_get_inverted( GtkRange* range );
		public extern static GtkSensitivityType gtk_range_get_lower_stepper_sensitivity( GtkRange* range );
		public extern static int gtk_range_get_min_slider_size( GtkRange* range );
		public extern static void gtk_range_get_range_rect( GtkRange* range, GdkRectangle* rangeRect );
		public extern static Boolean32 gtk_range_get_restrict_to_fill_level( GtkRange* range );
		public extern static int gtk_range_get_round_digits( GtkRange* range );
		public extern static Boolean32 gtk_range_get_show_fill_level( GtkRange* range );
		public extern static void gtk_range_get_slider_range( GtkRange* range, int* sliderStart, int* sliderEnd );
		public extern static Boolean32 gtk_range_get_slider_size_fixed( GtkRange* range );
		[BackendHintReadNone]
		public extern static GType gtk_range_get_type();
		public extern static GtkUpdateType gtk_range_get_update_policy( GtkRange* range );
		public extern static GtkSensitivityType gtk_range_get_upper_stepper_sensitivity( GtkRange* range );
		public extern static double gtk_range_get_value( GtkRange* range );
		public extern static void gtk_range_set_adjustment( GtkRange* range, GtkAdjustment* adjustment );
		public extern static void gtk_range_set_fill_level( GtkRange* range, double fillLevel );
		public extern static void gtk_range_set_flippable( GtkRange* range, Boolean32 flippable );
		public extern static void gtk_range_set_increments( GtkRange* range, double step, double page );
		public extern static void gtk_range_set_inverted( GtkRange* range, Boolean32 setting );
		public extern static void gtk_range_set_lower_stepper_sensitivity( GtkRange* range, GtkSensitivityType sensitivity );
		public extern static void gtk_range_set_min_slider_size( GtkRange* range, Boolean32 minSize );
		public extern static void gtk_range_set_range( GtkRange* range, double min, double max );
		public extern static void gtk_range_set_restrict_to_fill_level( GtkRange* range, Boolean32 restrictToFillLevel );
		public extern static void gtk_range_set_round_digits( GtkRange* range, int roundDigits );
		public extern static void gtk_range_set_show_fill_level( GtkRange* range, Boolean32 showFillLevel );
		public extern static void gtk_range_set_slider_size_fixed( GtkRange* range, Boolean32 sizeFixed );
		public extern static void gtk_range_set_update_policy( GtkRange* range, GtkUpdateType policy );
		public extern static void gtk_range_set_upper_stepper_sensitivity( GtkRange* range, GtkSensitivityType sensitivity );
		public extern static void gtk_range_set_value( GtkRange* range, double value );

		public extern static void gtk_scale_add_mark( GtkScale* scale, double value, GtkPositionType position, sbyte* markup );
		public extern static void gtk_scale_clear_marks( GtkScale* scale );
		public extern static int gtk_scale_get_digits( GtkScale* scale );
		public extern static Boolean32 gtk_scale_get_draw_value( GtkScale* scale );
		public extern static PangoLayout* gtk_scale_get_layout( GtkScale* scale );
		public extern static void gtk_scale_get_layout_offsets( GtkScale* scale, int* x, int* y );
		[BackendHintReadNone]
		public extern static GType gtk_scale_get_type();
		public extern static GtkPositionType gtk_scale_get_value_pos( GtkScale* scale );
		public extern static void gtk_scale_set_digits( GtkScale* scale, int digits );
		public extern static void gtk_scale_set_draw_value( GtkScale* scale, Boolean32 drawValue );
		public extern static void gtk_scale_set_value_pos( GtkScale* scale, GtkPositionType pos );

		[BackendHintReadNone]
		public extern static GType gtk_hscale_get_type();
		public extern static GtkWidget* gtk_hscale_new( GtkAdjustment* adjustment );
		public extern static GtkWidget* gtk_hscale_new_with_range( double min, double max, double step );

		[BackendHintReadNone]
		public extern static GType gtk_scrollbar_get_type();

		[BackendHintReadNone]
		public extern static GType gtk_hscrollbar_get_type();
		public extern static GtkHScrollbar* gtk_hscrollbar_new( GtkAdjustment* adjustment );

		[BackendHintReadNone]
		public extern static GType gtk_separator_get_type();

		[BackendHintReadNone]
		public extern static GType gtk_hseparator_get_type();
		public extern static GtkWidget* gtk_hseparator_new();

		public extern static void gtk_hsv_get_color( GtkHSV* hsv, double* h, double* s, double* v );
		public extern static void gtk_hsv_get_metrics( GtkHSV* hsv, int* size, int* ringWidth );
		[BackendHintReadNone]
		public extern static GType gtk_hsv_get_type();
		public extern static Boolean32 gtk_hsv_is_adjusting( GtkHSV* hsv );
		public extern static GtkWidget* gtk_hsv_new();
		public extern static void gtk_hsv_set_color( GtkHSV* hsv, double h, double s, double v );
		public extern static void gtk_hsv_set_metrics( GtkHSV* hsv, int size, int ringWidth );
		public extern static void gtk_hsv_to_rgb( double h, double s, double v, double* r, double* g, double* b );
		public extern static void gtk_rgb_to_hsv( double r, double g, double b, double* h, double* s, double* v );

		public extern static void gtk_icon_factory_add( GtkIconFactory* factory, sbyte* stockId, GtkIconSet* iconSet );
		public extern static void gtk_icon_factory_add_default( GtkIconFactory* factory );
		[BackendHintReadNone]
		public extern static GType gtk_icon_factory_get_type();
		public extern static GtkIconSet* gtk_icon_factory_lookup( GtkIconFactory* factory, sbyte* stockId );
		public extern static GtkIconSet* gtk_icon_factory_lookup_default( sbyte* stockId );
		public extern static GtkIconFactory* gtk_icon_factory_new();
		public extern static void gtk_icon_factory_remove_default( GtkIconFactory* factory );
		public extern static void gtk_icon_set_add_source( GtkIconSet* iconSet, GtkIconSource* source );
		public extern static GtkIconSet* gtk_icon_set_copy( GtkIconSet* iconSet );
		public extern static void gtk_icon_set_get_sizes( GtkIconSet* iconSet, GtkIconSize** sizes, int* nSizes );
		[BackendHintReadNone]
		public extern static GType gtk_icon_set_get_type();
		public extern static GtkIconSet* gtk_icon_set_new();
		public extern static GtkIconSet* gtk_icon_set_new_from_pixbuf( GdkPixbuf* pixbuf );
		public extern static GtkIconSet* gtk_icon_set_ref( GtkIconSet* iconSet );
		public extern static GdkPixbuf* gtk_icon_set_render_icon( GtkIconSet* iconSet, GtkStyle* style, GtkTextDirection direction, GtkStateType state, GtkIconSize size, GtkWidget* widget, sbyte* detail );
		public extern static void gtk_icon_set_unref( GtkIconSet* iconSet );
		public extern static GtkIconSize gtk_icon_size_from_name( CUtf8String name );
		public extern static sbyte* gtk_icon_size_get_name( GtkIconSize size );
		public extern static Boolean32 gtk_icon_size_lookup( GtkIconSize size, int* width, int* height );
		public extern static Boolean32 gtk_icon_size_lookup_for_settings( GtkSettings* settings, GtkIconSize size, int* width, int* height );
		public extern static GtkIconSize gtk_icon_size_register( CUtf8String name, int width, int height );
		public extern static void gtk_icon_size_register_alias( CUtf8String alias, GtkIconSize target );
		public extern static GtkIconSource* gtk_icon_source_copy( GtkIconSource* source );
		public extern static void gtk_icon_source_free( GtkIconSource* source );
		public extern static GtkTextDirection gtk_icon_source_get_direction( GtkIconSource* source );
		public extern static Boolean32 gtk_icon_source_get_direction_wildcarded( GtkIconSource* source );
		public extern static CUtf8String gtk_icon_source_get_filename( GtkIconSource* source );
		public extern static CUtf8String gtk_icon_source_get_icon_name( GtkIconSource* source );
		public extern static GdkPixbuf* gtk_icon_source_get_pixbuf( GtkIconSource* source );
		public extern static GtkIconSize gtk_icon_source_get_size( GtkIconSource* source );
		public extern static Boolean32 gtk_icon_source_get_size_wildcarded( GtkIconSource* source );
		public extern static GtkStateType gtk_icon_source_get_state( GtkIconSource* source );
		public extern static Boolean32 gtk_icon_source_get_state_wildcarded( GtkIconSource* source );
		[BackendHintReadNone]
		public extern static GType gtk_icon_source_get_type();
		public extern static GtkIconSource* gtk_icon_source_new();
		public extern static void gtk_icon_source_set_direction( GtkIconSource* source, GtkTextDirection direction );
		public extern static void gtk_icon_source_set_direction_wildcarded( GtkIconSource* source, Boolean32 setting );
		public extern static void gtk_icon_source_set_filename( GtkIconSource* source, CUtf8String filename );
		public extern static void gtk_icon_source_set_icon_name( GtkIconSource* source, CUtf8String iconName );
		public extern static void gtk_icon_source_set_pixbuf( GtkIconSource* source, GdkPixbuf* pixbuf );
		public extern static void gtk_icon_source_set_size( GtkIconSource* source, GtkIconSize size );
		public extern static void gtk_icon_source_set_size_wildcarded( GtkIconSource* source, Boolean32 setting );
		public extern static void gtk_icon_source_set_state( GtkIconSource* source, GtkStateType state );
		public extern static void gtk_icon_source_set_state_wildcarded( GtkIconSource* source, Boolean32 setting );

		public extern static GtkIconInfo* gtk_icon_info_copy( GtkIconInfo* iconInfo );
		public extern static void gtk_icon_info_free( GtkIconInfo* iconInfo );
		public extern static Boolean32 gtk_icon_info_get_attach_points( GtkIconInfo* iconInfo, GdkPoint** points, int* nPoints );
		public extern static int gtk_icon_info_get_base_size( GtkIconInfo* iconInfo );
		public extern static GdkPixbuf* gtk_icon_info_get_builtin_pixbuf( GtkIconInfo* iconInfo );
		public extern static CUtf8String gtk_icon_info_get_display_name( GtkIconInfo* iconInfo );
		public extern static Boolean32 gtk_icon_info_get_embedded_rect( GtkIconInfo* iconInfo, GdkRectangle* rectangle );
		public extern static CUtf8String gtk_icon_info_get_filename( GtkIconInfo* iconInfo );
		[BackendHintReadNone]
		public extern static GType gtk_icon_info_get_type();
		public extern static GdkPixbuf* gtk_icon_info_load_icon( GtkIconInfo* iconInfo, GError** error );
		public extern static GtkIconInfo* gtk_icon_info_new_for_pixbuf( GtkIconTheme* iconTheme, GdkPixbuf* pixbuf );
		public extern static void gtk_icon_info_set_raw_coordinates( GtkIconInfo* iconInfo, Boolean32 rawCoordinates );
		public extern static void gtk_icon_theme_add_builtin_icon( CUtf8String iconName, int size, GdkPixbuf* pixbuf );
		public extern static void gtk_icon_theme_append_search_path( GtkIconTheme* iconTheme, CUtf8String path );
		public extern static GtkIconInfo* gtk_icon_theme_choose_icon( GtkIconTheme* iconTheme, sbyte** iconNames, int size, GtkIconLookupFlags flags );
		public extern static uint gtk_icon_theme_error_quark();
		public extern static GtkIconTheme* gtk_icon_theme_get_default();
		public extern static CUtf8String gtk_icon_theme_get_example_icon_name( GtkIconTheme* iconTheme );
		public extern static GtkIconTheme* gtk_icon_theme_get_for_screen( GdkScreen* screen );
		public extern static int* gtk_icon_theme_get_icon_sizes( GtkIconTheme* iconTheme, CUtf8String iconName );
		public extern static void gtk_icon_theme_get_search_path( GtkIconTheme* iconTheme, sbyte*** path, int* nElements );
		[BackendHintReadNone]
		public extern static GType gtk_icon_theme_get_type();
		public extern static Boolean32 gtk_icon_theme_has_icon( GtkIconTheme* iconTheme, CUtf8String iconName );
		public extern static GList* gtk_icon_theme_list_contexts( GtkIconTheme* iconTheme );
		public extern static GList* gtk_icon_theme_list_icons( GtkIconTheme* iconTheme, CUtf8String context );
		public extern static GdkPixbuf* gtk_icon_theme_load_icon( GtkIconTheme* iconTheme, CUtf8String iconName, int size, GtkIconLookupFlags flags, GError** error );
		public extern static GtkIconInfo* gtk_icon_theme_lookup_by_gicon( GtkIconTheme* iconTheme, GIcon* icon, int size, GtkIconLookupFlags flags );
		public extern static GtkIconInfo* gtk_icon_theme_lookup_icon( GtkIconTheme* iconTheme, CUtf8String iconName, int size, GtkIconLookupFlags flags );
		public extern static GtkIconTheme* gtk_icon_theme_new();
		public extern static void gtk_icon_theme_prepend_search_path( GtkIconTheme* iconTheme, CUtf8String path );
		public extern static Boolean32 gtk_icon_theme_rescan_if_needed( GtkIconTheme* iconTheme );
		public extern static void gtk_icon_theme_set_custom_theme( GtkIconTheme* iconTheme, CUtf8String themeName );
		public extern static void gtk_icon_theme_set_screen( GtkIconTheme* iconTheme, GdkScreen* screen );
		public extern static void gtk_icon_theme_set_search_path( GtkIconTheme* iconTheme, sbyte** path, int nElements );

		public extern static GType gtk_tooltip_get_type();
		public extern static void gtk_tooltip_set_custom( GtkTooltip* tooltip, GtkWidget* customWidget );
		public extern static void gtk_tooltip_set_icon( GtkTooltip* tooltip, GdkPixbuf* pixbuf );
		public extern static void gtk_tooltip_set_icon_from_gicon( GtkTooltip* tooltip, GIcon* gicon, GtkIconSize size );
		public extern static void gtk_tooltip_set_icon_from_icon_name( GtkTooltip* tooltip, CUtf8String iconName, GtkIconSize size );
		public extern static void gtk_tooltip_set_icon_from_stock( GtkTooltip* tooltip, CUtf8String stockId, GtkIconSize size );
		public extern static void gtk_tooltip_set_markup( GtkTooltip* tooltip, CUtf8String markup );
		public extern static void gtk_tooltip_set_text( GtkTooltip* tooltip, CUtf8String text );
		public extern static void gtk_tooltip_set_tip_area( GtkTooltip* tooltip, GdkRectangle* rect );
		public extern static void gtk_tooltip_trigger_tooltip_query( GdkDisplay* display );

		public extern static void gtk_icon_view_convert_widget_to_bin_window_coords( GtkIconView* iconView, int wx, int wy, int* bx, int* by );
		public extern static GdkDrawable* gtk_icon_view_create_drag_icon( GtkIconView* iconView, GtkTreePath* path );
		public extern static void gtk_icon_view_enable_model_drag_dest( GtkIconView* iconView, GtkTargetEntry* targets, int nTargets, GdkDragAction actions );
		public extern static void gtk_icon_view_enable_model_drag_source( GtkIconView* iconView, GdkModifierType startButtonMask, GtkTargetEntry* targets, int nTargets, GdkDragAction actions );
		public extern static int gtk_icon_view_get_column_spacing( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_columns( GtkIconView* iconView );
		public extern static Boolean32 gtk_icon_view_get_cursor( GtkIconView* iconView, GtkTreePath** path, GtkCellRenderer** cell );
		public extern static Boolean32 gtk_icon_view_get_dest_item_at_pos( GtkIconView* iconView, int dragX, int dragY, GtkTreePath** path, GtkIconViewDropPosition* pos );
		public extern static void gtk_icon_view_get_drag_dest_item( GtkIconView* iconView, GtkTreePath** path, GtkIconViewDropPosition* pos );
		public extern static Boolean32 gtk_icon_view_get_item_at_pos( GtkIconView* iconView, int x, int y, GtkTreePath** path, GtkCellRenderer** cell );
		public extern static int gtk_icon_view_get_item_column( GtkIconView* iconView, GtkTreePath* path );
		public extern static GtkOrientation gtk_icon_view_get_item_orientation( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_item_padding( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_item_row( GtkIconView* iconView, GtkTreePath* path );
		public extern static int gtk_icon_view_get_item_width( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_margin( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_markup_column( GtkIconView* iconView );
		public extern static GtkTreeModel* gtk_icon_view_get_model( GtkIconView* iconView );
		public extern static GtkOrientation gtk_icon_view_get_orientation( GtkIconView* iconView );
		public extern static GtkTreePath* gtk_icon_view_get_path_at_pos( GtkIconView* iconView, int x, int y );
		public extern static int gtk_icon_view_get_pixbuf_column( GtkIconView* iconView );
		public extern static Boolean32 gtk_icon_view_get_reorderable( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_row_spacing( GtkIconView* iconView );
		public extern static GList* gtk_icon_view_get_selected_items( GtkIconView* iconView );
		public extern static GtkSelectionMode gtk_icon_view_get_selection_mode( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_spacing( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_text_column( GtkIconView* iconView );
		public extern static int gtk_icon_view_get_tooltip_column( GtkIconView* iconView );
		public extern static Boolean32 gtk_icon_view_get_tooltip_context( GtkIconView* iconView, int* x, int* y, Boolean32 keyboardTip, GtkTreeModel** model, GtkTreePath** path, GtkTreeIter& iter );
		[BackendHintReadNone]
		public extern static GType gtk_icon_view_get_type();
		public extern static Boolean32 gtk_icon_view_get_visible_range( GtkIconView* iconView, GtkTreePath** startPath, GtkTreePath** endPath );
		public extern static void gtk_icon_view_item_activated( GtkIconView* iconView, GtkTreePath* path );
		public extern static GtkWidget* gtk_icon_view_new();
		public extern static GtkWidget* gtk_icon_view_new_with_model( GtkTreeModel* model );
		public extern static Boolean32 gtk_icon_view_path_is_selected( GtkIconView* iconView, GtkTreePath* path );
		public extern static void gtk_icon_view_scroll_to_path( GtkIconView* iconView, GtkTreePath* path, Boolean32 useAlign, float rowAlign, float colAlign );
		public extern static void gtk_icon_view_select_all( GtkIconView* iconView );
		public extern static void gtk_icon_view_select_path( GtkIconView* iconView, GtkTreePath* path );
		public extern static void gtk_icon_view_selected_foreach( GtkIconView* iconView, Functors.Action<GtkIconView*, GtkTreePath*, void*> func, void* data );
		public extern static void gtk_icon_view_set_column_spacing( GtkIconView* iconView, int columnSpacing );
		public extern static void gtk_icon_view_set_columns( GtkIconView* iconView, int columns );
		public extern static void gtk_icon_view_set_cursor( GtkIconView* iconView, GtkTreePath* path, GtkCellRenderer* cell, Boolean32 startEditing );
		public extern static void gtk_icon_view_set_drag_dest_item( GtkIconView* iconView, GtkTreePath* path, GtkIconViewDropPosition pos );
		public extern static void gtk_icon_view_set_item_orientation( GtkIconView* iconView, GtkOrientation orientation );
		public extern static void gtk_icon_view_set_item_padding( GtkIconView* iconView, int itemPadding );
		public extern static void gtk_icon_view_set_item_width( GtkIconView* iconView, int itemWidth );
		public extern static void gtk_icon_view_set_margin( GtkIconView* iconView, int margin );
		public extern static void gtk_icon_view_set_markup_column( GtkIconView* iconView, int column );
		public extern static void gtk_icon_view_set_model( GtkIconView* iconView, GtkTreeModel* model );
		public extern static void gtk_icon_view_set_orientation( GtkIconView* iconView, GtkOrientation orientation );
		public extern static void gtk_icon_view_set_pixbuf_column( GtkIconView* iconView, int column );
		public extern static void gtk_icon_view_set_reorderable( GtkIconView* iconView, Boolean32 reorderable );
		public extern static void gtk_icon_view_set_row_spacing( GtkIconView* iconView, int rowSpacing );
		public extern static void gtk_icon_view_set_selection_mode( GtkIconView* iconView, GtkSelectionMode mode );
		public extern static void gtk_icon_view_set_spacing( GtkIconView* iconView, int spacing );
		public extern static void gtk_icon_view_set_text_column( GtkIconView* iconView, int column );
		public extern static void gtk_icon_view_set_tooltip_cell( GtkIconView* iconView, GtkTooltip* tooltip, GtkTreePath* path, GtkCellRenderer* cell );
		public extern static void gtk_icon_view_set_tooltip_column( GtkIconView* iconView, int column );
		public extern static void gtk_icon_view_set_tooltip_item( GtkIconView* iconView, GtkTooltip* tooltip, GtkTreePath* path );
		public extern static void gtk_icon_view_unselect_all( GtkIconView* iconView );
		public extern static void gtk_icon_view_unselect_path( GtkIconView* iconView, GtkTreePath* path );
		public extern static void gtk_icon_view_unset_model_drag_dest( GtkIconView* iconView );
		public extern static void gtk_icon_view_unset_model_drag_source( GtkIconView* iconView );

		public extern static Boolean32 gtk_image_menu_item_get_always_show_image( GtkImageMenuItem* imageMenuItem );
		public extern static GtkWidget* gtk_image_menu_item_get_image( GtkImageMenuItem* imageMenuItem );
		[BackendHintReadNone]
		public extern static GType gtk_image_menu_item_get_type();
		public extern static Boolean32 gtk_image_menu_item_get_use_stock( GtkImageMenuItem* imageMenuItem );
		public extern static GtkWidget* gtk_image_menu_item_new();
		public extern static GtkWidget* gtk_image_menu_item_new_from_stock( CUtf8String stockId, GtkAccelGroup* accelGroup );
		public extern static GtkWidget* gtk_image_menu_item_new_with_label( CUtf8String label );
		public extern static GtkWidget* gtk_image_menu_item_new_with_mnemonic( CUtf8String label );
		public extern static void gtk_image_menu_item_set_accel_group( GtkImageMenuItem* imageMenuItem, GtkAccelGroup* accelGroup );
		public extern static void gtk_image_menu_item_set_always_show_image( GtkImageMenuItem* imageMenuItem, Boolean32 alwaysShow );
		public extern static void gtk_image_menu_item_set_image( GtkImageMenuItem* imageMenuItem, GtkWidget* image );
		public extern static void gtk_image_menu_item_set_use_stock( GtkImageMenuItem* imageMenuItem, Boolean32 useStock );

		public extern static void gtk_im_context_simple_add_table( GtkIMContextSimple* contextSimple, ushort* data, int maxSeqLen, int nSeqs );
		[BackendHintReadNone]
		public extern static GType gtk_im_context_simple_get_type();
		public extern static GtkIMContext* gtk_im_context_simple_new();

		public extern static void gtk_im_multicontext_append_menuitems( GtkIMMulticontext* context, GtkMenuShell* menushell );
		public extern static sbyte* gtk_im_multicontext_get_context_id( GtkIMMulticontext* context );
		[BackendHintReadNone]
		public extern static GType gtk_im_multicontext_get_type();
		public extern static GtkIMContext* gtk_im_multicontext_new();
		public extern static void gtk_im_multicontext_set_context_id( GtkIMMulticontext* context, CUtf8String contextId );

		public extern static void gtk_info_bar_add_action_widget( GtkInfoBar* infoBar, GtkWidget* child, int responseId );
		public extern static GtkWidget* gtk_info_bar_add_button( GtkInfoBar* infoBar, CUtf8String buttonText, int responseId );
		public extern static GtkWidget* gtk_info_bar_get_action_area( GtkInfoBar* infoBar );
		public extern static GtkWidget* gtk_info_bar_get_content_area( GtkInfoBar* infoBar );
		public extern static GtkMessageType gtk_info_bar_get_message_type( GtkInfoBar* infoBar );
		[BackendHintReadNone]
		public extern static GType gtk_info_bar_get_type();
		public extern static GtkWidget* gtk_info_bar_new();
		public extern static void gtk_info_bar_response( GtkInfoBar* infoBar, int responseId );
		public extern static void gtk_info_bar_set_default_response( GtkInfoBar* infoBar, int responseId );
		public extern static void gtk_info_bar_set_message_type( GtkInfoBar* infoBar, GtkMessageType messageType );
		public extern static void gtk_info_bar_set_response_sensitive( GtkInfoBar* infoBar, int responseId, Boolean32 setting );

		public extern static GdkScreen* gtk_invisible_get_screen( GtkInvisible* invisible );
		[BackendHintReadNone]
		public extern static GType gtk_invisible_get_type();
		public extern static GtkWidget* gtk_invisible_new();
		public extern static GtkWidget* gtk_invisible_new_for_screen( GdkScreen* screen );
		public extern static void gtk_invisible_set_screen( GtkInvisible* invisible, GdkScreen* screen );

		public extern static void gtk_layout_freeze( GtkLayout* layout );
		public extern static GdkDrawable* gtk_layout_get_bin_window( GtkLayout* layout );
		public extern static GtkAdjustment* gtk_layout_get_hadjustment( GtkLayout* layout );
		public extern static void gtk_layout_get_size( GtkLayout* layout, uint* width, uint* height );
		[BackendHintReadNone]
		public extern static GType gtk_layout_get_type();
		public extern static GtkAdjustment* gtk_layout_get_vadjustment( GtkLayout* layout );
		public extern static void gtk_layout_move( GtkLayout* layout, GtkWidget* childWidget, int x, int y );
		public extern static GtkLayout* gtk_layout_new( GtkAdjustment* hadjustment, GtkAdjustment* vadjustment );
		public extern static void gtk_layout_put( GtkLayout* layout, GtkWidget* childWidget, int x, int y );
		public extern static void gtk_layout_set_hadjustment( GtkLayout* layout, GtkAdjustment* adjustment );
		public extern static void gtk_layout_set_size( GtkLayout* layout, uint width, uint height );
		public extern static void gtk_layout_set_vadjustment( GtkLayout* layout, GtkAdjustment* adjustment );
		public extern static void gtk_layout_thaw( GtkLayout* layout );

		[BackendHintReadNone]
		public extern static GType gtk_link_button_get_type();
		public extern static CUtf8String gtk_link_button_get_uri( GtkLinkButton* linkButton );
		public extern static Boolean32 gtk_link_button_get_visited( GtkLinkButton* linkButton );
		public extern static GtkWidget* gtk_link_button_new( CUtf8String uri );
		public extern static GtkWidget* gtk_link_button_new_with_label( CUtf8String uri, CUtf8String label );
		public extern static void gtk_link_button_set_uri( GtkLinkButton* linkButton, CUtf8String uri );
		public extern static Functors.Action<GtkLinkButton*, CUtf8String, void*> gtk_link_button_set_uri_hook( Functors.Action<GtkLinkButton*, CUtf8String, void*> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_link_button_set_visited( GtkLinkButton* linkButton, Boolean32 visited );

		public extern static sbyte* gtk_check_version( uint requiredMajor, uint requiredMinor, uint requiredMicro );
		public extern static void gtk_disable_setlocale();
		public extern static Boolean32 gtk_events_pending();
		public extern static void gtk_exit( int errorCode );
		[BackendHintReadNone]
		public extern static Boolean32 gtk_false();
		public extern static GdkEvent* gtk_get_current_event();
		public extern static Boolean32 gtk_get_current_event_state( GdkModifierType* state );
		public extern static uint gtk_get_current_event_time();
		public extern static PangoLanguage* gtk_get_default_language();
		public extern static GtkWidget* gtk_get_event_widget( GdkEvent* @event );
		public extern static GOptionGroup* gtk_get_option_group( Boolean32 openDefaultDisplay );
		public extern static void gtk_grab_add( GtkWidget* widget );
		public extern static GtkWidget* gtk_grab_get_current();
		public extern static void gtk_grab_remove( GtkWidget* widget );
		public extern static uint gtk_idle_add( Functors.Func<void*, Boolean32> function, void* data );
		public extern static uint gtk_idle_add_full( int priority, Functors.Func<void*, Boolean32> function, Functors.Action<GtkObject*, void*, uint, GtkArg*> marshal, void* data, Functors.Action<void*> destroy );
		public extern static uint gtk_idle_add_priority( int priority, Functors.Func<void*, Boolean32> function, void* data );
		public extern static void gtk_idle_remove( uint idleHandlerId );
		public extern static void gtk_idle_remove_by_data( void* data );
		public extern static void gtk_init( int& argc, CUtf8String** argv );
		public extern static void gtk_init_add( Functors.Func<void*, Boolean32> function, void* data );
		public extern static Boolean32 gtk_init_check( int& argc, CUtf8String** argv );
		public extern static Boolean32 gtk_init_with_args( int& argc, CUtf8String** argv, CUtf8String parameterString, GOptionEntry* entries, CUtf8String translationDomain, GError** error );
		public extern static uint gtk_input_add_full( int source, GdkInputCondition condition, Functors.Action<void*, int, GdkInputCondition> function, Functors.Action<GtkObject*, void*, uint, GtkArg*> marshal, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_input_remove( uint inputHandlerId );
		public extern static uint gtk_key_snooper_install( Functors.Func<GtkWidget*, GdkEventKey*, void*, int> snooper, void* funcData );
		public extern static void gtk_key_snooper_remove( uint snooperHandlerId );
		public extern static void gtk_main();
		public extern static void gtk_main_do_event( GdkEvent* @event );
		public extern static Boolean32 gtk_main_iteration();
		public extern static Boolean32 gtk_main_iteration_do( Boolean32 blocking );
		public extern static uint gtk_main_level();
		public extern static void gtk_main_quit();
		public extern static Boolean32 gtk_parse_args( int& argc, CUtf8String** argv );
		public extern static void gtk_propagate_event( GtkWidget* widget, GdkEvent* @event );
		public extern static uint gtk_quit_add( uint mainLevel, Functors.Func<void*, Boolean32> function, void* data );
		public extern static void gtk_quit_add_destroy( uint mainLevel, GtkObject* object );
		public extern static uint gtk_quit_add_full( uint mainLevel, Functors.Func<void*, Boolean32> function, Functors.Action<GtkObject*, void*, uint, GtkArg*> marshal, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_quit_remove( uint quitHandlerId );
		public extern static void gtk_quit_remove_by_data( void* data );
		public extern static CUtf8String gtk_set_locale();
		public extern static uint gtk_timeout_add( uint interval, Functors.Func<void*, Boolean32> function, void* data );
		public extern static uint gtk_timeout_add_full( uint interval, Functors.Func<void*, Boolean32> function, Functors.Action<GtkObject*, void*, uint, GtkArg*> marshal, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_timeout_remove( uint timeoutHandlerId );
		[BackendHintReadNone]
		public extern static Boolean32 gtk_true();

		public extern static GtkPackDirection gtk_menu_bar_get_child_pack_direction( GtkMenuBar* menubar );
		public extern static GtkPackDirection gtk_menu_bar_get_pack_direction( GtkMenuBar* menubar );
		[BackendHintReadNone]
		public extern static GType gtk_menu_bar_get_type();
		public extern static GtkWidget* gtk_menu_bar_new();
		public extern static void gtk_menu_bar_set_child_pack_direction( GtkMenuBar* menubar, GtkPackDirection childPackDir );
		public extern static void gtk_menu_bar_set_pack_direction( GtkMenuBar* menubar, GtkPackDirection packDir );

		public extern static GtkTooltipsData* gtk_tooltips_data_get( GtkWidget* widget );
		public extern static void gtk_tooltips_disable( GtkTooltips* tooltips );
		public extern static void gtk_tooltips_enable( GtkTooltips* tooltips );
		public extern static void gtk_tooltips_force_window( GtkTooltips* tooltips );
		public extern static Boolean32 gtk_tooltips_get_info_from_tip_window( GtkWindow* tipWindow, GtkTooltips** tooltips, GtkWidget** currentWidget );
		[BackendHintReadNone]
		public extern static GType gtk_tooltips_get_type();
		public extern static GtkTooltips* gtk_tooltips_new();
		public extern static void gtk_tooltips_set_delay( GtkTooltips* tooltips, uint delay );
		public extern static void gtk_tooltips_set_tip( GtkTooltips* tooltips, GtkWidget* widget, CUtf8String tipText, CUtf8String tipPrivate );

		public extern static void gtk_size_group_add_widget( GtkSizeGroup* sizeGroup, GtkWidget* widget );
		public extern static Boolean32 gtk_size_group_get_ignore_hidden( GtkSizeGroup* sizeGroup );
		public extern static GtkSizeGroupMode gtk_size_group_get_mode( GtkSizeGroup* sizeGroup );
		[BackendHintReadNone]
		public extern static GType gtk_size_group_get_type();
		public extern static GSList* gtk_size_group_get_widgets( GtkSizeGroup* sizeGroup );
		public extern static GtkSizeGroup* gtk_size_group_new( GtkSizeGroupMode mode );
		public extern static void gtk_size_group_remove_widget( GtkSizeGroup* sizeGroup, GtkWidget* widget );
		public extern static void gtk_size_group_set_ignore_hidden( GtkSizeGroup* sizeGroup, Boolean32 ignoreHidden );
		public extern static void gtk_size_group_set_mode( GtkSizeGroup* sizeGroup, GtkSizeGroupMode mode );

		public extern static PangoEllipsizeMode gtk_tool_item_get_ellipsize_mode( GtkToolItem* toolItem );
		public extern static Boolean32 gtk_tool_item_get_expand( GtkToolItem* toolItem );
		public extern static Boolean32 gtk_tool_item_get_homogeneous( GtkToolItem* toolItem );
		public extern static GtkIconSize gtk_tool_item_get_icon_size( GtkToolItem* toolItem );
		public extern static Boolean32 gtk_tool_item_get_is_important( GtkToolItem* toolItem );
		public extern static GtkOrientation gtk_tool_item_get_orientation( GtkToolItem* toolItem );
		public extern static GtkWidget* gtk_tool_item_get_proxy_menu_item( GtkToolItem* toolItem, CUtf8String menuItemId );
		public extern static GtkReliefStyle gtk_tool_item_get_relief_style( GtkToolItem* toolItem );
		public extern static float gtk_tool_item_get_text_alignment( GtkToolItem* toolItem );
		public extern static GtkOrientation gtk_tool_item_get_text_orientation( GtkToolItem* toolItem );
		public extern static GtkSizeGroup* gtk_tool_item_get_text_size_group( GtkToolItem* toolItem );
		public extern static GtkToolbarStyle gtk_tool_item_get_toolbar_style( GtkToolItem* toolItem );
		[BackendHintReadNone]
		public extern static GType gtk_tool_item_get_type();
		public extern static Boolean32 gtk_tool_item_get_use_drag_window( GtkToolItem* toolItem );
		public extern static Boolean32 gtk_tool_item_get_visible_horizontal( GtkToolItem* toolItem );
		public extern static Boolean32 gtk_tool_item_get_visible_vertical( GtkToolItem* toolItem );
		public extern static GtkToolItem* gtk_tool_item_new();
		public extern static void gtk_tool_item_rebuild_menu( GtkToolItem* toolItem );
		public extern static GtkWidget* gtk_tool_item_retrieve_proxy_menu_item( GtkToolItem* toolItem );
		public extern static void gtk_tool_item_set_expand( GtkToolItem* toolItem, Boolean32 expand );
		public extern static void gtk_tool_item_set_homogeneous( GtkToolItem* toolItem, Boolean32 homogeneous );
		public extern static void gtk_tool_item_set_is_important( GtkToolItem* toolItem, Boolean32 isImportant );
		public extern static void gtk_tool_item_set_proxy_menu_item( GtkToolItem* toolItem, CUtf8String menuItemId, GtkWidget* menuItem );
		public extern static void gtk_tool_item_set_tooltip( GtkToolItem* toolItem, GtkTooltips* tooltips, CUtf8String tipText, CUtf8String tipPrivate );
		public extern static void gtk_tool_item_set_tooltip_markup( GtkToolItem* toolItem, CUtf8String markup );
		public extern static void gtk_tool_item_set_tooltip_text( GtkToolItem* toolItem, CUtf8String text );
		public extern static void gtk_tool_item_set_use_drag_window( GtkToolItem* toolItem, Boolean32 useDragWindow );
		public extern static void gtk_tool_item_set_visible_horizontal( GtkToolItem* toolItem, Boolean32 visibleHorizontal );
		public extern static void gtk_tool_item_set_visible_vertical( GtkToolItem* toolItem, Boolean32 visibleVertical );
		public extern static void gtk_tool_item_toolbar_reconfigured( GtkToolItem* toolItem );

		public extern static CUtf8String gtk_tool_button_get_icon_name( GtkToolButton* button );
		public extern static GtkWidget* gtk_tool_button_get_icon_widget( GtkToolButton* button );
		public extern static CUtf8String gtk_tool_button_get_label( GtkToolButton* button );
		public extern static GtkWidget* gtk_tool_button_get_label_widget( GtkToolButton* button );
		public extern static CUtf8String gtk_tool_button_get_stock_id( GtkToolButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_tool_button_get_type();
		public extern static Boolean32 gtk_tool_button_get_use_underline( GtkToolButton* button );
		public extern static GtkToolItem* gtk_tool_button_new( GtkWidget* iconWidget, CUtf8String label );
		public extern static GtkToolItem* gtk_tool_button_new_from_stock( CUtf8String stockId );
		public extern static void gtk_tool_button_set_icon_name( GtkToolButton* button, CUtf8String iconName );
		public extern static void gtk_tool_button_set_icon_widget( GtkToolButton* button, GtkWidget* iconWidget );
		public extern static void gtk_tool_button_set_label( GtkToolButton* button, CUtf8String label );
		public extern static void gtk_tool_button_set_label_widget( GtkToolButton* button, GtkWidget* labelWidget );
		public extern static void gtk_tool_button_set_stock_id( GtkToolButton* button, CUtf8String stockId );
		public extern static void gtk_tool_button_set_use_underline( GtkToolButton* button, Boolean32 useUnderline );

		public extern static GtkWidget* gtk_menu_tool_button_get_menu( GtkMenuToolButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_menu_tool_button_get_type();
		public extern static GtkToolItem* gtk_menu_tool_button_new( GtkWidget* iconWidget, CUtf8String label );
		public extern static GtkToolItem* gtk_menu_tool_button_new_from_stock( CUtf8String stockId );
		public extern static void gtk_menu_tool_button_set_arrow_tooltip( GtkMenuToolButton* button, GtkTooltips* tooltips, CUtf8String tipText, CUtf8String tipPrivate );
		public extern static void gtk_menu_tool_button_set_arrow_tooltip_markup( GtkMenuToolButton* button, CUtf8String markup );
		public extern static void gtk_menu_tool_button_set_arrow_tooltip_text( GtkMenuToolButton* button, CUtf8String text );
		public extern static void gtk_menu_tool_button_set_menu( GtkMenuToolButton* button, GtkWidget* menu );

		public extern static GtkWidget* gtk_message_dialog_get_image( GtkMessageDialog* dialog );
		public extern static GtkWidget* gtk_message_dialog_get_message_area( GtkMessageDialog* messageDialog );
		[BackendHintReadNone]
		public extern static GType gtk_message_dialog_get_type();
		public extern static void gtk_message_dialog_set_image( GtkMessageDialog* dialog, GtkWidget* image );
		public extern static void gtk_message_dialog_set_markup( GtkMessageDialog* messageDialog, sbyte* str );

		public extern static GtkWindow* gtk_mount_operation_get_parent( GtkMountOperation* op );
		public extern static GdkScreen* gtk_mount_operation_get_screen( GtkMountOperation* op );
		public extern static GType gtk_mount_operation_get_type();
		public extern static Boolean32 gtk_mount_operation_is_showing( GtkMountOperation* op );
		public extern static GMountOperation* gtk_mount_operation_new( GtkWindow* parent );
		public extern static void gtk_mount_operation_set_parent( GtkMountOperation* op, GtkWindow* parent );
		public extern static void gtk_mount_operation_set_screen( GtkMountOperation* op, GdkScreen* screen );

		public extern static int gtk_notebook_append_page( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel );
		public extern static int gtk_notebook_append_page_menu( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel, GtkWidget* menuLabel );
		public extern static GtkWidget* gtk_notebook_get_action_widget( GtkNotebook* notebook, GtkPackType packType );
		public extern static int gtk_notebook_get_current_page( GtkNotebook* notebook );
		public extern static void* gtk_notebook_get_group( GtkNotebook* notebook );
		public extern static int gtk_notebook_get_group_id( GtkNotebook* notebook );
		public extern static sbyte* gtk_notebook_get_group_name( GtkNotebook* notebook );
		public extern static GtkWidget* gtk_notebook_get_menu_label( GtkNotebook* notebook, GtkWidget* child );
		public extern static sbyte* gtk_notebook_get_menu_label_text( GtkNotebook* notebook, GtkWidget* child );
		public extern static int gtk_notebook_get_n_pages( GtkNotebook* notebook );
		public extern static GtkWidget* gtk_notebook_get_nth_page( GtkNotebook* notebook, int pageNum );
		public extern static Boolean32 gtk_notebook_get_scrollable( GtkNotebook* notebook );
		public extern static Boolean32 gtk_notebook_get_show_border( GtkNotebook* notebook );
		public extern static Boolean32 gtk_notebook_get_show_tabs( GtkNotebook* notebook );
		public extern static Boolean32 gtk_notebook_get_tab_detachable( GtkNotebook* notebook, GtkWidget* child );
		public extern static ushort gtk_notebook_get_tab_hborder( GtkNotebook* notebook );
		public extern static GtkWidget* gtk_notebook_get_tab_label( GtkNotebook* notebook, GtkWidget* child );
		public extern static sbyte* gtk_notebook_get_tab_label_text( GtkNotebook* notebook, GtkWidget* child );
		public extern static GtkPositionType gtk_notebook_get_tab_pos( GtkNotebook* notebook );
		public extern static Boolean32 gtk_notebook_get_tab_reorderable( GtkNotebook* notebook, GtkWidget* child );
		public extern static ushort gtk_notebook_get_tab_vborder( GtkNotebook* notebook );
		[BackendHintReadNone]
		public extern static GType gtk_notebook_get_type();
		public extern static int gtk_notebook_insert_page( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel, int position );
		public extern static int gtk_notebook_insert_page_menu( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel, GtkWidget* menuLabel, int position );
		public extern static GtkNotebook* gtk_notebook_new();
		public extern static void gtk_notebook_next_page( GtkNotebook* notebook );
		public extern static int gtk_notebook_page_num( GtkNotebook* notebook, GtkWidget* child );
		public extern static void gtk_notebook_popup_disable( GtkNotebook* notebook );
		public extern static void gtk_notebook_popup_enable( GtkNotebook* notebook );
		public extern static int gtk_notebook_prepend_page( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel );
		public extern static int gtk_notebook_prepend_page_menu( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel, GtkWidget* menuLabel );
		public extern static void gtk_notebook_prev_page( GtkNotebook* notebook );
		public extern static void gtk_notebook_query_tab_label_packing( GtkNotebook* notebook, GtkWidget* child, int* expand, int* fill, GtkPackType* packType );
		public extern static void gtk_notebook_remove_page( GtkNotebook* notebook, int pageNum );
		public extern static void gtk_notebook_reorder_child( GtkNotebook* notebook, GtkWidget* child, int position );
		public extern static void gtk_notebook_set_action_widget( GtkNotebook* notebook, GtkWidget* widget, GtkPackType packType );
		public extern static void gtk_notebook_set_current_page( GtkNotebook* notebook, int pageNum );
		public extern static void gtk_notebook_set_group( GtkNotebook* notebook, void* group );
		public extern static void gtk_notebook_set_group_id( GtkNotebook* notebook, int groupId );
		public extern static void gtk_notebook_set_group_name( GtkNotebook* notebook, CUtf8String groupName );
		public extern static void gtk_notebook_set_homogeneous_tabs( GtkNotebook* notebook, Boolean32 homogeneous );
		public extern static void gtk_notebook_set_menu_label( GtkNotebook* notebook, GtkWidget* child, GtkWidget* menuLabel );
		public extern static void gtk_notebook_set_menu_label_text( GtkNotebook* notebook, GtkWidget* child, CUtf8String menuText );
		public extern static void gtk_notebook_set_scrollable( GtkNotebook* notebook, Boolean32 scrollable );
		public extern static void gtk_notebook_set_show_border( GtkNotebook* notebook, Boolean32 showBorder );
		public extern static void gtk_notebook_set_show_tabs( GtkNotebook* notebook, Boolean32 showTabs );
		public extern static void gtk_notebook_set_tab_border( GtkNotebook* notebook, uint borderWidth );
		public extern static void gtk_notebook_set_tab_detachable( GtkNotebook* notebook, GtkWidget* child, Boolean32 detachable );
		public extern static void gtk_notebook_set_tab_hborder( GtkNotebook* notebook, uint tabHborder );
		public extern static void gtk_notebook_set_tab_label( GtkNotebook* notebook, GtkWidget* child, GtkWidget* tabLabel );
		public extern static void gtk_notebook_set_tab_label_packing( GtkNotebook* notebook, GtkWidget* child, Boolean32 expand, Boolean32 fill, GtkPackType packType );
		public extern static void gtk_notebook_set_tab_label_text( GtkNotebook* notebook, GtkWidget* child, CUtf8String tabText );
		public extern static void gtk_notebook_set_tab_pos( GtkNotebook* notebook, GtkPositionType pos );
		public extern static void gtk_notebook_set_tab_reorderable( GtkNotebook* notebook, GtkWidget* child, Boolean32 reorderable );
		public extern static void gtk_notebook_set_tab_vborder( GtkNotebook* notebook, uint tabVborder );
		public extern static void gtk_notebook_set_window_creation_hook( Functors.Func<GtkNotebook*, GtkWidget*, int, int, void*, GtkNotebook*> func, void* data, Functors.Action<void*> destroy );

		public extern static GdkPixbuf* gtk_offscreen_window_get_pixbuf( GtkOffscreenWindow* offscreen );
		public extern static GdkDrawable* gtk_offscreen_window_get_pixmap( GtkOffscreenWindow* offscreen );
		[BackendHintReadNone]
		public extern static GType gtk_offscreen_window_get_type();
		public extern static GtkWidget* gtk_offscreen_window_new();

		public extern static GtkOrientation gtk_orientable_get_orientation( GtkOrientable* orientable );
		[BackendHintReadNone]
		public extern static GType gtk_orientable_get_type();
		public extern static void gtk_orientable_set_orientation( GtkOrientable* orientable, GtkOrientation orientation );

		public extern static GtkPaperSize* gtk_paper_size_copy( GtkPaperSize* other );
		public extern static void gtk_paper_size_free( GtkPaperSize* size );
		public extern static sbyte* gtk_paper_size_get_default();
		public extern static double gtk_paper_size_get_default_bottom_margin( GtkPaperSize* size, GtkUnit unit );
		public extern static double gtk_paper_size_get_default_left_margin( GtkPaperSize* size, GtkUnit unit );
		public extern static double gtk_paper_size_get_default_right_margin( GtkPaperSize* size, GtkUnit unit );
		public extern static double gtk_paper_size_get_default_top_margin( GtkPaperSize* size, GtkUnit unit );
		public extern static CUtf8String gtk_paper_size_get_display_name( GtkPaperSize* size );
		public extern static double gtk_paper_size_get_height( GtkPaperSize* size, GtkUnit unit );
		public extern static CUtf8String gtk_paper_size_get_name( GtkPaperSize* size );
		public extern static GList* gtk_paper_size_get_paper_sizes( Boolean32 includeCustom );
		public extern static CUtf8String gtk_paper_size_get_ppd_name( GtkPaperSize* size );
		[BackendHintReadNone]
		public extern static GType gtk_paper_size_get_type();
		public extern static double gtk_paper_size_get_width( GtkPaperSize* size, GtkUnit unit );
		public extern static Boolean32 gtk_paper_size_is_custom( GtkPaperSize* size );
		public extern static Boolean32 gtk_paper_size_is_equal( GtkPaperSize* size1, GtkPaperSize* size2 );
		public extern static GtkPaperSize* gtk_paper_size_new( CUtf8String name );
		public extern static GtkPaperSize* gtk_paper_size_new_custom( CUtf8String name, CUtf8String displayName, double width, double height, GtkUnit unit );
		public extern static GtkPaperSize* gtk_paper_size_new_from_key_file( GKeyFile* keyFile, CUtf8String groupName, GError** error );
		public extern static GtkPaperSize* gtk_paper_size_new_from_ppd( CUtf8String ppdName, CUtf8String ppdDisplayName, double width, double height );
		public extern static void gtk_paper_size_set_size( GtkPaperSize* size, double width, double height, GtkUnit unit );
		public extern static void gtk_paper_size_to_key_file( GtkPaperSize* size, GKeyFile* keyFile, CUtf8String groupName );

		public extern static GtkPageSetup* gtk_page_setup_copy( GtkPageSetup* other );
		public extern static double gtk_page_setup_get_bottom_margin( GtkPageSetup* setup, GtkUnit unit );
		public extern static double gtk_page_setup_get_left_margin( GtkPageSetup* setup, GtkUnit unit );
		public extern static GtkPageOrientation gtk_page_setup_get_orientation( GtkPageSetup* setup );
		public extern static double gtk_page_setup_get_page_height( GtkPageSetup* setup, GtkUnit unit );
		public extern static double gtk_page_setup_get_page_width( GtkPageSetup* setup, GtkUnit unit );
		public extern static double gtk_page_setup_get_paper_height( GtkPageSetup* setup, GtkUnit unit );
		public extern static GtkPaperSize* gtk_page_setup_get_paper_size( GtkPageSetup* setup );
		public extern static double gtk_page_setup_get_paper_width( GtkPageSetup* setup, GtkUnit unit );
		public extern static double gtk_page_setup_get_right_margin( GtkPageSetup* setup, GtkUnit unit );
		public extern static double gtk_page_setup_get_top_margin( GtkPageSetup* setup, GtkUnit unit );
		[BackendHintReadNone]
		public extern static GType gtk_page_setup_get_type();
		public extern static Boolean32 gtk_page_setup_load_file( GtkPageSetup* setup, CUtf8String fileName, GError** error );
		public extern static Boolean32 gtk_page_setup_load_key_file( GtkPageSetup* setup, GKeyFile* keyFile, CUtf8String groupName, GError** error );
		public extern static GtkPageSetup* gtk_page_setup_new();
		public extern static GtkPageSetup* gtk_page_setup_new_from_file( CUtf8String fileName, GError** error );
		public extern static GtkPageSetup* gtk_page_setup_new_from_key_file( GKeyFile* keyFile, CUtf8String groupName, GError** error );
		public extern static void gtk_page_setup_set_bottom_margin( GtkPageSetup* setup, double margin, GtkUnit unit );
		public extern static void gtk_page_setup_set_left_margin( GtkPageSetup* setup, double margin, GtkUnit unit );
		public extern static void gtk_page_setup_set_orientation( GtkPageSetup* setup, GtkPageOrientation orientation );
		public extern static void gtk_page_setup_set_paper_size( GtkPageSetup* setup, GtkPaperSize* size );
		public extern static void gtk_page_setup_set_paper_size_and_default_margins( GtkPageSetup* setup, GtkPaperSize* size );
		public extern static void gtk_page_setup_set_right_margin( GtkPageSetup* setup, double margin, GtkUnit unit );
		public extern static void gtk_page_setup_set_top_margin( GtkPageSetup* setup, double margin, GtkUnit unit );
		public extern static Boolean32 gtk_page_setup_to_file( GtkPageSetup* setup, CUtf8String fileName, GError** error );
		public extern static void gtk_page_setup_to_key_file( GtkPageSetup* setup, GKeyFile* keyFile, CUtf8String groupName );

		public extern static void gtk_socket_add_id( GtkSocket* socket_, uint windowId );
		public extern static uint gtk_socket_get_id( GtkSocket* socket_ );
		public extern static GdkDrawable* gtk_socket_get_plug_window( GtkSocket* socket_ );
		[BackendHintReadNone]
		public extern static GType gtk_socket_get_type();
		public extern static GtkWidget* gtk_socket_new();
		public extern static void gtk_socket_steal( GtkSocket* socket_, uint wid );

		public extern static void gtk_plug_construct( GtkPlug* plug, uint socketId );
		public extern static void gtk_plug_construct_for_display( GtkPlug* plug, GdkDisplay* display, uint socketId );
		public extern static Boolean32 gtk_plug_get_embedded( GtkPlug* plug );
		public extern static uint gtk_plug_get_id( GtkPlug* plug );
		public extern static GdkDrawable* gtk_plug_get_socket_window( GtkPlug* plug );
		[BackendHintReadNone]
		public extern static GType gtk_plug_get_type();
		public extern static GtkWidget* gtk_plug_new( uint socketId );
		public extern static GtkWidget* gtk_plug_new_for_display( GdkDisplay* display, uint socketId );

		public extern static PangoContext* gtk_print_context_create_pango_context( GtkPrintContext* context );
		public extern static PangoLayout* gtk_print_context_create_pango_layout( GtkPrintContext* context );
		public extern static cairo_t* gtk_print_context_get_cairo_context( GtkPrintContext* context );
		public extern static double gtk_print_context_get_dpi_x( GtkPrintContext* context );
		public extern static double gtk_print_context_get_dpi_y( GtkPrintContext* context );
		public extern static Boolean32 gtk_print_context_get_hard_margins( GtkPrintContext* context, double* top, double* bottom, double* left, double* right );
		public extern static double gtk_print_context_get_height( GtkPrintContext* context );
		public extern static GtkPageSetup* gtk_print_context_get_page_setup( GtkPrintContext* context );
		public extern static PangoFontMap* gtk_print_context_get_pango_fontmap( GtkPrintContext* context );
		[BackendHintReadNone]
		public extern static GType gtk_print_context_get_type();
		public extern static double gtk_print_context_get_width( GtkPrintContext* context );
		public extern static void gtk_print_context_set_cairo_context( GtkPrintContext* context, cairo_t* cr, double dpiX, double dpiY );

		public extern static GtkPrintSettings* gtk_print_settings_copy( GtkPrintSettings* other );
		public extern static void gtk_print_settings_foreach( GtkPrintSettings* settings, Functors.Action<CUtf8String, CUtf8String, void*> func, void* userData );
		public extern static sbyte* gtk_print_settings_get( GtkPrintSettings* settings, CUtf8String key );
		public extern static Boolean32 gtk_print_settings_get_bool( GtkPrintSettings* settings, CUtf8String key );
		public extern static Boolean32 gtk_print_settings_get_collate( GtkPrintSettings* settings );
		public extern static CUtf8String gtk_print_settings_get_default_source( GtkPrintSettings* settings );
		public extern static CUtf8String gtk_print_settings_get_dither( GtkPrintSettings* settings );
		public extern static double gtk_print_settings_get_double( GtkPrintSettings* settings, CUtf8String key );
		public extern static double gtk_print_settings_get_double_with_default( GtkPrintSettings* settings, CUtf8String key, double def );
		public extern static GtkPrintDuplex gtk_print_settings_get_duplex( GtkPrintSettings* settings );
		public extern static CUtf8String gtk_print_settings_get_finishings( GtkPrintSettings* settings );
		public extern static int gtk_print_settings_get_int( GtkPrintSettings* settings, CUtf8String key );
		public extern static int gtk_print_settings_get_int_with_default( GtkPrintSettings* settings, CUtf8String key, int def );
		public extern static double gtk_print_settings_get_length( GtkPrintSettings* settings, CUtf8String key, GtkUnit unit );
		public extern static CUtf8String gtk_print_settings_get_media_type( GtkPrintSettings* settings );
		public extern static int gtk_print_settings_get_n_copies( GtkPrintSettings* settings );
		public extern static int gtk_print_settings_get_number_up( GtkPrintSettings* settings );
		public extern static GtkNumberUpLayout gtk_print_settings_get_number_up_layout( GtkPrintSettings* settings );
		public extern static GtkPageOrientation gtk_print_settings_get_orientation( GtkPrintSettings* settings );
		public extern static CUtf8String gtk_print_settings_get_output_bin( GtkPrintSettings* settings );
		public extern static GtkPageRange* gtk_print_settings_get_page_ranges( GtkPrintSettings* settings, int* numRanges );
		public extern static GtkPageSet gtk_print_settings_get_page_set( GtkPrintSettings* settings );
		public extern static double gtk_print_settings_get_paper_height( GtkPrintSettings* settings, GtkUnit unit );
		public extern static GtkPaperSize* gtk_print_settings_get_paper_size( GtkPrintSettings* settings );
		public extern static double gtk_print_settings_get_paper_width( GtkPrintSettings* settings, GtkUnit unit );
		public extern static GtkPrintPages gtk_print_settings_get_print_pages( GtkPrintSettings* settings );
		public extern static CUtf8String gtk_print_settings_get_printer( GtkPrintSettings* settings );
		public extern static double gtk_print_settings_get_printer_lpi( GtkPrintSettings* settings );
		public extern static GtkPrintQuality gtk_print_settings_get_quality( GtkPrintSettings* settings );
		public extern static int gtk_print_settings_get_resolution( GtkPrintSettings* settings );
		public extern static int gtk_print_settings_get_resolution_x( GtkPrintSettings* settings );
		public extern static int gtk_print_settings_get_resolution_y( GtkPrintSettings* settings );
		public extern static Boolean32 gtk_print_settings_get_reverse( GtkPrintSettings* settings );
		public extern static double gtk_print_settings_get_scale( GtkPrintSettings* settings );
		[BackendHintReadNone]
		public extern static GType gtk_print_settings_get_type();
		public extern static Boolean32 gtk_print_settings_get_use_color( GtkPrintSettings* settings );
		public extern static Boolean32 gtk_print_settings_has_key( GtkPrintSettings* settings, CUtf8String key );
		public extern static Boolean32 gtk_print_settings_load_file( GtkPrintSettings* settings, CUtf8String fileName, GError** error );
		public extern static Boolean32 gtk_print_settings_load_key_file( GtkPrintSettings* settings, GKeyFile* keyFile, CUtf8String groupName, GError** error );
		public extern static GtkPrintSettings* gtk_print_settings_new();
		public extern static GtkPrintSettings* gtk_print_settings_new_from_file( CUtf8String fileName, GError** error );
		public extern static GtkPrintSettings* gtk_print_settings_new_from_key_file( GKeyFile* keyFile, CUtf8String groupName, GError** error );
		public extern static void gtk_print_settings_set( GtkPrintSettings* settings, CUtf8String key, CUtf8String value );
		public extern static void gtk_print_settings_set_bool( GtkPrintSettings* settings, CUtf8String key, Boolean32 value );
		public extern static void gtk_print_settings_set_collate( GtkPrintSettings* settings, Boolean32 collate );
		public extern static void gtk_print_settings_set_default_source( GtkPrintSettings* settings, CUtf8String defaultSource );
		public extern static void gtk_print_settings_set_dither( GtkPrintSettings* settings, CUtf8String dither );
		public extern static void gtk_print_settings_set_double( GtkPrintSettings* settings, CUtf8String key, double value );
		public extern static void gtk_print_settings_set_duplex( GtkPrintSettings* settings, GtkPrintDuplex duplex );
		public extern static void gtk_print_settings_set_finishings( GtkPrintSettings* settings, CUtf8String finishings );
		public extern static void gtk_print_settings_set_int( GtkPrintSettings* settings, CUtf8String key, int value );
		public extern static void gtk_print_settings_set_length( GtkPrintSettings* settings, CUtf8String key, double value, GtkUnit unit );
		public extern static void gtk_print_settings_set_media_type( GtkPrintSettings* settings, CUtf8String mediaType );
		public extern static void gtk_print_settings_set_n_copies( GtkPrintSettings* settings, int numCopies );
		public extern static void gtk_print_settings_set_number_up( GtkPrintSettings* settings, int numberUp );
		public extern static void gtk_print_settings_set_number_up_layout( GtkPrintSettings* settings, GtkNumberUpLayout numberUpLayout );
		public extern static void gtk_print_settings_set_orientation( GtkPrintSettings* settings, GtkPageOrientation orientation );
		public extern static void gtk_print_settings_set_output_bin( GtkPrintSettings* settings, CUtf8String outputBin );
		public extern static void gtk_print_settings_set_page_ranges( GtkPrintSettings* settings, GtkPageRange* pageRanges, int numRanges );
		public extern static void gtk_print_settings_set_page_set( GtkPrintSettings* settings, GtkPageSet pageSet );
		public extern static void gtk_print_settings_set_paper_height( GtkPrintSettings* settings, double height, GtkUnit unit );
		public extern static void gtk_print_settings_set_paper_size( GtkPrintSettings* settings, GtkPaperSize* paperSize );
		public extern static void gtk_print_settings_set_paper_width( GtkPrintSettings* settings, double width, GtkUnit unit );
		public extern static void gtk_print_settings_set_print_pages( GtkPrintSettings* settings, GtkPrintPages pages );
		public extern static void gtk_print_settings_set_printer( GtkPrintSettings* settings, CUtf8String printer );
		public extern static void gtk_print_settings_set_printer_lpi( GtkPrintSettings* settings, double lpi );
		public extern static void gtk_print_settings_set_quality( GtkPrintSettings* settings, GtkPrintQuality quality );
		public extern static void gtk_print_settings_set_resolution( GtkPrintSettings* settings, int resolution );
		public extern static void gtk_print_settings_set_resolution_xy( GtkPrintSettings* settings, int resolutionX, int resolutionY );
		public extern static void gtk_print_settings_set_reverse( GtkPrintSettings* settings, Boolean32 reverse );
		public extern static void gtk_print_settings_set_scale( GtkPrintSettings* settings, double scale );
		public extern static void gtk_print_settings_set_use_color( GtkPrintSettings* settings, Boolean32 useColor );
		public extern static Boolean32 gtk_print_settings_to_file( GtkPrintSettings* settings, CUtf8String fileName, GError** error );
		public extern static void gtk_print_settings_to_key_file( GtkPrintSettings* settings, GKeyFile* keyFile, CUtf8String groupName );
		public extern static void gtk_print_settings_unset( GtkPrintSettings* settings, CUtf8String key );

		public extern static void gtk_print_operation_preview_end_preview( GtkPrintOperationPreview* preview );
		[BackendHintReadNone]
		public extern static GType gtk_print_operation_preview_get_type();
		public extern static Boolean32 gtk_print_operation_preview_is_selected( GtkPrintOperationPreview* preview, int pageNr );
		public extern static void gtk_print_operation_preview_render_page( GtkPrintOperationPreview* preview, int pageNr );

		public extern static uint gtk_print_error_quark();
		public extern static void gtk_print_operation_cancel( GtkPrintOperation* op );
		public extern static void gtk_print_operation_draw_page_finish( GtkPrintOperation* op );
		public extern static GtkPageSetup* gtk_print_operation_get_default_page_setup( GtkPrintOperation* op );
		public extern static Boolean32 gtk_print_operation_get_embed_page_setup( GtkPrintOperation* op );
		public extern static void gtk_print_operation_get_error( GtkPrintOperation* op, GError** error );
		public extern static Boolean32 gtk_print_operation_get_has_selection( GtkPrintOperation* op );
		public extern static int gtk_print_operation_get_n_pages_to_print( GtkPrintOperation* op );
		public extern static GtkPrintSettings* gtk_print_operation_get_print_settings( GtkPrintOperation* op );
		public extern static GtkPrintStatus gtk_print_operation_get_status( GtkPrintOperation* op );
		public extern static CUtf8String gtk_print_operation_get_status_string( GtkPrintOperation* op );
		public extern static Boolean32 gtk_print_operation_get_support_selection( GtkPrintOperation* op );
		[BackendHintReadNone]
		public extern static GType gtk_print_operation_get_type();
		public extern static Boolean32 gtk_print_operation_is_finished( GtkPrintOperation* op );
		public extern static GtkPrintOperation* gtk_print_operation_new();
		public extern static GtkPrintOperationResult gtk_print_operation_run( GtkPrintOperation* op, GtkPrintOperationAction action, GtkWindow* parent, GError** error );
		public extern static void gtk_print_operation_set_allow_async( GtkPrintOperation* op, Boolean32 allowAsync );
		public extern static void gtk_print_operation_set_current_page( GtkPrintOperation* op, int currentPage );
		public extern static void gtk_print_operation_set_custom_tab_label( GtkPrintOperation* op, CUtf8String label );
		public extern static void gtk_print_operation_set_default_page_setup( GtkPrintOperation* op, GtkPageSetup* defaultPageSetup );
		public extern static void gtk_print_operation_set_defer_drawing( GtkPrintOperation* op );
		public extern static void gtk_print_operation_set_embed_page_setup( GtkPrintOperation* op, Boolean32 embed );
		public extern static void gtk_print_operation_set_export_filename( GtkPrintOperation* op, CUtf8String filename );
		public extern static void gtk_print_operation_set_has_selection( GtkPrintOperation* op, Boolean32 hasSelection );
		public extern static void gtk_print_operation_set_job_name( GtkPrintOperation* op, CUtf8String jobName );
		public extern static void gtk_print_operation_set_n_pages( GtkPrintOperation* op, int nPages );
		public extern static void gtk_print_operation_set_print_settings( GtkPrintOperation* op, GtkPrintSettings* printSettings );
		public extern static void gtk_print_operation_set_show_progress( GtkPrintOperation* op, Boolean32 showProgress );
		public extern static void gtk_print_operation_set_support_selection( GtkPrintOperation* op, Boolean32 supportSelection );
		public extern static void gtk_print_operation_set_track_print_status( GtkPrintOperation* op, Boolean32 trackStatus );
		public extern static void gtk_print_operation_set_unit( GtkPrintOperation* op, GtkUnit unit );
		public extern static void gtk_print_operation_set_use_full_page( GtkPrintOperation* op, Boolean32 fullPage );
		public extern static GtkPageSetup* gtk_print_run_page_setup_dialog( GtkWindow* parent, GtkPageSetup* pageSetup, GtkPrintSettings* settings );
		public extern static void gtk_print_run_page_setup_dialog_async( GtkWindow* parent, GtkPageSetup* pageSetup, GtkPrintSettings* settings, Functors.Action<GtkPageSetup*, void*> doneCb, void* data );

		public extern static void gtk_progress_configure( GtkProgress* progress, double value, double min, double max );
		public extern static double gtk_progress_get_current_percentage( GtkProgress* progress );
		public extern static sbyte* gtk_progress_get_current_text( GtkProgress* progress );
		public extern static double gtk_progress_get_percentage_from_value( GtkProgress* progress, double value );
		public extern static CUtf8String gtk_progress_get_text_from_value( GtkProgress* progress, double value );
		[BackendHintReadNone]
		public extern static GType gtk_progress_get_type();
		public extern static double gtk_progress_get_value( GtkProgress* progress );
		public extern static void gtk_progress_set_activity_mode( GtkProgress* progress, Boolean32 activityMode );
		public extern static void gtk_progress_set_adjustment( GtkProgress* progress, GtkAdjustment* adjustment );
		public extern static void gtk_progress_set_format_string( GtkProgress* progress, CUtf8String format );
		public extern static void gtk_progress_set_percentage( GtkProgress* progress, double percentage );
		public extern static void gtk_progress_set_show_text( GtkProgress* progress, Boolean32 showText );
		public extern static void gtk_progress_set_text_alignment( GtkProgress* progress, float xAlign, float yAlign );
		public extern static void gtk_progress_set_value( GtkProgress* progress, double value );

		public extern static PangoEllipsizeMode gtk_progress_bar_get_ellipsize( GtkProgressBar* pbar );
		public extern static double gtk_progress_bar_get_fraction( GtkProgressBar* pbar );
		public extern static GtkProgressBarOrientation gtk_progress_bar_get_orientation( GtkProgressBar* pbar );
		public extern static double gtk_progress_bar_get_pulse_step( GtkProgressBar* pbar );
		public extern static CUtf8String gtk_progress_bar_get_text( GtkProgressBar* pbar );
		[BackendHintReadNone]
		public extern static GType gtk_progress_bar_get_type();
		public extern static GtkWidget* gtk_progress_bar_new();
		public extern static GtkWidget* gtk_progress_bar_new_with_adjustment( GtkAdjustment* adjustment );
		public extern static void gtk_progress_bar_pulse( GtkProgressBar* pbar );
		public extern static void gtk_progress_bar_set_activity_blocks( GtkProgressBar* pbar, uint blocks );
		public extern static void gtk_progress_bar_set_activity_step( GtkProgressBar* pbar, uint step );
		public extern static void gtk_progress_bar_set_bar_style( GtkProgressBar* pbar, GtkProgressBarStyle style );
		public extern static void gtk_progress_bar_set_discrete_blocks( GtkProgressBar* pbar, uint blocks );
		public extern static void gtk_progress_bar_set_ellipsize( GtkProgressBar* pbar, PangoEllipsizeMode mode );
		public extern static void gtk_progress_bar_set_fraction( GtkProgressBar* pbar, double fraction );
		public extern static void gtk_progress_bar_set_orientation( GtkProgressBar* pbar, GtkProgressBarOrientation orientation );
		public extern static void gtk_progress_bar_set_pulse_step( GtkProgressBar* pbar, double fraction );
		public extern static void gtk_progress_bar_set_text( GtkProgressBar* pbar, CUtf8String text );
		public extern static void gtk_progress_bar_update( GtkProgressBar* pbar, double percentage );

		public extern static Boolean32 gtk_toggle_action_get_active( GtkToggleAction* action );
		public extern static Boolean32 gtk_toggle_action_get_draw_as_radio( GtkToggleAction* action );
		[BackendHintReadNone]
		public extern static GType gtk_toggle_action_get_type();
		public extern static GtkToggleAction* gtk_toggle_action_new( CUtf8String name, CUtf8String label, CUtf8String tooltip, CUtf8String stockId );
		public extern static void gtk_toggle_action_set_active( GtkToggleAction* action, Boolean32 isActive );
		public extern static void gtk_toggle_action_set_draw_as_radio( GtkToggleAction* action, Boolean32 drawAsRadio );
		public extern static void gtk_toggle_action_toggled( GtkToggleAction* action );

		public extern static int gtk_radio_action_get_current_value( GtkRadioAction* action );
		public extern static GSList* gtk_radio_action_get_group( GtkRadioAction* action );
		[BackendHintReadNone]
		public extern static GType gtk_radio_action_get_type();
		public extern static GtkRadioAction* gtk_radio_action_new( CUtf8String name, CUtf8String label, CUtf8String tooltip, CUtf8String stockId, int value );
		public extern static void gtk_radio_action_set_current_value( GtkRadioAction* action, int currentValue );
		public extern static void gtk_radio_action_set_group( GtkRadioAction* action, GSList* group );

		public extern static GSList* gtk_radio_button_get_group( GtkRadioButton* radioButton );
		[BackendHintReadNone]
		public extern static GType gtk_radio_button_get_type();
		public extern static GtkRadioButton* gtk_radio_button_new( GSList* group );
		public extern static GtkRadioButton* gtk_radio_button_new_from_widget( GtkRadioButton* radioGroupMember );
		public extern static GtkRadioButton* gtk_radio_button_new_with_label( GSList* group, CUtf8String label );
		public extern static GtkRadioButton* gtk_radio_button_new_with_label_from_widget( GtkRadioButton* radioGroupMember, CUtf8String label );
		public extern static GtkRadioButton* gtk_radio_button_new_with_mnemonic( GSList* group, CUtf8String label );
		public extern static GtkRadioButton* gtk_radio_button_new_with_mnemonic_from_widget( GtkRadioButton* radioGroupMember, CUtf8String label );
		public extern static void gtk_radio_button_set_group( GtkRadioButton* radioButton, GSList* group );

		public extern static GSList* gtk_radio_menu_item_get_group( GtkRadioMenuItem* radioMenuItem );
		[BackendHintReadNone]
		public extern static GType gtk_radio_menu_item_get_type();
		public extern static GtkWidget* gtk_radio_menu_item_new( GSList* group );
		public extern static GtkWidget* gtk_radio_menu_item_new_from_widget( GtkRadioMenuItem* group );
		public extern static GtkWidget* gtk_radio_menu_item_new_with_label( GSList* group, CUtf8String label );
		public extern static GtkWidget* gtk_radio_menu_item_new_with_label_from_widget( GtkRadioMenuItem* group, CUtf8String label );
		public extern static GtkWidget* gtk_radio_menu_item_new_with_mnemonic( GSList* group, CUtf8String label );
		public extern static GtkWidget* gtk_radio_menu_item_new_with_mnemonic_from_widget( GtkRadioMenuItem* group, CUtf8String label );
		public extern static void gtk_radio_menu_item_set_group( GtkRadioMenuItem* radioMenuItem, GSList* group );

		public extern static Boolean32 gtk_toggle_tool_button_get_active( GtkToggleToolButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_toggle_tool_button_get_type();
		public extern static GtkToolItem* gtk_toggle_tool_button_new();
		public extern static GtkToolItem* gtk_toggle_tool_button_new_from_stock( CUtf8String stockId );
		public extern static void gtk_toggle_tool_button_set_active( GtkToggleToolButton* button, Boolean32 isActive );

		public extern static GSList* gtk_radio_tool_button_get_group( GtkRadioToolButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_radio_tool_button_get_type();
		public extern static GtkToolItem* gtk_radio_tool_button_new( GSList* group );
		public extern static GtkToolItem* gtk_radio_tool_button_new_from_stock( GSList* group, CUtf8String stockId );
		public extern static GtkToolItem* gtk_radio_tool_button_new_from_widget( GtkRadioToolButton* group );
		public extern static GtkToolItem* gtk_radio_tool_button_new_with_stock_from_widget( GtkRadioToolButton* group, CUtf8String stockId );
		public extern static void gtk_radio_tool_button_set_group( GtkRadioToolButton* button, GSList* group );

		public extern static Boolean32 gtk_recent_info_exists( GtkRecentInfo* info );
		public extern static intptr gtk_recent_info_get_added( GtkRecentInfo* info );
		public extern static int gtk_recent_info_get_age( GtkRecentInfo* info );
		public extern static Boolean32 gtk_recent_info_get_application_info( GtkRecentInfo* info, CUtf8String appName, sbyte** appExec, uint* count, intptr* time_ );
		public extern static sbyte** gtk_recent_info_get_applications( GtkRecentInfo* info, uint* length );
		public extern static CUtf8String gtk_recent_info_get_description( GtkRecentInfo* info );
		public extern static CUtf8String gtk_recent_info_get_display_name( GtkRecentInfo* info );
		public extern static sbyte** gtk_recent_info_get_groups( GtkRecentInfo* info, uint* length );
		public extern static GdkPixbuf* gtk_recent_info_get_icon( GtkRecentInfo* info, int size );
		public extern static CUtf8String gtk_recent_info_get_mime_type( GtkRecentInfo* info );
		public extern static intptr gtk_recent_info_get_modified( GtkRecentInfo* info );
		public extern static Boolean32 gtk_recent_info_get_private_hint( GtkRecentInfo* info );
		public extern static CUtf8String gtk_recent_info_get_short_name( GtkRecentInfo* info );
		[BackendHintReadNone]
		public extern static GType gtk_recent_info_get_type();
		public extern static CUtf8String gtk_recent_info_get_uri( GtkRecentInfo* info );
		public extern static CUtf8String gtk_recent_info_get_uri_display( GtkRecentInfo* info );
		public extern static intptr gtk_recent_info_get_visited( GtkRecentInfo* info );
		public extern static Boolean32 gtk_recent_info_has_application( GtkRecentInfo* info, CUtf8String appName );
		public extern static Boolean32 gtk_recent_info_has_group( GtkRecentInfo* info, CUtf8String groupName );
		public extern static Boolean32 gtk_recent_info_is_local( GtkRecentInfo* info );
		public extern static CUtf8String gtk_recent_info_last_application( GtkRecentInfo* info );
		public extern static Boolean32 gtk_recent_info_match( GtkRecentInfo* infoA, GtkRecentInfo* infoB );
		public extern static GtkRecentInfo* gtk_recent_info_ref( GtkRecentInfo* info );
		public extern static void gtk_recent_info_unref( GtkRecentInfo* info );
		public extern static Boolean32 gtk_recent_manager_add_full( GtkRecentManager* manager, CUtf8String uri, GtkRecentData* recentData );
		public extern static Boolean32 gtk_recent_manager_add_item( GtkRecentManager* manager, CUtf8String uri );
		public extern static uint gtk_recent_manager_error_quark();
		public extern static GtkRecentManager* gtk_recent_manager_get_default();
		public extern static GtkRecentManager* gtk_recent_manager_get_for_screen( GdkScreen* screen );
		public extern static GList* gtk_recent_manager_get_items( GtkRecentManager* manager );
		public extern static int gtk_recent_manager_get_limit( GtkRecentManager* manager );
		[BackendHintReadNone]
		public extern static GType gtk_recent_manager_get_type();
		public extern static Boolean32 gtk_recent_manager_has_item( GtkRecentManager* manager, CUtf8String uri );
		public extern static GtkRecentInfo* gtk_recent_manager_lookup_item( GtkRecentManager* manager, CUtf8String uri, GError** error );
		public extern static Boolean32 gtk_recent_manager_move_item( GtkRecentManager* manager, CUtf8String uri, CUtf8String newUri, GError** error );
		public extern static GtkRecentManager* gtk_recent_manager_new();
		public extern static int gtk_recent_manager_purge_items( GtkRecentManager* manager, GError** error );
		public extern static Boolean32 gtk_recent_manager_remove_item( GtkRecentManager* manager, CUtf8String uri, GError** error );
		public extern static void gtk_recent_manager_set_limit( GtkRecentManager* manager, int limit );
		public extern static void gtk_recent_manager_set_screen( GtkRecentManager* manager, GdkScreen* screen );

		public extern static Boolean32 gtk_recent_action_get_show_numbers( GtkRecentAction* action );
		[BackendHintReadNone]
		public extern static GType gtk_recent_action_get_type();
		public extern static GtkAction* gtk_recent_action_new( CUtf8String name, CUtf8String label, CUtf8String tooltip, CUtf8String stockId );
		public extern static GtkAction* gtk_recent_action_new_for_manager( CUtf8String name, CUtf8String label, CUtf8String tooltip, CUtf8String stockId, GtkRecentManager* manager );
		public extern static void gtk_recent_action_set_show_numbers( GtkRecentAction* action, Boolean32 showNumbers );

		public extern static void gtk_recent_filter_add_age( GtkRecentFilter* filter, int days );
		public extern static void gtk_recent_filter_add_application( GtkRecentFilter* filter, CUtf8String application );
		public extern static void gtk_recent_filter_add_custom( GtkRecentFilter* filter, GtkRecentFilterFlags needed, Functors.Func<GtkRecentFilterInfo*, void*, Boolean32> func, void* data, Functors.Action<void*> dataDestroy );
		public extern static void gtk_recent_filter_add_group( GtkRecentFilter* filter, CUtf8String group );
		public extern static void gtk_recent_filter_add_mime_type( GtkRecentFilter* filter, CUtf8String mimeType );
		public extern static void gtk_recent_filter_add_pattern( GtkRecentFilter* filter, CUtf8String pattern );
		public extern static void gtk_recent_filter_add_pixbuf_formats( GtkRecentFilter* filter );
		public extern static Boolean32 gtk_recent_filter_filter( GtkRecentFilter* filter, GtkRecentFilterInfo* filterInfo );
		public extern static CUtf8String gtk_recent_filter_get_name( GtkRecentFilter* filter );
		public extern static GtkRecentFilterFlags gtk_recent_filter_get_needed( GtkRecentFilter* filter );
		[BackendHintReadNone]
		public extern static GType gtk_recent_filter_get_type();
		public extern static GtkRecentFilter* gtk_recent_filter_new();
		public extern static void gtk_recent_filter_set_name( GtkRecentFilter* filter, CUtf8String name );

		public extern static void gtk_recent_chooser_add_filter( GtkRecentChooser* chooser, GtkRecentFilter* filter );
		public extern static uint gtk_recent_chooser_error_quark();
		public extern static GtkRecentInfo* gtk_recent_chooser_get_current_item( GtkRecentChooser* chooser );
		public extern static CUtf8String gtk_recent_chooser_get_current_uri( GtkRecentChooser* chooser );
		public extern static GtkRecentFilter* gtk_recent_chooser_get_filter( GtkRecentChooser* chooser );
		public extern static GList* gtk_recent_chooser_get_items( GtkRecentChooser* chooser );
		public extern static int gtk_recent_chooser_get_limit( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_local_only( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_select_multiple( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_show_icons( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_show_not_found( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_show_numbers( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_show_private( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_get_show_tips( GtkRecentChooser* chooser );
		public extern static GtkRecentSortType gtk_recent_chooser_get_sort_type( GtkRecentChooser* chooser );
		[BackendHintReadNone]
		public extern static GType gtk_recent_chooser_get_type();
		public extern static sbyte** gtk_recent_chooser_get_uris( GtkRecentChooser* chooser, uint* length );
		public extern static GSList* gtk_recent_chooser_list_filters( GtkRecentChooser* chooser );
		public extern static void gtk_recent_chooser_remove_filter( GtkRecentChooser* chooser, GtkRecentFilter* filter );
		public extern static void gtk_recent_chooser_select_all( GtkRecentChooser* chooser );
		public extern static Boolean32 gtk_recent_chooser_select_uri( GtkRecentChooser* chooser, CUtf8String uri, GError** error );
		public extern static Boolean32 gtk_recent_chooser_set_current_uri( GtkRecentChooser* chooser, CUtf8String uri, GError** error );
		public extern static void gtk_recent_chooser_set_filter( GtkRecentChooser* chooser, GtkRecentFilter* filter );
		public extern static void gtk_recent_chooser_set_limit( GtkRecentChooser* chooser, int limit );
		public extern static void gtk_recent_chooser_set_local_only( GtkRecentChooser* chooser, Boolean32 localOnly );
		public extern static void gtk_recent_chooser_set_select_multiple( GtkRecentChooser* chooser, Boolean32 selectMultiple );
		public extern static void gtk_recent_chooser_set_show_icons( GtkRecentChooser* chooser, Boolean32 showIcons );
		public extern static void gtk_recent_chooser_set_show_not_found( GtkRecentChooser* chooser, Boolean32 showNotFound );
		public extern static void gtk_recent_chooser_set_show_numbers( GtkRecentChooser* chooser, Boolean32 showNumbers );
		public extern static void gtk_recent_chooser_set_show_private( GtkRecentChooser* chooser, Boolean32 showPrivate );
		public extern static void gtk_recent_chooser_set_show_tips( GtkRecentChooser* chooser, Boolean32 showTips );
		public extern static void gtk_recent_chooser_set_sort_func( GtkRecentChooser* chooser, Functors.Func<GtkRecentInfo*, GtkRecentInfo*, void*, int> sortFunc, void* sortData, Functors.Action<void*> dataDestroy );
		public extern static void gtk_recent_chooser_set_sort_type( GtkRecentChooser* chooser, GtkRecentSortType sortType );
		public extern static void gtk_recent_chooser_unselect_all( GtkRecentChooser* chooser );
		public extern static void gtk_recent_chooser_unselect_uri( GtkRecentChooser* chooser, CUtf8String uri );

		[BackendHintReadNone]
		public extern static GType gtk_recent_chooser_dialog_get_type();

		public extern static Boolean32 gtk_recent_chooser_menu_get_show_numbers( GtkRecentChooserMenu* menu );
		[BackendHintReadNone]
		public extern static GType gtk_recent_chooser_menu_get_type();
		public extern static GtkWidget* gtk_recent_chooser_menu_new();
		public extern static GtkWidget* gtk_recent_chooser_menu_new_for_manager( GtkRecentManager* manager );
		public extern static void gtk_recent_chooser_menu_set_show_numbers( GtkRecentChooserMenu* menu, Boolean32 showNumbers );

		[BackendHintReadNone]
		public extern static GType gtk_recent_chooser_widget_get_type();
		public extern static GtkWidget* gtk_recent_chooser_widget_new();
		public extern static GtkWidget* gtk_recent_chooser_widget_new_for_manager( GtkRecentManager* manager );

		public extern static GtkAdjustment* gtk_scale_button_get_adjustment( GtkScaleButton* button );
		public extern static GtkWidget* gtk_scale_button_get_minus_button( GtkScaleButton* button );
		public extern static GtkOrientation gtk_scale_button_get_orientation( GtkScaleButton* button );
		public extern static GtkWidget* gtk_scale_button_get_plus_button( GtkScaleButton* button );
		public extern static GtkWidget* gtk_scale_button_get_popup( GtkScaleButton* button );
		[BackendHintReadNone]
		public extern static GType gtk_scale_button_get_type();
		public extern static double gtk_scale_button_get_value( GtkScaleButton* button );
		public extern static GtkWidget* gtk_scale_button_new( GtkIconSize size, double min, double max, double step, sbyte** icons );
		public extern static void gtk_scale_button_set_adjustment( GtkScaleButton* button, GtkAdjustment* adjustment );
		public extern static void gtk_scale_button_set_icons( GtkScaleButton* button, sbyte** icons );
		public extern static void gtk_scale_button_set_orientation( GtkScaleButton* button, GtkOrientation orientation );
		public extern static void gtk_scale_button_set_value( GtkScaleButton* button, double value );

		[BackendHintReadNone]
		public extern static GType gtk_vscrollbar_get_type();
		public extern static GtkVScrollbar* gtk_vscrollbar_new( GtkAdjustment* adjustment );

		public extern static GdkDrawable* gtk_viewport_get_bin_window( GtkViewport* viewport );
		public extern static GtkAdjustment* gtk_viewport_get_hadjustment( GtkViewport* viewport );
		public extern static GtkShadowType gtk_viewport_get_shadow_type( GtkViewport* viewport );
		[BackendHintReadNone]
		public extern static GType gtk_viewport_get_type();
		public extern static GtkAdjustment* gtk_viewport_get_vadjustment( GtkViewport* viewport );
		public extern static GdkDrawable* gtk_viewport_get_view_window( GtkViewport* viewport );
		public extern static GtkWidget* gtk_viewport_new( GtkAdjustment* hadjustment, GtkAdjustment* vadjustment );
		public extern static void gtk_viewport_set_hadjustment( GtkViewport* viewport, GtkAdjustment* adjustment );
		public extern static void gtk_viewport_set_shadow_type( GtkViewport* viewport, GtkShadowType type );
		public extern static void gtk_viewport_set_vadjustment( GtkViewport* viewport, GtkAdjustment* adjustment );

		public extern static void gtk_scrolled_window_add_with_viewport( GtkScrolledWindow* scrolledWindow, GtkWidget* child );
		public extern static GtkAdjustment* gtk_scrolled_window_get_hadjustment( GtkScrolledWindow* scrolledWindow );
		public extern static GtkWidget* gtk_scrolled_window_get_hscrollbar( GtkScrolledWindow* scrolledWindow );
		public extern static GtkCornerType gtk_scrolled_window_get_placement( GtkScrolledWindow* scrolledWindow );
		public extern static void gtk_scrolled_window_get_policy( GtkScrolledWindow* scrolledWindow, GtkPolicyType* hscrollbarPolicy, GtkPolicyType* vscrollbarPolicy );
		public extern static GtkShadowType gtk_scrolled_window_get_shadow_type( GtkScrolledWindow* scrolledWindow );
		[BackendHintReadNone]
		public extern static GType gtk_scrolled_window_get_type();
		public extern static GtkAdjustment* gtk_scrolled_window_get_vadjustment( GtkScrolledWindow* scrolledWindow );
		public extern static GtkWidget* gtk_scrolled_window_get_vscrollbar( GtkScrolledWindow* scrolledWindow );
		public extern static GtkWidget* gtk_scrolled_window_new( GtkAdjustment* hadjustment, GtkAdjustment* vadjustment );
		public extern static void gtk_scrolled_window_set_hadjustment( GtkScrolledWindow* scrolledWindow, GtkAdjustment* hadjustment );
		public extern static void gtk_scrolled_window_set_placement( GtkScrolledWindow* scrolledWindow, GtkCornerType windowPlacement );
		public extern static void gtk_scrolled_window_set_policy( GtkScrolledWindow* scrolledWindow, GtkPolicyType hscrollbarPolicy, GtkPolicyType vscrollbarPolicy );
		public extern static void gtk_scrolled_window_set_shadow_type( GtkScrolledWindow* scrolledWindow, GtkShadowType type );
		public extern static void gtk_scrolled_window_set_vadjustment( GtkScrolledWindow* scrolledWindow, GtkAdjustment* vadjustment );
		public extern static void gtk_scrolled_window_unset_placement( GtkScrolledWindow* scrolledWindow );

		[BackendHintReadNone]
		public extern static GType gtk_separator_menu_item_get_type();
		public extern static GtkSeparatorMenuItem* gtk_separator_menu_item_new();

		public extern static Boolean32 gtk_separator_tool_item_get_draw( GtkSeparatorToolItem* item );
		[BackendHintReadNone]
		public extern static GType gtk_separator_tool_item_get_type();
		public extern static GtkToolItem* gtk_separator_tool_item_new();
		public extern static void gtk_separator_tool_item_set_draw( GtkSeparatorToolItem* item, Boolean32 draw );

		public extern static Boolean32 gtk_show_uri( GdkScreen* screen, sbyte* uri, uint timestamp, GError** error );

		public extern static void gtk_spin_button_configure( GtkSpinButton* spinButton, GtkAdjustment* adjustment, double climbRate, uint digits );
		public extern static GtkAdjustment* gtk_spin_button_get_adjustment( GtkSpinButton* spinButton );
		public extern static uint gtk_spin_button_get_digits( GtkSpinButton* spinButton );
		public extern static void gtk_spin_button_get_increments( GtkSpinButton* spinButton, double* step, double* page );
		public extern static Boolean32 gtk_spin_button_get_numeric( GtkSpinButton* spinButton );
		public extern static void gtk_spin_button_get_range( GtkSpinButton* spinButton, double* min, double* max );
		public extern static Boolean32 gtk_spin_button_get_snap_to_ticks( GtkSpinButton* spinButton );
		[BackendHintReadNone]
		public extern static GType gtk_spin_button_get_type();
		public extern static GtkSpinButtonUpdatePolicy gtk_spin_button_get_update_policy( GtkSpinButton* spinButton );
		public extern static double gtk_spin_button_get_value( GtkSpinButton* spinButton );
		public extern static int gtk_spin_button_get_value_as_int( GtkSpinButton* spinButton );
		public extern static Boolean32 gtk_spin_button_get_wrap( GtkSpinButton* spinButton );
		public extern static GtkWidget* gtk_spin_button_new( GtkAdjustment* adjustment, double climbRate, uint digits );
		public extern static GtkWidget* gtk_spin_button_new_with_range( double min, double max, double step );
		public extern static void gtk_spin_button_set_adjustment( GtkSpinButton* spinButton, GtkAdjustment* adjustment );
		public extern static void gtk_spin_button_set_digits( GtkSpinButton* spinButton, uint digits );
		public extern static void gtk_spin_button_set_increments( GtkSpinButton* spinButton, double step, double page );
		public extern static void gtk_spin_button_set_numeric( GtkSpinButton* spinButton, Boolean32 numeric );
		public extern static void gtk_spin_button_set_range( GtkSpinButton* spinButton, double min, double max );
		public extern static void gtk_spin_button_set_snap_to_ticks( GtkSpinButton* spinButton, Boolean32 snapToTicks );
		public extern static void gtk_spin_button_set_update_policy( GtkSpinButton* spinButton, GtkSpinButtonUpdatePolicy policy );
		public extern static void gtk_spin_button_set_value( GtkSpinButton* spinButton, double value );
		public extern static void gtk_spin_button_set_wrap( GtkSpinButton* spinButton, Boolean32 wrap );
		public extern static void gtk_spin_button_spin( GtkSpinButton* spinButton, GtkSpinType direction, double increment );
		public extern static void gtk_spin_button_update( GtkSpinButton* spinButton );

		[BackendHintReadNone]
		public extern static GType gtk_spinner_get_type();
		public extern static GtkWidget* gtk_spinner_new();
		public extern static void gtk_spinner_start( GtkSpinner* spinner );
		public extern static void gtk_spinner_stop( GtkSpinner* spinner );

		public extern static uint gtk_statusbar_get_context_id( GtkStatusbar* statusbar, CUtf8String contextDescription );
		public extern static Boolean32 gtk_statusbar_get_has_resize_grip( GtkStatusbar* statusbar );
		public extern static GtkWidget* gtk_statusbar_get_message_area( GtkStatusbar* statusbar );
		[BackendHintReadNone]
		public extern static GType gtk_statusbar_get_type();
		public extern static GtkWidget* gtk_statusbar_new();
		public extern static void gtk_statusbar_pop( GtkStatusbar* statusbar, uint contextId );
		public extern static uint gtk_statusbar_push( GtkStatusbar* statusbar, uint contextId, CUtf8String text );
		public extern static void gtk_statusbar_remove( GtkStatusbar* statusbar, uint contextId, uint messageId );
		public extern static void gtk_statusbar_remove_all( GtkStatusbar* statusbar, uint contextId );
		public extern static void gtk_statusbar_set_has_resize_grip( GtkStatusbar* statusbar, Boolean32 setting );

		public extern static Boolean32 gtk_status_icon_get_blinking( GtkStatusIcon* statusIcon );
		public extern static Boolean32 gtk_status_icon_get_geometry( GtkStatusIcon* statusIcon, GdkScreen** screen, GdkRectangle* area, GtkOrientation* orientation );
		public extern static GIcon* gtk_status_icon_get_gicon( GtkStatusIcon* statusIcon );
		public extern static Boolean32 gtk_status_icon_get_has_tooltip( GtkStatusIcon* statusIcon );
		public extern static CUtf8String gtk_status_icon_get_icon_name( GtkStatusIcon* statusIcon );
		public extern static GdkPixbuf* gtk_status_icon_get_pixbuf( GtkStatusIcon* statusIcon );
		public extern static GdkScreen* gtk_status_icon_get_screen( GtkStatusIcon* statusIcon );
		public extern static int gtk_status_icon_get_size( GtkStatusIcon* statusIcon );
		public extern static CUtf8String gtk_status_icon_get_stock( GtkStatusIcon* statusIcon );
		public extern static GtkImageType gtk_status_icon_get_storage_type( GtkStatusIcon* statusIcon );
		public extern static sbyte* gtk_status_icon_get_title( GtkStatusIcon* statusIcon );
		public extern static sbyte* gtk_status_icon_get_tooltip_markup( GtkStatusIcon* statusIcon );
		public extern static sbyte* gtk_status_icon_get_tooltip_text( GtkStatusIcon* statusIcon );
		[BackendHintReadNone]
		public extern static GType gtk_status_icon_get_type();
		public extern static Boolean32 gtk_status_icon_get_visible( GtkStatusIcon* statusIcon );
		public extern static uint gtk_status_icon_get_x11_window_id( GtkStatusIcon* statusIcon );
		public extern static Boolean32 gtk_status_icon_is_embedded( GtkStatusIcon* statusIcon );
		public extern static GtkStatusIcon* gtk_status_icon_new();
		public extern static GtkStatusIcon* gtk_status_icon_new_from_file( CUtf8String filename );
		public extern static GtkStatusIcon* gtk_status_icon_new_from_gicon( GIcon* icon );
		public extern static GtkStatusIcon* gtk_status_icon_new_from_icon_name( CUtf8String iconName );
		public extern static GtkStatusIcon* gtk_status_icon_new_from_pixbuf( GdkPixbuf* pixbuf );
		public extern static GtkStatusIcon* gtk_status_icon_new_from_stock( CUtf8String stockId );
		public extern static void gtk_status_icon_position_menu( GtkMenu* menu, int* x, int* y, int* pushIn, void* userData );
		public extern static void gtk_status_icon_set_blinking( GtkStatusIcon* statusIcon, Boolean32 blinking );
		public extern static void gtk_status_icon_set_from_file( GtkStatusIcon* statusIcon, CUtf8String filename );
		public extern static void gtk_status_icon_set_from_gicon( GtkStatusIcon* statusIcon, GIcon* icon );
		public extern static void gtk_status_icon_set_from_icon_name( GtkStatusIcon* statusIcon, CUtf8String iconName );
		public extern static void gtk_status_icon_set_from_pixbuf( GtkStatusIcon* statusIcon, GdkPixbuf* pixbuf );
		public extern static void gtk_status_icon_set_from_stock( GtkStatusIcon* statusIcon, CUtf8String stockId );
		public extern static void gtk_status_icon_set_has_tooltip( GtkStatusIcon* statusIcon, Boolean32 hasTooltip );
		public extern static void gtk_status_icon_set_name( GtkStatusIcon* statusIcon, CUtf8String name );
		public extern static void gtk_status_icon_set_screen( GtkStatusIcon* statusIcon, GdkScreen* screen );
		public extern static void gtk_status_icon_set_title( GtkStatusIcon* statusIcon, sbyte* title );
		public extern static void gtk_status_icon_set_tooltip( GtkStatusIcon* statusIcon, CUtf8String tooltipText );
		public extern static void gtk_status_icon_set_tooltip_markup( GtkStatusIcon* statusIcon, sbyte* markup );
		public extern static void gtk_status_icon_set_tooltip_text( GtkStatusIcon* statusIcon, CUtf8String text );
		public extern static void gtk_status_icon_set_visible( GtkStatusIcon* statusIcon, Boolean32 visible );

		public extern static void gtk_stock_add( GtkStockItem* items, uint nItems );
		public extern static void gtk_stock_add_static( GtkStockItem* items, uint nItems );
		public extern static GtkStockItem* gtk_stock_item_copy( GtkStockItem* item );
		public extern static void gtk_stock_item_free( GtkStockItem* item );
		public extern static GSList* gtk_stock_list_ids();
		public extern static Boolean32 gtk_stock_lookup( CUtf8String stockId, GtkStockItem* item );
		public extern static void gtk_stock_set_translate_func( CUtf8String domain, Functors.Func<CUtf8String, void*, CUtf8String> func, void* data, Functors.Action<void*> notify );

		public extern static void gtk_table_attach( GtkTable* table, GtkWidget* child, uint leftAttach, uint rightAttach, uint topAttach, uint bottomAttach, GtkAttachOptions xoptions, GtkAttachOptions yoptions, uint xpadding, uint ypadding );
		public extern static void gtk_table_attach_defaults( GtkTable* table, GtkWidget* widget, uint leftAttach, uint rightAttach, uint topAttach, uint bottomAttach );
		public extern static uint gtk_table_get_col_spacing( GtkTable* table, uint column );
		public extern static uint gtk_table_get_default_col_spacing( GtkTable* table );
		public extern static uint gtk_table_get_default_row_spacing( GtkTable* table );
		public extern static Boolean32 gtk_table_get_homogeneous( GtkTable* table );
		public extern static uint gtk_table_get_row_spacing( GtkTable* table, uint row );
		public extern static void gtk_table_get_size( GtkTable* table, uint* rows, uint* columns );
		[BackendHintReadNone]
		public extern static GType gtk_table_get_type();
		public extern static GtkTable* gtk_table_new( uint rows, uint columns, Boolean32 homogeneous );
		public extern static void gtk_table_resize( GtkTable* table, uint rows, uint columns );
		public extern static void gtk_table_set_col_spacing( GtkTable* table, uint column, uint spacing );
		public extern static void gtk_table_set_col_spacings( GtkTable* table, uint spacing );
		public extern static void gtk_table_set_homogeneous( GtkTable* table, Boolean32 homogeneous );
		public extern static void gtk_table_set_row_spacing( GtkTable* table, uint row, uint spacing );
		public extern static void gtk_table_set_row_spacings( GtkTable* table, uint spacing );

		[BackendHintReadNone]
		public extern static GType gtk_tearoff_menu_item_get_type();
		public extern static GtkTearoffMenuItem* gtk_tearoff_menu_item_new();

		public extern static void gtk_text_tag_table_add( GtkTextTagTable* table, GtkTextTag* tag );
		public extern static void gtk_text_tag_table_foreach( GtkTextTagTable* table, Functors.Action<GtkTextTag*, void*> func, void* data );
		public extern static int gtk_text_tag_table_get_size( GtkTextTagTable* table );
		[BackendHintReadNone]
		public extern static GType gtk_text_tag_table_get_type();
		public extern static GtkTextTag* gtk_text_tag_table_lookup( GtkTextTagTable* table, CUtf8String name );
		public extern static GtkTextTagTable* gtk_text_tag_table_new();
		public extern static void gtk_text_tag_table_remove( GtkTextTagTable* table, GtkTextTag* tag );

		public extern static GtkTextBuffer* gtk_text_mark_get_buffer( GtkTextMark* mark );
		public extern static Boolean32 gtk_text_mark_get_deleted( GtkTextMark* mark );
		public extern static Boolean32 gtk_text_mark_get_left_gravity( GtkTextMark* mark );
		public extern static CUtf8String gtk_text_mark_get_name( GtkTextMark* mark );
		[BackendHintReadNone]
		public extern static GType gtk_text_mark_get_type();
		public extern static Boolean32 gtk_text_mark_get_visible( GtkTextMark* mark );
		public extern static GtkTextMark* gtk_text_mark_new( CUtf8String name, Boolean32 leftGravity );
		public extern static void gtk_text_mark_set_visible( GtkTextMark* mark, Boolean32 setting );

		public extern static void gtk_text_buffer_add_mark( GtkTextBuffer* buffer, GtkTextMark* mark, GtkTextIter* where );
		public extern static void gtk_text_buffer_add_selection_clipboard( GtkTextBuffer* buffer, GtkClipboard* clipboard );
		public extern static void gtk_text_buffer_apply_tag( GtkTextBuffer* buffer, GtkTextTag* tag, GtkTextIter* start, GtkTextIter* end );
		public extern static void gtk_text_buffer_apply_tag_by_name( GtkTextBuffer* buffer, CUtf8String name, GtkTextIter* start, GtkTextIter* end );
		public extern static Boolean32 gtk_text_buffer_backspace( GtkTextBuffer* buffer, GtkTextIter* iter, Boolean32 interactive, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_begin_user_action( GtkTextBuffer* buffer );
		public extern static void gtk_text_buffer_copy_clipboard( GtkTextBuffer* buffer, GtkClipboard* clipboard );
		public extern static GtkTextChildAnchor* gtk_text_buffer_create_child_anchor( GtkTextBuffer* buffer, GtkTextIter* iter );
		public extern static GtkTextMark* gtk_text_buffer_create_mark( GtkTextBuffer* buffer, CUtf8String markName, GtkTextIter* where, Boolean32 leftGravity );
		public extern static void gtk_text_buffer_cut_clipboard( GtkTextBuffer* buffer, GtkClipboard* clipboard, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_delete( GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end );
		public extern static Boolean32 gtk_text_buffer_delete_interactive( GtkTextBuffer* buffer, GtkTextIter* startIter, GtkTextIter* endIter, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_delete_mark( GtkTextBuffer* buffer, GtkTextMark* mark );
		public extern static void gtk_text_buffer_delete_mark_by_name( GtkTextBuffer* buffer, CUtf8String name );
		public extern static Boolean32 gtk_text_buffer_delete_selection( GtkTextBuffer* buffer, Boolean32 interactive, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_end_user_action( GtkTextBuffer* buffer );
		public extern static void gtk_text_buffer_get_bounds( GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end );
		public extern static int gtk_text_buffer_get_char_count( GtkTextBuffer* buffer );
		public extern static GtkTargetList* gtk_text_buffer_get_copy_target_list( GtkTextBuffer* buffer );
		public extern static void gtk_text_buffer_get_end_iter( GtkTextBuffer* buffer, GtkTextIter* iter );
		public extern static Boolean32 gtk_text_buffer_get_has_selection( GtkTextBuffer* buffer );
		public extern static GtkTextMark* gtk_text_buffer_get_insert( GtkTextBuffer* buffer );
		public extern static void gtk_text_buffer_get_iter_at_child_anchor( GtkTextBuffer* buffer, GtkTextIter* iter, GtkTextChildAnchor* anchor );
		public extern static void gtk_text_buffer_get_iter_at_line( GtkTextBuffer* buffer, GtkTextIter* iter, int lineNumber );
		public extern static void gtk_text_buffer_get_iter_at_line_index( GtkTextBuffer* buffer, GtkTextIter* iter, int lineNumber, int byteIndex );
		public extern static void gtk_text_buffer_get_iter_at_line_offset( GtkTextBuffer* buffer, GtkTextIter* iter, int lineNumber, int charOffset );
		public extern static void gtk_text_buffer_get_iter_at_mark( GtkTextBuffer* buffer, GtkTextIter* iter, GtkTextMark* mark );
		public extern static void gtk_text_buffer_get_iter_at_offset( GtkTextBuffer* buffer, GtkTextIter* iter, int charOffset );
		public extern static int gtk_text_buffer_get_line_count( GtkTextBuffer* buffer );
		public extern static GtkTextMark* gtk_text_buffer_get_mark( GtkTextBuffer* buffer, CUtf8String name );
		public extern static Boolean32 gtk_text_buffer_get_modified( GtkTextBuffer* buffer );
		public extern static GtkTargetList* gtk_text_buffer_get_paste_target_list( GtkTextBuffer* buffer );
		public extern static GtkTextMark* gtk_text_buffer_get_selection_bound( GtkTextBuffer* buffer );
		public extern static Boolean32 gtk_text_buffer_get_selection_bounds( GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end );
		public extern static sbyte* gtk_text_buffer_get_slice( GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end, Boolean32 includeHiddenChars );
		public extern static void gtk_text_buffer_get_start_iter( GtkTextBuffer* buffer, GtkTextIter* iter );
		public extern static GtkTextTagTable* gtk_text_buffer_get_tag_table( GtkTextBuffer* buffer );
		public extern static sbyte* gtk_text_buffer_get_text( GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end, Boolean32 includeHiddenChars );
		[BackendHintReadNone]
		public extern static GType gtk_text_buffer_get_type();
		public extern static void gtk_text_buffer_insert( GtkTextBuffer* buffer, GtkTextIter* iter, CUtf8String text, int len );
		public extern static void gtk_text_buffer_insert_at_cursor( GtkTextBuffer* buffer, CUtf8String text, int len );
		public extern static void gtk_text_buffer_insert_child_anchor( GtkTextBuffer* buffer, GtkTextIter* iter, GtkTextChildAnchor* anchor );
		public extern static Boolean32 gtk_text_buffer_insert_interactive( GtkTextBuffer* buffer, GtkTextIter* iter, CUtf8String text, int len, Boolean32 defaultEditable );
		public extern static Boolean32 gtk_text_buffer_insert_interactive_at_cursor( GtkTextBuffer* buffer, CUtf8String text, int len, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_insert_pixbuf( GtkTextBuffer* buffer, GtkTextIter* iter, GdkPixbuf* pixbuf );
		public extern static void gtk_text_buffer_insert_range( GtkTextBuffer* buffer, GtkTextIter* iter, GtkTextIter* start, GtkTextIter* end );
		public extern static Boolean32 gtk_text_buffer_insert_range_interactive( GtkTextBuffer* buffer, GtkTextIter* iter, GtkTextIter* start, GtkTextIter* end, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_move_mark( GtkTextBuffer* buffer, GtkTextMark* mark, GtkTextIter* where );
		public extern static void gtk_text_buffer_move_mark_by_name( GtkTextBuffer* buffer, CUtf8String name, GtkTextIter* where );
		public extern static GtkTextBuffer* gtk_text_buffer_new( GtkTextTagTable* table );
		public extern static void gtk_text_buffer_paste_clipboard( GtkTextBuffer* buffer, GtkClipboard* clipboard, GtkTextIter* overrideLocation, Boolean32 defaultEditable );
		public extern static void gtk_text_buffer_place_cursor( GtkTextBuffer* buffer, GtkTextIter* where );
		public extern static void gtk_text_buffer_remove_all_tags( GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end );
		public extern static void gtk_text_buffer_remove_selection_clipboard( GtkTextBuffer* buffer, GtkClipboard* clipboard );
		public extern static void gtk_text_buffer_remove_tag( GtkTextBuffer* buffer, GtkTextTag* tag, GtkTextIter* start, GtkTextIter* end );
		public extern static void gtk_text_buffer_remove_tag_by_name( GtkTextBuffer* buffer, CUtf8String name, GtkTextIter* start, GtkTextIter* end );
		public extern static void gtk_text_buffer_select_range( GtkTextBuffer* buffer, GtkTextIter* ins, GtkTextIter* bound );
		public extern static void gtk_text_buffer_set_modified( GtkTextBuffer* buffer, Boolean32 setting );
		public extern static void gtk_text_buffer_set_text( GtkTextBuffer* buffer, CUtf8String text, int len );

		public extern static Boolean32 gtk_text_buffer_deserialize( GtkTextBuffer* registerBuffer, GtkTextBuffer* contentBuffer, GdkAtom* format, GtkTextIter* iter, byte* data, uint length, GError** error );
		public extern static Boolean32 gtk_text_buffer_deserialize_get_can_create_tags( GtkTextBuffer* buffer, GdkAtom* format );
		public extern static void gtk_text_buffer_deserialize_set_can_create_tags( GtkTextBuffer* buffer, GdkAtom* format, Boolean32 canCreateTags );
		public extern static GdkAtom** gtk_text_buffer_get_deserialize_formats( GtkTextBuffer* buffer, int* nFormats );
		public extern static GdkAtom** gtk_text_buffer_get_serialize_formats( GtkTextBuffer* buffer, int* nFormats );
		public extern static GdkAtom* gtk_text_buffer_register_deserialize_format( GtkTextBuffer* buffer, CUtf8String mimeType, Functors.Func<GtkTextBuffer*, GtkTextBuffer*, GtkTextIter*, byte*, uint, Boolean32, void*, GError**, Boolean32> function, void* userData, Functors.Action<void*> userDataDestroy );
		public extern static GdkAtom* gtk_text_buffer_register_deserialize_tagset( GtkTextBuffer* buffer, CUtf8String tagsetName );
		public extern static GdkAtom* gtk_text_buffer_register_serialize_format( GtkTextBuffer* buffer, CUtf8String mimeType, Functors.Func<GtkTextBuffer*, GtkTextBuffer*, GtkTextIter*, GtkTextIter*, uint*, void*, byte*> function, void* userData, Functors.Action<void*> userDataDestroy );
		public extern static GdkAtom* gtk_text_buffer_register_serialize_tagset( GtkTextBuffer* buffer, CUtf8String tagsetName );
		public extern static byte* gtk_text_buffer_serialize( GtkTextBuffer* registerBuffer, GtkTextBuffer* contentBuffer, GdkAtom* format, GtkTextIter* start, GtkTextIter* end, uint* length );
		public extern static void gtk_text_buffer_unregister_deserialize_format( GtkTextBuffer* buffer, GdkAtom* format );
		public extern static void gtk_text_buffer_unregister_serialize_format( GtkTextBuffer* buffer, GdkAtom* format );

		public extern static void gtk_text_view_add_child_at_anchor( GtkTextView* textView, GtkWidget* child, GtkTextChildAnchor* anchor );
		public extern static void gtk_text_view_add_child_in_window( GtkTextView* textView, GtkWidget* child, GtkTextWindowType whichWindow, int xpos, int ypos );
		public extern static Boolean32 gtk_text_view_backward_display_line( GtkTextView* textView, GtkTextIter* iter );
		public extern static Boolean32 gtk_text_view_backward_display_line_start( GtkTextView* textView, GtkTextIter* iter );
		public extern static void gtk_text_view_buffer_to_window_coords( GtkTextView* textView, GtkTextWindowType win, int bufferX, int bufferY, int* windowX, int* windowY );
		public extern static Boolean32 gtk_text_view_forward_display_line( GtkTextView* textView, GtkTextIter* iter );
		public extern static Boolean32 gtk_text_view_forward_display_line_end( GtkTextView* textView, GtkTextIter* iter );
		public extern static Boolean32 gtk_text_view_get_accepts_tab( GtkTextView* textView );
		public extern static int gtk_text_view_get_border_window_size( GtkTextView* textView, GtkTextWindowType type );
		public extern static GtkTextBuffer* gtk_text_view_get_buffer( GtkTextView* textView );
		public extern static Boolean32 gtk_text_view_get_cursor_visible( GtkTextView* textView );
		public extern static GtkTextAttributes* gtk_text_view_get_default_attributes( GtkTextView* textView );
		public extern static Boolean32 gtk_text_view_get_editable( GtkTextView* textView );
		public extern static GtkAdjustment* gtk_text_view_get_hadjustment( GtkTextView* textView );
		public extern static int gtk_text_view_get_indent( GtkTextView* textView );
		public extern static void gtk_text_view_get_iter_at_location( GtkTextView* textView, GtkTextIter* iter, int x, int y );
		public extern static void gtk_text_view_get_iter_at_position( GtkTextView* textView, GtkTextIter* iter, int* trailing, int x, int y );
		public extern static void gtk_text_view_get_iter_location( GtkTextView* textView, GtkTextIter* iter, GdkRectangle* location );
		public extern static GtkJustification gtk_text_view_get_justification( GtkTextView* textView );
		public extern static int gtk_text_view_get_left_margin( GtkTextView* textView );
		public extern static void gtk_text_view_get_line_at_y( GtkTextView* textView, GtkTextIter* targetIter, int y, int* lineTop );
		public extern static void gtk_text_view_get_line_yrange( GtkTextView* textView, GtkTextIter* iter, int* y, int* height );
		public extern static Boolean32 gtk_text_view_get_overwrite( GtkTextView* textView );
		public extern static int gtk_text_view_get_pixels_above_lines( GtkTextView* textView );
		public extern static int gtk_text_view_get_pixels_below_lines( GtkTextView* textView );
		public extern static int gtk_text_view_get_pixels_inside_wrap( GtkTextView* textView );
		public extern static int gtk_text_view_get_right_margin( GtkTextView* textView );
		public extern static PangoTabArray* gtk_text_view_get_tabs( GtkTextView* textView );
		[BackendHintReadNone]
		public extern static GType gtk_text_view_get_type();
		public extern static GtkAdjustment* gtk_text_view_get_vadjustment( GtkTextView* textView );
		public extern static void gtk_text_view_get_visible_rect( GtkTextView* textView, GdkRectangle* visibleRect );
		public extern static GdkDrawable* gtk_text_view_get_window( GtkTextView* textView, GtkTextWindowType win );
		public extern static GtkTextWindowType gtk_text_view_get_window_type( GtkTextView* textView, GdkDrawable* window );
		public extern static GtkWrapMode gtk_text_view_get_wrap_mode( GtkTextView* textView );
		public extern static Boolean32 gtk_text_view_im_context_filter_keypress( GtkTextView* textView, GdkEventKey* @event );
		public extern static void gtk_text_view_move_child( GtkTextView* textView, GtkWidget* child, int xpos, int ypos );
		public extern static Boolean32 gtk_text_view_move_mark_onscreen( GtkTextView* textView, GtkTextMark* mark );
		public extern static Boolean32 gtk_text_view_move_visually( GtkTextView* textView, GtkTextIter* iter, int count );
		public extern static GtkTextView* gtk_text_view_new();
		public extern static GtkTextView* gtk_text_view_new_with_buffer( GtkTextBuffer* buffer );
		public extern static Boolean32 gtk_text_view_place_cursor_onscreen( GtkTextView* textView );
		public extern static void gtk_text_view_reset_im_context( GtkTextView* textView );
		public extern static void gtk_text_view_scroll_mark_onscreen( GtkTextView* textView, GtkTextMark* mark );
		public extern static Boolean32 gtk_text_view_scroll_to_iter( GtkTextView* textView, GtkTextIter* iter, double withinMargin, Boolean32 useAlign, double xalign, double yalign );
		public extern static void gtk_text_view_scroll_to_mark( GtkTextView* textView, GtkTextMark* mark, double withinMargin, Boolean32 useAlign, double xalign, double yalign );
		public extern static void gtk_text_view_set_accepts_tab( GtkTextView* textView, Boolean32 acceptsTab );
		public extern static void gtk_text_view_set_border_window_size( GtkTextView* textView, GtkTextWindowType type, int size );
		public extern static void gtk_text_view_set_buffer( GtkTextView* textView, GtkTextBuffer* buffer );
		public extern static void gtk_text_view_set_cursor_visible( GtkTextView* textView, Boolean32 setting );
		public extern static void gtk_text_view_set_editable( GtkTextView* textView, Boolean32 setting );
		public extern static void gtk_text_view_set_indent( GtkTextView* textView, int indent );
		public extern static void gtk_text_view_set_justification( GtkTextView* textView, GtkJustification justification );
		public extern static void gtk_text_view_set_left_margin( GtkTextView* textView, int leftMargin );
		public extern static void gtk_text_view_set_overwrite( GtkTextView* textView, Boolean32 overwrite );
		public extern static void gtk_text_view_set_pixels_above_lines( GtkTextView* textView, int pixelsAboveLines );
		public extern static void gtk_text_view_set_pixels_below_lines( GtkTextView* textView, int pixelsBelowLines );
		public extern static void gtk_text_view_set_pixels_inside_wrap( GtkTextView* textView, int pixelsInsideWrap );
		public extern static void gtk_text_view_set_right_margin( GtkTextView* textView, int rightMargin );
		public extern static void gtk_text_view_set_tabs( GtkTextView* textView, PangoTabArray* tabs );
		public extern static void gtk_text_view_set_wrap_mode( GtkTextView* textView, GtkWrapMode wrapMode );
		public extern static Boolean32 gtk_text_view_starts_display_line( GtkTextView* textView, GtkTextIter* iter );
		public extern static void gtk_text_view_window_to_buffer_coords( GtkTextView* textView, GtkTextWindowType win, int windowX, int windowY, int* bufferX, int* bufferY );

		public extern static void gtk_pixmap_get( GtkPixmap* pixmap, GdkDrawable** val, GdkDrawable** mask );
		[BackendHintReadNone]
		public extern static GType gtk_pixmap_get_type();
		public extern static GtkWidget* gtk_pixmap_new( GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_pixmap_set( GtkPixmap* pixmap, GdkDrawable* val, GdkDrawable* mask );
		public extern static void gtk_pixmap_set_build_insensitive( GtkPixmap* pixmap, Boolean32 build );

		public extern static GtkWidget* gtk_toolbar_append_element( GtkToolbar* toolbar, GtkToolbarChildType type, GtkWidget* widget, CUtf8String text, CUtf8String tooltipText, CUtf8String tooltipPrivateText, GtkWidget* icon, Functors.Action callback, void* userData );
		public extern static GtkWidget* gtk_toolbar_append_item( GtkToolbar* toolbar, CUtf8String text, CUtf8String tooltipText, CUtf8String tooltipPrivateText, GtkWidget* icon, Functors.Action callback, void* userData );
		public extern static void gtk_toolbar_append_space( GtkToolbar* toolbar );
		public extern static void gtk_toolbar_append_widget( GtkToolbar* toolbar, GtkWidget* widget, CUtf8String tooltipText, CUtf8String tooltipPrivateText );
		public extern static int gtk_toolbar_get_drop_index( GtkToolbar* toolbar, int x, int y );
		public extern static GtkIconSize gtk_toolbar_get_icon_size( GtkToolbar* toolbar );
		public extern static int gtk_toolbar_get_item_index( GtkToolbar* toolbar, GtkToolItem* item );
		public extern static int gtk_toolbar_get_n_items( GtkToolbar* toolbar );
		public extern static GtkToolItem* gtk_toolbar_get_nth_item( GtkToolbar* toolbar, int n );
		public extern static GtkOrientation gtk_toolbar_get_orientation( GtkToolbar* toolbar );
		public extern static GtkReliefStyle gtk_toolbar_get_relief_style( GtkToolbar* toolbar );
		public extern static Boolean32 gtk_toolbar_get_show_arrow( GtkToolbar* toolbar );
		public extern static GtkToolbarStyle gtk_toolbar_get_style( GtkToolbar* toolbar );
		public extern static Boolean32 gtk_toolbar_get_tooltips( GtkToolbar* toolbar );
		[BackendHintReadNone]
		public extern static GType gtk_toolbar_get_type();
		public extern static void gtk_toolbar_insert( GtkToolbar* toolbar, GtkToolItem* item, int pos );
		public extern static GtkWidget* gtk_toolbar_insert_element( GtkToolbar* toolbar, GtkToolbarChildType type, GtkWidget* widget, CUtf8String text, CUtf8String tooltipText, CUtf8String tooltipPrivateText, GtkWidget* icon, Functors.Action callback, void* userData, int position );
		public extern static GtkWidget* gtk_toolbar_insert_item( GtkToolbar* toolbar, CUtf8String text, CUtf8String tooltipText, CUtf8String tooltipPrivateText, GtkWidget* icon, Functors.Action callback, void* userData, int position );
		public extern static void gtk_toolbar_insert_space( GtkToolbar* toolbar, int position );
		public extern static GtkWidget* gtk_toolbar_insert_stock( GtkToolbar* toolbar, CUtf8String stockId, CUtf8String tooltipText, CUtf8String tooltipPrivateText, Functors.Action callback, void* userData, int position );
		public extern static void gtk_toolbar_insert_widget( GtkToolbar* toolbar, GtkWidget* widget, CUtf8String tooltipText, CUtf8String tooltipPrivateText, int position );
		public extern static GtkWidget* gtk_toolbar_new();
		public extern static GtkWidget* gtk_toolbar_prepend_element( GtkToolbar* toolbar, GtkToolbarChildType type, GtkWidget* widget, CUtf8String text, CUtf8String tooltipText, CUtf8String tooltipPrivateText, GtkWidget* icon, Functors.Action callback, void* userData );
		public extern static GtkWidget* gtk_toolbar_prepend_item( GtkToolbar* toolbar, CUtf8String text, CUtf8String tooltipText, CUtf8String tooltipPrivateText, GtkWidget* icon, Functors.Action callback, void* userData );
		public extern static void gtk_toolbar_prepend_space( GtkToolbar* toolbar );
		public extern static void gtk_toolbar_prepend_widget( GtkToolbar* toolbar, GtkWidget* widget, CUtf8String tooltipText, CUtf8String tooltipPrivateText );
		public extern static void gtk_toolbar_remove_space( GtkToolbar* toolbar, int position );
		public extern static void gtk_toolbar_set_drop_highlight_item( GtkToolbar* toolbar, GtkToolItem* toolItem, int index_ );
		public extern static void gtk_toolbar_set_icon_size( GtkToolbar* toolbar, GtkIconSize iconSize );
		public extern static void gtk_toolbar_set_orientation( GtkToolbar* toolbar, GtkOrientation orientation );
		public extern static void gtk_toolbar_set_show_arrow( GtkToolbar* toolbar, Boolean32 showArrow );
		public extern static void gtk_toolbar_set_style( GtkToolbar* toolbar, GtkToolbarStyle style );
		public extern static void gtk_toolbar_set_tooltips( GtkToolbar* toolbar, Boolean32 enable );
		public extern static void gtk_toolbar_unset_icon_size( GtkToolbar* toolbar );
		public extern static void gtk_toolbar_unset_style( GtkToolbar* toolbar );

		public extern static Boolean32 gtk_tool_item_group_get_collapsed( GtkToolItemGroup* group );
		public extern static GtkToolItem* gtk_tool_item_group_get_drop_item( GtkToolItemGroup* group, int x, int y );
		public extern static PangoEllipsizeMode gtk_tool_item_group_get_ellipsize( GtkToolItemGroup* group );
		public extern static GtkReliefStyle gtk_tool_item_group_get_header_relief( GtkToolItemGroup* group );
		public extern static int gtk_tool_item_group_get_item_position( GtkToolItemGroup* group, GtkToolItem* item );
		public extern static sbyte* gtk_tool_item_group_get_label( GtkToolItemGroup* group );
		public extern static GtkWidget* gtk_tool_item_group_get_label_widget( GtkToolItemGroup* group );
		public extern static uint gtk_tool_item_group_get_n_items( GtkToolItemGroup* group );
		public extern static GtkToolItem* gtk_tool_item_group_get_nth_item( GtkToolItemGroup* group, uint index );
		[BackendHintReadNone]
		public extern static GType gtk_tool_item_group_get_type();
		public extern static void gtk_tool_item_group_insert( GtkToolItemGroup* group, GtkToolItem* item, int position );
		public extern static GtkWidget* gtk_tool_item_group_new( sbyte* label );
		public extern static void gtk_tool_item_group_set_collapsed( GtkToolItemGroup* group, Boolean32 collapsed );
		public extern static void gtk_tool_item_group_set_ellipsize( GtkToolItemGroup* group, PangoEllipsizeMode ellipsize );
		public extern static void gtk_tool_item_group_set_header_relief( GtkToolItemGroup* group, GtkReliefStyle style );
		public extern static void gtk_tool_item_group_set_item_position( GtkToolItemGroup* group, GtkToolItem* item, int position );
		public extern static void gtk_tool_item_group_set_label( GtkToolItemGroup* group, sbyte* label );
		public extern static void gtk_tool_item_group_set_label_widget( GtkToolItemGroup* group, GtkWidget* labelWidget );

		public extern static void gtk_tool_palette_add_drag_dest( GtkToolPalette* palette, GtkWidget* widget, GtkDestDefaults flags, GtkToolPaletteDragTargets targets, GdkDragAction actions );
		public extern static GtkWidget* gtk_tool_palette_get_drag_item( GtkToolPalette* palette, GtkSelectionData* selection );
		[BackendHintReadNone]
		public extern static GtkTargetEntry* gtk_tool_palette_get_drag_target_group();
		[BackendHintReadNone]
		public extern static GtkTargetEntry* gtk_tool_palette_get_drag_target_item();
		public extern static GtkToolItemGroup* gtk_tool_palette_get_drop_group( GtkToolPalette* palette, int x, int y );
		public extern static GtkToolItem* gtk_tool_palette_get_drop_item( GtkToolPalette* palette, int x, int y );
		public extern static Boolean32 gtk_tool_palette_get_exclusive( GtkToolPalette* palette, GtkToolItemGroup* group );
		public extern static Boolean32 gtk_tool_palette_get_expand( GtkToolPalette* palette, GtkToolItemGroup* group );
		public extern static int gtk_tool_palette_get_group_position( GtkToolPalette* palette, GtkToolItemGroup* group );
		public extern static GtkAdjustment* gtk_tool_palette_get_hadjustment( GtkToolPalette* palette );
		public extern static GtkIconSize gtk_tool_palette_get_icon_size( GtkToolPalette* palette );
		public extern static GtkToolbarStyle gtk_tool_palette_get_style( GtkToolPalette* palette );
		[BackendHintReadNone]
		public extern static GType gtk_tool_palette_get_type();
		public extern static GtkAdjustment* gtk_tool_palette_get_vadjustment( GtkToolPalette* palette );
		public extern static GtkWidget* gtk_tool_palette_new();
		public extern static void gtk_tool_palette_set_drag_source( GtkToolPalette* palette, GtkToolPaletteDragTargets targets );
		public extern static void gtk_tool_palette_set_exclusive( GtkToolPalette* palette, GtkToolItemGroup* group, Boolean32 exclusive );
		public extern static void gtk_tool_palette_set_expand( GtkToolPalette* palette, GtkToolItemGroup* group, Boolean32 expand );
		public extern static void gtk_tool_palette_set_group_position( GtkToolPalette* palette, GtkToolItemGroup* group, int position );
		public extern static void gtk_tool_palette_set_icon_size( GtkToolPalette* palette, GtkIconSize iconSize );
		public extern static void gtk_tool_palette_set_style( GtkToolPalette* palette, GtkToolbarStyle style );
		public extern static void gtk_tool_palette_unset_icon_size( GtkToolPalette* palette );
		public extern static void gtk_tool_palette_unset_style( GtkToolPalette* palette );

		public extern static PangoEllipsizeMode gtk_tool_shell_get_ellipsize_mode( GtkToolShell* shell );
		public extern static GtkIconSize gtk_tool_shell_get_icon_size( GtkToolShell* shell );
		public extern static GtkOrientation gtk_tool_shell_get_orientation( GtkToolShell* shell );
		public extern static GtkReliefStyle gtk_tool_shell_get_relief_style( GtkToolShell* shell );
		public extern static GtkToolbarStyle gtk_tool_shell_get_style( GtkToolShell* shell );
		public extern static float gtk_tool_shell_get_text_alignment( GtkToolShell* shell );
		public extern static GtkOrientation gtk_tool_shell_get_text_orientation( GtkToolShell* shell );
		public extern static GtkSizeGroup* gtk_tool_shell_get_text_size_group( GtkToolShell* shell );
		[BackendHintReadNone]
		public extern static GType gtk_tool_shell_get_type();
		public extern static void gtk_tool_shell_rebuild_menu( GtkToolShell* shell );

		public extern static GtkWidget* gtk_test_create_simple_window( sbyte* windowTitle, CUtf8String dialogText );
		public extern static GtkWidget* gtk_test_find_label( GtkWidget* widget, sbyte* labelPattern );
		public extern static GtkWidget* gtk_test_find_sibling( GtkWidget* baseWidget, uintptr widgetType );
		public extern static GtkWidget* gtk_test_find_widget( GtkWidget* widget, sbyte* labelPattern, uintptr widgetType );
		public extern static uintptr* gtk_test_list_all_types( uint* nTypes );
		public extern static void gtk_test_register_all_types();
		public extern static double gtk_test_slider_get_value( GtkWidget* widget );
		public extern static void gtk_test_slider_set_perc( GtkWidget* widget, double percentage );
		public extern static Boolean32 gtk_test_spin_button_click( GtkSpinButton* spinner, uint button, Boolean32 upwards );
		public extern static sbyte* gtk_test_text_get( GtkWidget* widget );
		public extern static void gtk_test_text_set( GtkWidget* widget, sbyte* @string );
		public extern static Boolean32 gtk_test_widget_click( GtkWidget* widget, uint button, GdkModifierType modifiers );
		public extern static Boolean32 gtk_test_widget_send_key( GtkWidget* widget, uint keyval, GdkModifierType modifiers );

		public extern static Boolean32 gtk_tree_drag_dest_drag_data_received( GtkTreeDragDest* dragDest, GtkTreePath* dest, GtkSelectionData* selectionData );
		[BackendHintReadNone]
		public extern static GType gtk_tree_drag_dest_get_type();
		public extern static Boolean32 gtk_tree_drag_dest_row_drop_possible( GtkTreeDragDest* dragDest, GtkTreePath* destPath, GtkSelectionData* selectionData );
		public extern static Boolean32 gtk_tree_drag_source_drag_data_delete( GtkTreeDragSource* dragSource, GtkTreePath* path );
		public extern static Boolean32 gtk_tree_drag_source_drag_data_get( GtkTreeDragSource* dragSource, GtkTreePath* path, GtkSelectionData* selectionData );
		[BackendHintReadNone]
		public extern static GType gtk_tree_drag_source_get_type();
		public extern static Boolean32 gtk_tree_drag_source_row_draggable( GtkTreeDragSource* dragSource, GtkTreePath* path );
		public extern static Boolean32 gtk_tree_get_row_drag_data( GtkSelectionData* selectionData, GtkTreeModel** treeModel, GtkTreePath** path );
		public extern static Boolean32 gtk_tree_set_row_drag_data( GtkSelectionData* selectionData, GtkTreeModel* treeModel, GtkTreePath* path );

		public extern static void gtk_tree_model_sort_clear_cache( GtkTreeModelSort* treeModelSort );
		public extern static Boolean32 gtk_tree_model_sort_convert_child_iter_to_iter( GtkTreeModelSort* treeModelSort, GtkTreeIter* sortIter, GtkTreeIter* childIter );
		public extern static GtkTreePath* gtk_tree_model_sort_convert_child_path_to_path( GtkTreeModelSort* treeModelSort, GtkTreePath* childPath );
		public extern static void gtk_tree_model_sort_convert_iter_to_child_iter( GtkTreeModelSort* treeModelSort, GtkTreeIter* childIter, GtkTreeIter* sortedIter );
		public extern static GtkTreePath* gtk_tree_model_sort_convert_path_to_child_path( GtkTreeModelSort* treeModelSort, GtkTreePath* sortedPath );
		public extern static GtkTreeModel* gtk_tree_model_sort_get_model( GtkTreeModelSort* treeModel );
		[BackendHintReadNone]
		public extern static GType gtk_tree_model_sort_get_type();
		public extern static Boolean32 gtk_tree_model_sort_iter_is_valid( GtkTreeModelSort* treeModelSort, GtkTreeIter* iter );
		public extern static GtkTreeModel* gtk_tree_model_sort_new_with_model( GtkTreeModel* childModel );
		public extern static void gtk_tree_model_sort_reset_default_sort_func( GtkTreeModelSort* treeModelSort );

		public extern static int gtk_tree_selection_count_selected_rows( GtkTreeSelection* selection );
		public extern static GtkSelectionMode gtk_tree_selection_get_mode( GtkTreeSelection* selection );
		public extern static Functors.Func<GtkTreeSelection*, GtkTreeModel*, GtkTreePath*, Boolean32, void*, Boolean32> gtk_tree_selection_get_select_function( GtkTreeSelection* selection );
		public extern static Boolean32 gtk_tree_selection_get_selected( GtkTreeSelection* selection, GtkTreeModel** model, GtkTreeIter* iter );
		public extern static GList* gtk_tree_selection_get_selected_rows( GtkTreeSelection* selection, GtkTreeModel** model );
		public extern static GtkTreeView* gtk_tree_selection_get_tree_view( GtkTreeSelection* selection );
		[BackendHintReadNone]
		public extern static GType gtk_tree_selection_get_type();
		public extern static void* gtk_tree_selection_get_user_data( GtkTreeSelection* selection );
		public extern static Boolean32 gtk_tree_selection_iter_is_selected( GtkTreeSelection* selection, GtkTreeIter* iter );
		public extern static Boolean32 gtk_tree_selection_path_is_selected( GtkTreeSelection* selection, GtkTreePath* path );
		public extern static void gtk_tree_selection_select_all( GtkTreeSelection* selection );
		public extern static void gtk_tree_selection_select_iter( GtkTreeSelection* selection, GtkTreeIter* iter );
		public extern static void gtk_tree_selection_select_path( GtkTreeSelection* selection, GtkTreePath* path );
		public extern static void gtk_tree_selection_select_range( GtkTreeSelection* selection, GtkTreePath* startPath, GtkTreePath* endPath );
		public extern static void gtk_tree_selection_selected_foreach( GtkTreeSelection* selection, Functors.Action<GtkTreeModel*, GtkTreePath*, GtkTreeIter*, void*> func, void* data );
		public extern static void gtk_tree_selection_set_mode( GtkTreeSelection* selection, GtkSelectionMode type );
		public extern static void gtk_tree_selection_set_select_function( GtkTreeSelection* selection, Functors.Func<GtkTreeSelection*, GtkTreeModel*, GtkTreePath*, Boolean32, void*, Boolean32> func, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_tree_selection_unselect_all( GtkTreeSelection* selection );
		public extern static void gtk_tree_selection_unselect_iter( GtkTreeSelection* selection, GtkTreeIter* iter );
		public extern static void gtk_tree_selection_unselect_path( GtkTreeSelection* selection, GtkTreePath* path );
		public extern static void gtk_tree_selection_unselect_range( GtkTreeSelection* selection, GtkTreePath* startPath, GtkTreePath* endPath );

		public extern static void gtk_tree_store_append( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* parent );
		public extern static void gtk_tree_store_clear( GtkTreeStore* treeStore );
		[BackendHintReadNone]
		public extern static GType gtk_tree_store_get_type();
		public extern static void gtk_tree_store_insert( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* parent, int position );
		public extern static void gtk_tree_store_insert_after( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* parent, GtkTreeIter* sibling );
		public extern static void gtk_tree_store_insert_before( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* parent, GtkTreeIter* sibling );
		public extern static void gtk_tree_store_insert_with_valuesv( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* parent, int position, int* columns, GValue* values, int nValues );
		public extern static Boolean32 gtk_tree_store_is_ancestor( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* descendant );
		public extern static int gtk_tree_store_iter_depth( GtkTreeStore* treeStore, GtkTreeIter* iter );
		public extern static Boolean32 gtk_tree_store_iter_is_valid( GtkTreeStore* treeStore, GtkTreeIter* iter );
		public extern static void gtk_tree_store_move_after( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* position );
		public extern static void gtk_tree_store_move_before( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* position );
		public extern static GtkTreeStore* gtk_tree_store_newv( int nColumns, uintptr* types );
		public extern static void gtk_tree_store_prepend( GtkTreeStore* treeStore, GtkTreeIter* iter, GtkTreeIter* parent );
		public extern static Boolean32 gtk_tree_store_remove( GtkTreeStore* treeStore, GtkTreeIter* iter );
		public extern static void gtk_tree_store_reorder( GtkTreeStore* treeStore, GtkTreeIter* parent, int* newOrder );
		public extern static void gtk_tree_store_set_column_types( GtkTreeStore* treeStore, int nColumns, uintptr* types );
		public extern static void gtk_tree_store_set_valist( GtkTreeStore* treeStore, GtkTreeIter* iter, sbyte* varArgs );
		public extern static void gtk_tree_store_set_value( GtkTreeStore* treeStore, GtkTreeIter* iter, int column, GValue* value );
		public extern static void gtk_tree_store_set_valuesv( GtkTreeStore* treeStore, GtkTreeIter* iter, int* columns, GValue* values, int nValues );
		public extern static void gtk_tree_store_swap( GtkTreeStore* treeStore, GtkTreeIter* a, GtkTreeIter* b );

		public extern static void gtk_ui_manager_add_ui( GtkUIManager* self, uint mergeId, sbyte* path, CUtf8String name, sbyte* action, GtkUIManagerItemType type, Boolean32 top );
		public extern static uint gtk_ui_manager_add_ui_from_file( GtkUIManager* self, CUtf8String filename, GError** error );
		public extern static uint gtk_ui_manager_add_ui_from_string( GtkUIManager* self, sbyte* buffer, int length, GError** error );
		public extern static void gtk_ui_manager_ensure_update( GtkUIManager* self );
		public extern static GtkAccelGroup* gtk_ui_manager_get_accel_group( GtkUIManager* self );
		public extern static GtkAction* gtk_ui_manager_get_action( GtkUIManager* self, sbyte* path );
		public extern static GList* gtk_ui_manager_get_action_groups( GtkUIManager* self );
		public extern static Boolean32 gtk_ui_manager_get_add_tearoffs( GtkUIManager* self );
		public extern static GSList* gtk_ui_manager_get_toplevels( GtkUIManager* self, GtkUIManagerItemType types );
		[BackendHintReadNone]
		public extern static GType gtk_ui_manager_get_type();
		public extern static sbyte* gtk_ui_manager_get_ui( GtkUIManager* self );
		public extern static GtkWidget* gtk_ui_manager_get_widget( GtkUIManager* self, sbyte* path );
		public extern static void gtk_ui_manager_insert_action_group( GtkUIManager* self, GtkActionGroup* actionGroup, int pos );
		public extern static GtkUIManager* gtk_ui_manager_new();
		public extern static uint gtk_ui_manager_new_merge_id( GtkUIManager* self );
		public extern static void gtk_ui_manager_remove_action_group( GtkUIManager* self, GtkActionGroup* actionGroup );
		public extern static void gtk_ui_manager_remove_ui( GtkUIManager* self, uint mergeId );
		public extern static void gtk_ui_manager_set_add_tearoffs( GtkUIManager* self, Boolean32 addTearoffs );

		public extern static GtkButtonBoxStyle gtk_vbutton_box_get_layout_default();
		public extern static int gtk_vbutton_box_get_spacing_default();
		[BackendHintReadNone]
		public extern static GType gtk_vbutton_box_get_type();
		public extern static GtkWidget* gtk_vbutton_box_new();
		public extern static void gtk_vbutton_box_set_layout_default( GtkButtonBoxStyle layout );
		public extern static void gtk_vbutton_box_set_spacing_default( int spacing );

		[BackendHintReadNone]
		public extern static GType gtk_volume_button_get_type();
		public extern static GtkWidget* gtk_volume_button_new();

		[BackendHintReadNone]
		public extern static GType gtk_vpaned_get_type();
		public extern static GtkVPaned* gtk_vpaned_new();

		[BackendHintReadNone]
		public extern static GType gtk_vruler_get_type();
		public extern static GtkWidget* gtk_vruler_new();

		[BackendHintReadNone]
		public extern static GType gtk_vscale_get_type();
		public extern static GtkWidget* gtk_vscale_new( GtkAdjustment* adjustment );
		public extern static GtkWidget* gtk_vscale_new_with_range( double min, double max, double step );

		[BackendHintReadNone]
		public extern static GType gtk_vseparator_get_type();
		public extern static GtkWidget* gtk_vseparator_new();

		public extern static int gtk_clist_append( GtkCList* clist, sbyte** text );
		public extern static void gtk_clist_clear( GtkCList* clist );
		public extern static void gtk_clist_column_title_active( GtkCList* clist, int column );
		public extern static void gtk_clist_column_title_passive( GtkCList* clist, int column );
		public extern static void gtk_clist_column_titles_active( GtkCList* clist );
		public extern static void gtk_clist_column_titles_hide( GtkCList* clist );
		public extern static void gtk_clist_column_titles_passive( GtkCList* clist );
		public extern static void gtk_clist_column_titles_show( GtkCList* clist );
		public extern static int gtk_clist_columns_autosize( GtkCList* clist );
		public extern static int gtk_clist_find_row_from_data( GtkCList* clist, void* data );
		public extern static void gtk_clist_freeze( GtkCList* clist );
		public extern static GtkStyle* gtk_clist_get_cell_style( GtkCList* clist, int row, int column );
		public extern static GtkCellType gtk_clist_get_cell_type( GtkCList* clist, int row, int column );
		public extern static sbyte* gtk_clist_get_column_title( GtkCList* clist, int column );
		public extern static GtkWidget* gtk_clist_get_column_widget( GtkCList* clist, int column );
		public extern static GtkAdjustment* gtk_clist_get_hadjustment( GtkCList* clist );
		public extern static int gtk_clist_get_pixmap( GtkCList* clist, int row, int column, GdkDrawable** pixmap, GdkDrawable** mask );
		public extern static int gtk_clist_get_pixtext( GtkCList* clist, int row, int column, sbyte** text, byte* spacing, GdkDrawable** pixmap, GdkDrawable** mask );
		public extern static void* gtk_clist_get_row_data( GtkCList* clist, int row );
		public extern static GtkStyle* gtk_clist_get_row_style( GtkCList* clist, int row );
		public extern static Boolean32 gtk_clist_get_selectable( GtkCList* clist, int row );
		public extern static int gtk_clist_get_selection_info( GtkCList* clist, int x, int y, int* row, int* column );
		public extern static int gtk_clist_get_text( GtkCList* clist, int row, int column, sbyte** text );
		[BackendHintReadNone]
		public extern static GType gtk_clist_get_type();
		public extern static GtkAdjustment* gtk_clist_get_vadjustment( GtkCList* clist );
		public extern static int gtk_clist_insert( GtkCList* clist, int row, sbyte** text );
		public extern static void gtk_clist_moveto( GtkCList* clist, int row, int column, float rowAlign, float colAlign );
		public extern static GtkWidget* gtk_clist_new( int columns );
		public extern static GtkWidget* gtk_clist_new_with_titles( int columns, sbyte** titles );
		public extern static int gtk_clist_optimal_column_width( GtkCList* clist, int column );
		public extern static int gtk_clist_prepend( GtkCList* clist, sbyte** text );
		public extern static void gtk_clist_remove( GtkCList* clist, int row );
		public extern static GtkVisibility gtk_clist_row_is_visible( GtkCList* clist, int row );
		public extern static void gtk_clist_row_move( GtkCList* clist, int sourceRow, int destRow );
		public extern static void gtk_clist_select_all( GtkCList* clist );
		public extern static void gtk_clist_select_row( GtkCList* clist, int row, int column );
		public extern static void gtk_clist_set_auto_sort( GtkCList* clist, Boolean32 autoSort );
		public extern static void gtk_clist_set_background( GtkCList* clist, int row, GdkColor* color );
		public extern static void gtk_clist_set_button_actions( GtkCList* clist, uint button, byte buttonActions );
		public extern static void gtk_clist_set_cell_style( GtkCList* clist, int row, int column, GtkStyle* style );
		public extern static void gtk_clist_set_column_auto_resize( GtkCList* clist, int column, Boolean32 autoResize );
		public extern static void gtk_clist_set_column_justification( GtkCList* clist, int column, GtkJustification justification );
		public extern static void gtk_clist_set_column_max_width( GtkCList* clist, int column, int maxWidth );
		public extern static void gtk_clist_set_column_min_width( GtkCList* clist, int column, int minWidth );
		public extern static void gtk_clist_set_column_resizeable( GtkCList* clist, int column, Boolean32 resizeable );
		public extern static void gtk_clist_set_column_title( GtkCList* clist, int column, sbyte* title );
		public extern static void gtk_clist_set_column_visibility( GtkCList* clist, int column, Boolean32 visible );
		public extern static void gtk_clist_set_column_widget( GtkCList* clist, int column, GtkWidget* widget );
		public extern static void gtk_clist_set_column_width( GtkCList* clist, int column, int width );
		public extern static void gtk_clist_set_compare_func( GtkCList* clist, Functors.Func<GtkCList*, void*, void*, int> cmpFunc );
		public extern static void gtk_clist_set_foreground( GtkCList* clist, int row, GdkColor* color );
		public extern static void gtk_clist_set_hadjustment( GtkCList* clist, GtkAdjustment* adjustment );
		public extern static void gtk_clist_set_pixmap( GtkCList* clist, int row, int column, GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_clist_set_pixtext( GtkCList* clist, int row, int column, CUtf8String text, byte spacing, GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_clist_set_reorderable( GtkCList* clist, Boolean32 reorderable );
		public extern static void gtk_clist_set_row_data( GtkCList* clist, int row, void* data );
		public extern static void gtk_clist_set_row_data_full( GtkCList* clist, int row, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_clist_set_row_height( GtkCList* clist, uint height );
		public extern static void gtk_clist_set_row_style( GtkCList* clist, int row, GtkStyle* style );
		public extern static void gtk_clist_set_selectable( GtkCList* clist, int row, Boolean32 selectable );
		public extern static void gtk_clist_set_selection_mode( GtkCList* clist, GtkSelectionMode mode );
		public extern static void gtk_clist_set_shadow_type( GtkCList* clist, GtkShadowType type );
		public extern static void gtk_clist_set_shift( GtkCList* clist, int row, int column, int vertical, int horizontal );
		public extern static void gtk_clist_set_sort_column( GtkCList* clist, int column );
		public extern static void gtk_clist_set_sort_type( GtkCList* clist, GtkSortType sortType );
		public extern static void gtk_clist_set_text( GtkCList* clist, int row, int column, CUtf8String text );
		public extern static void gtk_clist_set_use_drag_icons( GtkCList* clist, Boolean32 useIcons );
		public extern static void gtk_clist_set_vadjustment( GtkCList* clist, GtkAdjustment* adjustment );
		public extern static void gtk_clist_sort( GtkCList* clist );
		public extern static void gtk_clist_swap_rows( GtkCList* clist, int row1, int row2 );
		public extern static void gtk_clist_thaw( GtkCList* clist );
		public extern static void gtk_clist_undo_selection( GtkCList* clist );
		public extern static void gtk_clist_unselect_all( GtkCList* clist );
		public extern static void gtk_clist_unselect_row( GtkCList* clist, int row, int column );

		public extern static void gtk_combo_disable_activate( GtkCombo* combo );
		[BackendHintReadNone]
		public extern static GType gtk_combo_get_type();
		public extern static GtkWidget* gtk_combo_new();
		public extern static void gtk_combo_set_case_sensitive( GtkCombo* combo, Boolean32 val );
		public extern static void gtk_combo_set_item_string( GtkCombo* combo, GtkItem* item, sbyte* itemValue );
		public extern static void gtk_combo_set_popdown_strings( GtkCombo* combo, GList* strings );
		public extern static void gtk_combo_set_use_arrows( GtkCombo* combo, Boolean32 val );
		public extern static void gtk_combo_set_use_arrows_always( GtkCombo* combo, Boolean32 val );
		public extern static void gtk_combo_set_value_in_list( GtkCombo* combo, Boolean32 val, Boolean32 okIfEmpty );

		public extern static void gtk_ctree_collapse( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_collapse_recursive( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_collapse_to_depth( GtkCTree* ctree, GtkCTreeNode* node, int depth );
		public extern static void gtk_ctree_expand( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_expand_recursive( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_expand_to_depth( GtkCTree* ctree, GtkCTreeNode* node, int depth );
		public extern static GNode* gtk_ctree_export_to_gnode( GtkCTree* ctree, GNode* parent, GNode* sibling, GtkCTreeNode* node, Functors.Func<GtkCTree*, uint, GNode*, GtkCTreeNode*, void*, Boolean32> func, void* data );
		public extern static Boolean32 gtk_ctree_find( GtkCTree* ctree, GtkCTreeNode* node, GtkCTreeNode* child );
		public extern static GList* gtk_ctree_find_all_by_row_data( GtkCTree* ctree, GtkCTreeNode* node, void* data );
		public extern static GList* gtk_ctree_find_all_by_row_data_custom( GtkCTree* ctree, GtkCTreeNode* node, void* data, Functors.Func<void*, void*, int> func );
		public extern static GtkCTreeNode* gtk_ctree_find_by_row_data( GtkCTree* ctree, GtkCTreeNode* node, void* data );
		public extern static GtkCTreeNode* gtk_ctree_find_by_row_data_custom( GtkCTree* ctree, GtkCTreeNode* node, void* data, Functors.Func<void*, void*, int> func );
		public extern static GtkCTreeNode* gtk_ctree_find_node_ptr( GtkCTree* ctree, GtkCTreeRow* ctreeRow );
		public extern static Boolean32 gtk_ctree_get_node_info( GtkCTree* ctree, GtkCTreeNode* node, sbyte** text, byte* spacing, GdkDrawable** pixmapClosed, GdkDrawable** maskClosed, GdkDrawable** pixmapOpened, GdkDrawable** maskOpened, Boolean32* isLeaf, Boolean32* expanded );
		[BackendHintReadNone]
		public extern static GType gtk_ctree_get_type();
		public extern static GtkCTreeNode* gtk_ctree_insert_gnode( GtkCTree* ctree, GtkCTreeNode* parent, GtkCTreeNode* sibling, GNode* gnode, Functors.Func<GtkCTree*, uint, GNode*, GtkCTreeNode*, void*, Boolean32> func, void* data );
		public extern static GtkCTreeNode* gtk_ctree_insert_node( GtkCTree* ctree, GtkCTreeNode* parent, GtkCTreeNode* sibling, sbyte** text, byte spacing, GdkDrawable* pixmapClosed, GdkDrawable* maskClosed, GdkDrawable* pixmapOpened, GdkDrawable* maskOpened, Boolean32 isLeaf, Boolean32 expanded );
		public extern static Boolean32 gtk_ctree_is_ancestor( GtkCTree* ctree, GtkCTreeNode* node, GtkCTreeNode* child );
		public extern static Boolean32 gtk_ctree_is_hot_spot( GtkCTree* ctree, int x, int y );
		public extern static Boolean32 gtk_ctree_is_viewable( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static GtkCTreeNode* gtk_ctree_last( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_move( GtkCTree* ctree, GtkCTreeNode* node, GtkCTreeNode* newParent, GtkCTreeNode* newSibling );
		public extern static GtkWidget* gtk_ctree_new( int columns, int treeColumn );
		public extern static GtkWidget* gtk_ctree_new_with_titles( int columns, int treeColumn, sbyte** titles );
		public extern static GtkStyle* gtk_ctree_node_get_cell_style( GtkCTree* ctree, GtkCTreeNode* node, int column );
		public extern static GtkCellType gtk_ctree_node_get_cell_type( GtkCTree* ctree, GtkCTreeNode* node, int column );
		public extern static Boolean32 gtk_ctree_node_get_pixmap( GtkCTree* ctree, GtkCTreeNode* node, int column, GdkDrawable** pixmap, GdkDrawable** mask );
		public extern static Boolean32 gtk_ctree_node_get_pixtext( GtkCTree* ctree, GtkCTreeNode* node, int column, sbyte** text, byte* spacing, GdkDrawable** pixmap, GdkDrawable** mask );
		public extern static void* gtk_ctree_node_get_row_data( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static GtkStyle* gtk_ctree_node_get_row_style( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static Boolean32 gtk_ctree_node_get_selectable( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static Boolean32 gtk_ctree_node_get_text( GtkCTree* ctree, GtkCTreeNode* node, int column, sbyte** text );
		[BackendHintReadNone]
		public extern static GType gtk_ctree_node_get_type();
		public extern static GtkVisibility gtk_ctree_node_is_visible( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_node_moveto( GtkCTree* ctree, GtkCTreeNode* node, int column, float rowAlign, float colAlign );
		public extern static GtkCTreeNode* gtk_ctree_node_nth( GtkCTree* ctree, uint row );
		public extern static void gtk_ctree_node_set_background( GtkCTree* ctree, GtkCTreeNode* node, GdkColor* color );
		public extern static void gtk_ctree_node_set_cell_style( GtkCTree* ctree, GtkCTreeNode* node, int column, GtkStyle* style );
		public extern static void gtk_ctree_node_set_foreground( GtkCTree* ctree, GtkCTreeNode* node, GdkColor* color );
		public extern static void gtk_ctree_node_set_pixmap( GtkCTree* ctree, GtkCTreeNode* node, int column, GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_ctree_node_set_pixtext( GtkCTree* ctree, GtkCTreeNode* node, int column, CUtf8String text, byte spacing, GdkDrawable* pixmap, GdkDrawable* mask );
		public extern static void gtk_ctree_node_set_row_data( GtkCTree* ctree, GtkCTreeNode* node, void* data );
		public extern static void gtk_ctree_node_set_row_data_full( GtkCTree* ctree, GtkCTreeNode* node, void* data, Functors.Action<void*> destroy );
		public extern static void gtk_ctree_node_set_row_style( GtkCTree* ctree, GtkCTreeNode* node, GtkStyle* style );
		public extern static void gtk_ctree_node_set_selectable( GtkCTree* ctree, GtkCTreeNode* node, Boolean32 selectable );
		public extern static void gtk_ctree_node_set_shift( GtkCTree* ctree, GtkCTreeNode* node, int column, int vertical, int horizontal );
		public extern static void gtk_ctree_node_set_text( GtkCTree* ctree, GtkCTreeNode* node, int column, CUtf8String text );
		public extern static void gtk_ctree_post_recursive( GtkCTree* ctree, GtkCTreeNode* node, Functors.Action<GtkCTree*, GtkCTreeNode*, void*> func, void* data );
		public extern static void gtk_ctree_post_recursive_to_depth( GtkCTree* ctree, GtkCTreeNode* node, int depth, Functors.Action<GtkCTree*, GtkCTreeNode*, void*> func, void* data );
		public extern static void gtk_ctree_pre_recursive( GtkCTree* ctree, GtkCTreeNode* node, Functors.Action<GtkCTree*, GtkCTreeNode*, void*> func, void* data );
		public extern static void gtk_ctree_pre_recursive_to_depth( GtkCTree* ctree, GtkCTreeNode* node, int depth, Functors.Action<GtkCTree*, GtkCTreeNode*, void*> func, void* data );
		public extern static void gtk_ctree_real_select_recursive( GtkCTree* ctree, GtkCTreeNode* node, int state );
		public extern static void gtk_ctree_remove_node( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_select( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_select_recursive( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_set_drag_compare_func( GtkCTree* ctree, Functors.Func<GtkCTree*, GtkCTreeNode*, GtkCTreeNode*, GtkCTreeNode*, Boolean32> cmpFunc );
		public extern static void gtk_ctree_set_expander_style( GtkCTree* ctree, GtkCTreeExpanderStyle expanderStyle );
		public extern static void gtk_ctree_set_indent( GtkCTree* ctree, int indent );
		public extern static void gtk_ctree_set_line_style( GtkCTree* ctree, GtkCTreeLineStyle lineStyle );
		public extern static void gtk_ctree_set_node_info( GtkCTree* ctree, GtkCTreeNode* node, CUtf8String text, byte spacing, GdkDrawable* pixmapClosed, GdkDrawable* maskClosed, GdkDrawable* pixmapOpened, GdkDrawable* maskOpened, Boolean32 isLeaf, Boolean32 expanded );
		public extern static void gtk_ctree_set_show_stub( GtkCTree* ctree, Boolean32 showStub );
		public extern static void gtk_ctree_set_spacing( GtkCTree* ctree, int spacing );
		public extern static void gtk_ctree_sort_node( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_sort_recursive( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_toggle_expansion( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_toggle_expansion_recursive( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_unselect( GtkCTree* ctree, GtkCTreeNode* node );
		public extern static void gtk_ctree_unselect_recursive( GtkCTree* ctree, GtkCTreeNode* node );

		[BackendHintReadNone]
		public extern static GType gtk_curve_get_type();
		public extern static void gtk_curve_get_vector( GtkCurve* curve, int veclen, float* vector );
		public extern static GtkWidget* gtk_curve_new();
		public extern static void gtk_curve_reset( GtkCurve* curve );
		public extern static void gtk_curve_set_curve_type( GtkCurve* curve, GtkCurveType type );
		public extern static void gtk_curve_set_gamma( GtkCurve* curve, float gamma_ );
		public extern static void gtk_curve_set_range( GtkCurve* curve, float minX, float maxX, float minY, float maxY );
		public extern static void gtk_curve_set_vector( GtkCurve* curve, int veclen, float* vector );

		public extern static void gtk_file_selection_complete( GtkFileSelection* filesel, sbyte* pattern );
		public extern static sbyte* gtk_file_selection_get_filename( GtkFileSelection* filesel );
		public extern static Boolean32 gtk_file_selection_get_select_multiple( GtkFileSelection* filesel );
		public extern static sbyte** gtk_file_selection_get_selections( GtkFileSelection* filesel );
		[BackendHintReadNone]
		public extern static GType gtk_file_selection_get_type();
		public extern static void gtk_file_selection_hide_fileop_buttons( GtkFileSelection* filesel );
		public extern static GtkWidget* gtk_file_selection_new( sbyte* title );
		public extern static void gtk_file_selection_set_filename( GtkFileSelection* filesel, CUtf8String filename );
		public extern static void gtk_file_selection_set_select_multiple( GtkFileSelection* filesel, Boolean32 selectMultiple );
		public extern static void gtk_file_selection_show_fileop_buttons( GtkFileSelection* filesel );

		[BackendHintReadNone]
		public extern static GType gtk_gamma_curve_get_type();
		public extern static GtkWidget* gtk_gamma_curve_new();

		[BackendHintReadNone]
		public extern static GType gtk_input_dialog_get_type();
		public extern static GtkWidget* gtk_input_dialog_new();

		public extern static void gtk_item_factories_path_delete( sbyte* ifactoryPath, sbyte* path );
		public extern static void gtk_item_factory_add_foreign( GtkWidget* accelWidget, sbyte* fullPath, GtkAccelGroup* accelGroup, uint keyval, GdkModifierType modifiers );
		public extern static void gtk_item_factory_construct( GtkItemFactory* ifactory, uintptr containerType, sbyte* path, GtkAccelGroup* accelGroup );
		public extern static void gtk_item_factory_create_item( GtkItemFactory* ifactory, GtkItemFactoryEntry* entry, void* callbackData, uint callbackType );
		public extern static void gtk_item_factory_create_items( GtkItemFactory* ifactory, uint nEntries, GtkItemFactoryEntry* entries, void* callbackData );
		public extern static void gtk_item_factory_create_items_ac( GtkItemFactory* ifactory, uint nEntries, GtkItemFactoryEntry* entries, void* callbackData, uint callbackType );
		public extern static void gtk_item_factory_create_menu_entries( uint nEntries, GtkMenuEntry* entries );
		public extern static void gtk_item_factory_delete_entries( GtkItemFactory* ifactory, uint nEntries, GtkItemFactoryEntry* entries );
		public extern static void gtk_item_factory_delete_entry( GtkItemFactory* ifactory, GtkItemFactoryEntry* entry );
		public extern static void gtk_item_factory_delete_item( GtkItemFactory* ifactory, sbyte* path );
		public extern static GtkItemFactory* gtk_item_factory_from_path( sbyte* path );
		public extern static GtkItemFactory* gtk_item_factory_from_widget( GtkWidget* widget );
		public extern static GtkWidget* gtk_item_factory_get_item( GtkItemFactory* ifactory, sbyte* path );
		public extern static GtkWidget* gtk_item_factory_get_item_by_action( GtkItemFactory* ifactory, uint action );
		[BackendHintReadNone]
		public extern static GType gtk_item_factory_get_type();
		public extern static GtkWidget* gtk_item_factory_get_widget( GtkItemFactory* ifactory, sbyte* path );
		public extern static GtkWidget* gtk_item_factory_get_widget_by_action( GtkItemFactory* ifactory, uint action );
		public extern static GtkItemFactory* gtk_item_factory_new( uintptr containerType, sbyte* path, GtkAccelGroup* accelGroup );
		public extern static sbyte* gtk_item_factory_path_from_widget( GtkWidget* widget );
		public extern static void gtk_item_factory_popup( GtkItemFactory* ifactory, uint x, uint y, uint mouseButton, uint time_ );
		public extern static void* gtk_item_factory_popup_data( GtkItemFactory* ifactory );
		public extern static void* gtk_item_factory_popup_data_from_widget( GtkWidget* widget );
		public extern static void gtk_item_factory_popup_with_data( GtkItemFactory* ifactory, void* popupData, Functors.Action<void*> destroy, uint x, uint y, uint mouseButton, uint time_ );
		public extern static void gtk_item_factory_set_translate_func( GtkItemFactory* ifactory, Functors.Func<sbyte*, void*, sbyte*> func, void* data, Functors.Action<void*> notify );

		public extern static void gtk_list_append_items( GtkList* list, GList* items );
		public extern static int gtk_list_child_position( GtkList* list, GtkWidget* child );
		public extern static void gtk_list_clear_items( GtkList* list, int start, int end );
		public extern static void gtk_list_end_drag_selection( GtkList* list );
		public extern static void gtk_list_end_selection( GtkList* list );
		public extern static void gtk_list_extend_selection( GtkList* list, GtkScrollType scrollType, float position, Boolean32 autoStartSelection );
		[BackendHintReadNone]
		public extern static GType gtk_list_get_type();
		public extern static void gtk_list_insert_items( GtkList* list, GList* items, int position );
		public extern static GtkWidget* gtk_list_new();
		public extern static void gtk_list_prepend_items( GtkList* list, GList* items );
		public extern static void gtk_list_remove_items( GtkList* list, GList* items );
		public extern static void gtk_list_remove_items_no_unref( GtkList* list, GList* items );
		public extern static void gtk_list_scroll_horizontal( GtkList* list, GtkScrollType scrollType, float position );
		public extern static void gtk_list_scroll_vertical( GtkList* list, GtkScrollType scrollType, float position );
		public extern static void gtk_list_select_all( GtkList* list );
		public extern static void gtk_list_select_child( GtkList* list, GtkWidget* child );
		public extern static void gtk_list_select_item( GtkList* list, int item );
		public extern static void gtk_list_set_selection_mode( GtkList* list, GtkSelectionMode mode );
		public extern static void gtk_list_start_selection( GtkList* list );
		public extern static void gtk_list_toggle_add_mode( GtkList* list );
		public extern static void gtk_list_toggle_focus_row( GtkList* list );
		public extern static void gtk_list_toggle_row( GtkList* list, GtkWidget* item );
		public extern static void gtk_list_undo_selection( GtkList* list );
		public extern static void gtk_list_unselect_all( GtkList* list );
		public extern static void gtk_list_unselect_child( GtkList* list, GtkWidget* child );
		public extern static void gtk_list_unselect_item( GtkList* list, int item );

		public extern static void gtk_list_item_deselect( GtkListItem* listItem );
		[BackendHintReadNone]
		public extern static GType gtk_list_item_get_type();
		public extern static GtkWidget* gtk_list_item_new();
		public extern static GtkWidget* gtk_list_item_new_with_label( sbyte* label );
		public extern static void gtk_list_item_select( GtkListItem* listItem );

		public extern static void gtk_old_editable_changed( GtkOldEditable* oldEditable );
		public extern static void gtk_old_editable_claim_selection( GtkOldEditable* oldEditable, Boolean32 claim, uint time_ );
		[BackendHintReadNone]
		public extern static GType gtk_old_editable_get_type();

		public extern static int gtk_option_menu_get_history( GtkOptionMenu* optionMenu );
		public extern static GtkWidget* gtk_option_menu_get_menu( GtkOptionMenu* optionMenu );
		[BackendHintReadNone]
		public extern static GType gtk_option_menu_get_type();
		public extern static GtkWidget* gtk_option_menu_new();
		public extern static void gtk_option_menu_remove_menu( GtkOptionMenu* optionMenu );
		public extern static void gtk_option_menu_set_history( GtkOptionMenu* optionMenu, uint index_ );
		public extern static void gtk_option_menu_set_menu( GtkOptionMenu* optionMenu, GtkWidget* menu );

		public extern static void gtk_preview_draw_row( GtkPreview* preview, byte* data, int x, int y, int w );
		public extern static GdkColormap* gtk_preview_get_cmap();
		public extern static GtkPreviewInfo* gtk_preview_get_info();
		[BackendHintReadNone]
		public extern static GType gtk_preview_get_type();
		public extern static GdkVisual* gtk_preview_get_visual();
		public extern static GtkWidget* gtk_preview_new( GtkPreviewType type );
		public extern static void gtk_preview_put( GtkPreview* preview, GdkDrawable* window, GdkGC* gc, int srcx, int srcy, int destx, int desty, int width, int height );
		public extern static void gtk_preview_reset();
		public extern static void gtk_preview_set_color_cube( uint nredShades, uint ngreenShades, uint nblueShades, uint ngrayShades );
		public extern static void gtk_preview_set_dither( GtkPreview* preview, GdkRgbDither dither );
		public extern static void gtk_preview_set_expand( GtkPreview* preview, Boolean32 expand );
		public extern static void gtk_preview_set_gamma( double gamma_ );
		public extern static void gtk_preview_set_install_cmap( int installCmap );
		public extern static void gtk_preview_set_reserved( int nreserved );
		public extern static void gtk_preview_size( GtkPreview* preview, int width, int height );
		public extern static void gtk_preview_uninit();

		[BackendHintReadNone]
		public extern static GType gtk_tips_query_get_type();
		public extern static GtkWidget* gtk_tips_query_new();
		public extern static void gtk_tips_query_set_caller( GtkTipsQuery* tipsQuery, GtkWidget* caller );
		public extern static void gtk_tips_query_set_labels( GtkTipsQuery* tipsQuery, sbyte* labelInactive, sbyte* labelNoTip );
		public extern static void gtk_tips_query_start_query( GtkTipsQuery* tipsQuery );
		public extern static void gtk_tips_query_stop_query( GtkTipsQuery* tipsQuery );
	}
	[Flags]
	public enum GTK_CLIST_IN_DRAG : uint {
		None =                           0,
		GTK_CLIST_IN_DRAG =              1,
		GTK_CLIST_ROW_HEIGHT_SET =       2,
		GTK_CLIST_SHOW_TITLES =          4,
		GTK_CLIST_ADD_MODE =            16,
		GTK_CLIST_AUTO_SORT =           32,
		GTK_CLIST_AUTO_RESIZE_BLOCKED = 64,
		GTK_CLIST_REORDERABLE =        128,
		GTK_CLIST_USE_DRAG_ICONS =     256,
		GTK_CLIST_DRAW_DRAG_LINE =     512,
		GTK_CLIST_DRAW_DRAG_RECT =    1024,
	}
	public enum GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID : int {
		GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID =  -1,
		GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID = -2,
	}
	[Flags]
	public enum GtkAccelFlags : uint {
		None =              0,
		GTK_ACCEL_VISIBLE = 1,
		GTK_ACCEL_LOCKED =  2,
		GTK_ACCEL_MASK =    7,
	}
	public enum GtkAnchorType : uint {
		GTK_ANCHOR_CENTER =     0,
		GTK_ANCHOR_NORTH =      1,
		GTK_ANCHOR_NORTH_WEST = 2,
		GTK_ANCHOR_NORTH_EAST = 3,
		GTK_ANCHOR_SOUTH =      4,
		GTK_ANCHOR_SOUTH_WEST = 5,
		GTK_ANCHOR_SOUTH_EAST = 6,
		GTK_ANCHOR_WEST =       7,
		GTK_ANCHOR_EAST =       8,
		GTK_ANCHOR_N =          1,
		GTK_ANCHOR_NW =         2,
		GTK_ANCHOR_NE =         3,
		GTK_ANCHOR_S =          4,
		GTK_ANCHOR_SW =         5,
		GTK_ANCHOR_SE =         6,
		GTK_ANCHOR_W =          7,
		GTK_ANCHOR_E =          8,
	}
	[Flags]
	public enum GtkArgFlags : uint {
		None =                   0,
		GTK_ARG_READABLE =       1,
		GTK_ARG_WRITABLE =       2,
		GTK_ARG_CONSTRUCT =      4,
		GTK_ARG_CONSTRUCT_ONLY = 8,
		GTK_ARG_CHILD_ARG =     16,
	}
	public enum GtkArrowPlacement : uint {
		GTK_ARROWS_BOTH =  0,
		GTK_ARROWS_START = 1,
		GTK_ARROWS_END =   2,
	}
	public enum GtkArrowType : uint {
		GTK_ARROW_UP =    0,
		GTK_ARROW_DOWN =  1,
		GTK_ARROW_LEFT =  2,
		GTK_ARROW_RIGHT = 3,
		GTK_ARROW_NONE =  4,
	}
	public enum GtkAssistantPageType : uint {
		GTK_ASSISTANT_PAGE_CONTENT =  0,
		GTK_ASSISTANT_PAGE_INTRO =    1,
		GTK_ASSISTANT_PAGE_CONFIRM =  2,
		GTK_ASSISTANT_PAGE_SUMMARY =  3,
		GTK_ASSISTANT_PAGE_PROGRESS = 4,
	}
	[Flags]
	public enum GtkAttachOptions : uint {
		None =       0,
		GTK_EXPAND = 1,
		GTK_SHRINK = 2,
		GTK_FILL =   4,
	}
	public enum GtkBuilderError : uint {
		GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION =  0,
		GTK_BUILDER_ERROR_UNHANDLED_TAG =          1,
		GTK_BUILDER_ERROR_MISSING_ATTRIBUTE =      2,
		GTK_BUILDER_ERROR_INVALID_ATTRIBUTE =      3,
		GTK_BUILDER_ERROR_INVALID_TAG =            4,
		GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE = 5,
		GTK_BUILDER_ERROR_INVALID_VALUE =          6,
		GTK_BUILDER_ERROR_VERSION_MISMATCH =       7,
		GTK_BUILDER_ERROR_DUPLICATE_ID =           8,
	}
	public enum GtkButtonAction : uint {
		GTK_BUTTON_IGNORED = 0,
		GTK_BUTTON_SELECTS = 1,
		GTK_BUTTON_DRAGS =   2,
		GTK_BUTTON_EXPANDS = 4,
	}
	public enum GtkButtonBoxStyle : uint {
		GTK_BUTTONBOX_DEFAULT_STYLE = 0,
		GTK_BUTTONBOX_SPREAD =        1,
		GTK_BUTTONBOX_EDGE =          2,
		GTK_BUTTONBOX_START =         3,
		GTK_BUTTONBOX_END =           4,
		GTK_BUTTONBOX_CENTER =        5,
	}
	public enum GtkButtonsType : uint {
		GTK_BUTTONS_NONE =      0,
		GTK_BUTTONS_OK =        1,
		GTK_BUTTONS_CLOSE =     2,
		GTK_BUTTONS_CANCEL =    3,
		GTK_BUTTONS_YES_NO =    4,
		GTK_BUTTONS_OK_CANCEL = 5,
	}
	[Flags]
	public enum GtkCalendarDisplayOptions : uint {
		None =                            0,
		GTK_CALENDAR_SHOW_HEADING =       1,
		GTK_CALENDAR_SHOW_DAY_NAMES =     2,
		GTK_CALENDAR_NO_MONTH_CHANGE =    4,
		GTK_CALENDAR_SHOW_WEEK_NUMBERS =  8,
		GTK_CALENDAR_WEEK_START_MONDAY = 16,
		GTK_CALENDAR_SHOW_DETAILS =      32,
	}
	public enum GtkCellRendererAccelMode : uint {
		GTK_CELL_RENDERER_ACCEL_MODE_GTK =   0,
		GTK_CELL_RENDERER_ACCEL_MODE_OTHER = 1,
	}
	public enum GtkCellRendererMode : uint {
		GTK_CELL_RENDERER_MODE_INERT =       0,
		GTK_CELL_RENDERER_MODE_ACTIVATABLE = 1,
		GTK_CELL_RENDERER_MODE_EDITABLE =    2,
	}
	[Flags]
	public enum GtkCellRendererState : uint {
		None =                          0,
		GTK_CELL_RENDERER_SELECTED =    1,
		GTK_CELL_RENDERER_PRELIT =      2,
		GTK_CELL_RENDERER_INSENSITIVE = 4,
		GTK_CELL_RENDERER_SORTED =      8,
		GTK_CELL_RENDERER_FOCUSED =    16,
	}
	public enum GtkCellType : uint {
		GTK_CELL_EMPTY =   0,
		GTK_CELL_TEXT =    1,
		GTK_CELL_PIXMAP =  2,
		GTK_CELL_PIXTEXT = 3,
		GTK_CELL_WIDGET =  4,
	}
	public enum GtkCListDragPos : uint {
		GTK_CLIST_DRAG_NONE =   0,
		GTK_CLIST_DRAG_BEFORE = 1,
		GTK_CLIST_DRAG_INTO =   2,
		GTK_CLIST_DRAG_AFTER =  3,
	}
	public enum GtkCornerType : uint {
		GTK_CORNER_TOP_LEFT =     0,
		GTK_CORNER_BOTTOM_LEFT =  1,
		GTK_CORNER_TOP_RIGHT =    2,
		GTK_CORNER_BOTTOM_RIGHT = 3,
	}
	public enum GtkCTreeExpanderStyle : uint {
		GTK_CTREE_EXPANDER_NONE =     0,
		GTK_CTREE_EXPANDER_SQUARE =   1,
		GTK_CTREE_EXPANDER_TRIANGLE = 2,
		GTK_CTREE_EXPANDER_CIRCULAR = 3,
	}
	public enum GtkCTreeExpansionType : uint {
		GTK_CTREE_EXPANSION_EXPAND =             0,
		GTK_CTREE_EXPANSION_EXPAND_RECURSIVE =   1,
		GTK_CTREE_EXPANSION_COLLAPSE =           2,
		GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE = 3,
		GTK_CTREE_EXPANSION_TOGGLE =             4,
		GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE =   5,
	}
	public enum GtkCTreeLineStyle : uint {
		GTK_CTREE_LINES_NONE =   0,
		GTK_CTREE_LINES_SOLID =  1,
		GTK_CTREE_LINES_DOTTED = 2,
		GTK_CTREE_LINES_TABBED = 3,
	}
	public enum GtkCTreePos : uint {
		GTK_CTREE_POS_BEFORE =   0,
		GTK_CTREE_POS_AS_CHILD = 1,
		GTK_CTREE_POS_AFTER =    2,
	}
	public enum GtkCurveType : uint {
		GTK_CURVE_TYPE_LINEAR = 0,
		GTK_CURVE_TYPE_SPLINE = 1,
		GTK_CURVE_TYPE_FREE =   2,
	}
	[Flags]
	public enum GtkDebugFlag : uint {
		None =                   0,
		GTK_DEBUG_MISC =         1,
		GTK_DEBUG_PLUGSOCKET =   2,
		GTK_DEBUG_TEXT =         4,
		GTK_DEBUG_TREE =         8,
		GTK_DEBUG_UPDATES =     16,
		GTK_DEBUG_KEYBINDINGS = 32,
		GTK_DEBUG_MULTIHEAD =   64,
		GTK_DEBUG_MODULES =    128,
		GTK_DEBUG_GEOMETRY =   256,
		GTK_DEBUG_ICONTHEME =  512,
		GTK_DEBUG_PRINTING =  1024,
		GTK_DEBUG_BUILDER =   2048,
	}
	public enum GtkDeleteType : uint {
		GTK_DELETE_CHARS =             0,
		GTK_DELETE_WORD_ENDS =         1,
		GTK_DELETE_WORDS =             2,
		GTK_DELETE_DISPLAY_LINES =     3,
		GTK_DELETE_DISPLAY_LINE_ENDS = 4,
		GTK_DELETE_PARAGRAPH_ENDS =    5,
		GTK_DELETE_PARAGRAPHS =        6,
		GTK_DELETE_WHITESPACE =        7,
	}
	public enum GtkDestDefaults : uint {
		GTK_DEST_DEFAULT_MOTION =    1,
		GTK_DEST_DEFAULT_HIGHLIGHT = 2,
		GTK_DEST_DEFAULT_DROP =      4,
		GTK_DEST_DEFAULT_ALL =       7,
	}
	[Flags]
	public enum GtkDialogFlags : uint {
		None =                           0,
		GTK_DIALOG_MODAL =               1,
		GTK_DIALOG_DESTROY_WITH_PARENT = 2,
		GTK_DIALOG_NO_SEPARATOR =        4,
	}
	public enum GtkDirectionType : uint {
		GTK_DIR_TAB_FORWARD =  0,
		GTK_DIR_TAB_BACKWARD = 1,
		GTK_DIR_UP =           2,
		GTK_DIR_DOWN =         3,
		GTK_DIR_LEFT =         4,
		GTK_DIR_RIGHT =        5,
	}
	public enum GtkDragResult : uint {
		GTK_DRAG_RESULT_SUCCESS =         0,
		GTK_DRAG_RESULT_NO_TARGET =       1,
		GTK_DRAG_RESULT_USER_CANCELLED =  2,
		GTK_DRAG_RESULT_TIMEOUT_EXPIRED = 3,
		GTK_DRAG_RESULT_GRAB_BROKEN =     4,
		GTK_DRAG_RESULT_ERROR =           5,
	}
	public enum GtkEntryIconPosition : uint {
		GTK_ENTRY_ICON_PRIMARY =   0,
		GTK_ENTRY_ICON_SECONDARY = 1,
	}
	public enum GtkExpanderStyle : uint {
		GTK_EXPANDER_COLLAPSED =      0,
		GTK_EXPANDER_SEMI_COLLAPSED = 1,
		GTK_EXPANDER_SEMI_EXPANDED =  2,
		GTK_EXPANDER_EXPANDED =       3,
	}
	public enum GtkFileChooserAction : uint {
		GTK_FILE_CHOOSER_ACTION_OPEN =          0,
		GTK_FILE_CHOOSER_ACTION_SAVE =          1,
		GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER = 2,
		GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER = 3,
	}
	public enum GtkFileChooserConfirmation : uint {
		GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM =         0,
		GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME = 1,
		GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN =    2,
	}
	public enum GtkFileChooserError : uint {
		GTK_FILE_CHOOSER_ERROR_NONEXISTENT =         0,
		GTK_FILE_CHOOSER_ERROR_BAD_FILENAME =        1,
		GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS =      2,
		GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME = 3,
	}
	[Flags]
	public enum GtkFileFilterFlags : uint {
		None =                         0,
		GTK_FILE_FILTER_FILENAME =     1,
		GTK_FILE_FILTER_URI =          2,
		GTK_FILE_FILTER_DISPLAY_NAME = 4,
		GTK_FILE_FILTER_MIME_TYPE =    8,
	}
	[Flags]
	public enum GtkIconLookupFlags : uint {
		None =                             0,
		GTK_ICON_LOOKUP_NO_SVG =           1,
		GTK_ICON_LOOKUP_FORCE_SVG =        2,
		GTK_ICON_LOOKUP_USE_BUILTIN =      4,
		GTK_ICON_LOOKUP_GENERIC_FALLBACK = 8,
		GTK_ICON_LOOKUP_FORCE_SIZE =      16,
	}
	public enum GtkIconSize : uint {
		GTK_ICON_SIZE_INVALID =       0,
		GTK_ICON_SIZE_MENU =          1,
		GTK_ICON_SIZE_SMALL_TOOLBAR = 2,
		GTK_ICON_SIZE_LARGE_TOOLBAR = 3,
		GTK_ICON_SIZE_BUTTON =        4,
		GTK_ICON_SIZE_DND =           5,
		GTK_ICON_SIZE_DIALOG =        6,
	}
	public enum GtkIconThemeError : uint {
		GTK_ICON_THEME_NOT_FOUND = 0,
		GTK_ICON_THEME_FAILED =    1,
	}
	public enum GtkIconViewDropPosition : uint {
		GTK_ICON_VIEW_NO_DROP =    0,
		GTK_ICON_VIEW_DROP_INTO =  1,
		GTK_ICON_VIEW_DROP_LEFT =  2,
		GTK_ICON_VIEW_DROP_RIGHT = 3,
		GTK_ICON_VIEW_DROP_ABOVE = 4,
		GTK_ICON_VIEW_DROP_BELOW = 5,
	}
	public enum GtkImageType : uint {
		GTK_IMAGE_EMPTY =     0,
		GTK_IMAGE_PIXMAP =    1,
		GTK_IMAGE_IMAGE =     2,
		GTK_IMAGE_PIXBUF =    3,
		GTK_IMAGE_STOCK =     4,
		GTK_IMAGE_ICON_SET =  5,
		GTK_IMAGE_ANIMATION = 6,
		GTK_IMAGE_ICON_NAME = 7,
		GTK_IMAGE_GICON =     8,
	}
	public enum GtkIMPreeditStyle : uint {
		GTK_IM_PREEDIT_NOTHING =  0,
		GTK_IM_PREEDIT_CALLBACK = 1,
		GTK_IM_PREEDIT_NONE =     2,
	}
	public enum GtkIMStatusStyle : uint {
		GTK_IM_STATUS_NOTHING =  0,
		GTK_IM_STATUS_CALLBACK = 1,
		GTK_IM_STATUS_NONE =     2,
	}
	public enum GtkJustification : uint {
		GTK_JUSTIFY_LEFT =   0,
		GTK_JUSTIFY_RIGHT =  1,
		GTK_JUSTIFY_CENTER = 2,
		GTK_JUSTIFY_FILL =   3,
	}
	public enum GtkMatchType : uint {
		GTK_MATCH_ALL =      0,
		GTK_MATCH_ALL_TAIL = 1,
		GTK_MATCH_HEAD =     2,
		GTK_MATCH_TAIL =     3,
		GTK_MATCH_EXACT =    4,
		GTK_MATCH_LAST =     5,
	}
	public enum GtkMenuDirectionType : uint {
		GTK_MENU_DIR_PARENT = 0,
		GTK_MENU_DIR_CHILD =  1,
		GTK_MENU_DIR_NEXT =   2,
		GTK_MENU_DIR_PREV =   3,
	}
	public enum GtkMessageType : uint {
		GTK_MESSAGE_INFO =     0,
		GTK_MESSAGE_WARNING =  1,
		GTK_MESSAGE_QUESTION = 2,
		GTK_MESSAGE_ERROR =    3,
		GTK_MESSAGE_OTHER =    4,
	}
	public enum GtkMetricType : uint {
		GTK_PIXELS =      0,
		GTK_INCHES =      1,
		GTK_CENTIMETERS = 2,
	}
	public enum GtkMovementStep : uint {
		GTK_MOVEMENT_LOGICAL_POSITIONS = 0,
		GTK_MOVEMENT_VISUAL_POSITIONS =  1,
		GTK_MOVEMENT_WORDS =             2,
		GTK_MOVEMENT_DISPLAY_LINES =     3,
		GTK_MOVEMENT_DISPLAY_LINE_ENDS = 4,
		GTK_MOVEMENT_PARAGRAPHS =        5,
		GTK_MOVEMENT_PARAGRAPH_ENDS =    6,
		GTK_MOVEMENT_PAGES =             7,
		GTK_MOVEMENT_BUFFER_ENDS =       8,
		GTK_MOVEMENT_HORIZONTAL_PAGES =  9,
	}
	public enum GtkNotebookTab : uint {
		GTK_NOTEBOOK_TAB_FIRST = 0,
		GTK_NOTEBOOK_TAB_LAST =  1,
	}
	public enum GtkNumberUpLayout : uint {
		GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM = 0,
		GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP = 1,
		GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM = 2,
		GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP = 3,
		GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT = 4,
		GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT = 5,
		GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT = 6,
		GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT = 7,
	}
	[Flags]
	public enum GtkObjectFlags : uint {
		None =               0,
		GTK_IN_DESTRUCTION = 1,
		GTK_FLOATING =       2,
		GTK_RESERVED_1 =     4,
		GTK_RESERVED_2 =     8,
	}
	public enum GtkOrientation : uint {
		GTK_ORIENTATION_HORIZONTAL = 0,
		GTK_ORIENTATION_VERTICAL =   1,
	}
	public enum GtkPackDirection : uint {
		GTK_PACK_DIRECTION_LTR = 0,
		GTK_PACK_DIRECTION_RTL = 1,
		GTK_PACK_DIRECTION_TTB = 2,
		GTK_PACK_DIRECTION_BTT = 3,
	}
	public enum GtkPackType : uint {
		GTK_PACK_START = 0,
		GTK_PACK_END =   1,
	}
	public enum GtkPageOrientation : uint {
		GTK_PAGE_ORIENTATION_PORTRAIT =          0,
		GTK_PAGE_ORIENTATION_LANDSCAPE =         1,
		GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT =  2,
		GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE = 3,
	}
	public enum GtkPageSet : uint {
		GTK_PAGE_SET_ALL =  0,
		GTK_PAGE_SET_EVEN = 1,
		GTK_PAGE_SET_ODD =  2,
	}
	public enum GtkPathPriorityType : uint {
		GTK_PATH_PRIO_LOWEST =      0,
		GTK_PATH_PRIO_GTK =         4,
		GTK_PATH_PRIO_APPLICATION = 8,
		GTK_PATH_PRIO_THEME =      10,
		GTK_PATH_PRIO_RC =         12,
		GTK_PATH_PRIO_HIGHEST =    15,
	}
	public enum GtkPathType : uint {
		GTK_PATH_WIDGET =       0,
		GTK_PATH_WIDGET_CLASS = 1,
		GTK_PATH_CLASS =        2,
	}
	public enum GtkPolicyType : uint {
		GTK_POLICY_ALWAYS =    0,
		GTK_POLICY_AUTOMATIC = 1,
		GTK_POLICY_NEVER =     2,
	}
	public enum GtkPositionType : uint {
		GTK_POS_LEFT =   0,
		GTK_POS_RIGHT =  1,
		GTK_POS_TOP =    2,
		GTK_POS_BOTTOM = 3,
	}
	public enum GtkPreviewType : uint {
		GTK_PREVIEW_COLOR =     0,
		GTK_PREVIEW_GRAYSCALE = 1,
	}
	public enum GtkPrintDuplex : uint {
		GTK_PRINT_DUPLEX_SIMPLEX =    0,
		GTK_PRINT_DUPLEX_HORIZONTAL = 1,
		GTK_PRINT_DUPLEX_VERTICAL =   2,
	}
	public enum GtkPrintError : uint {
		GTK_PRINT_ERROR_GENERAL =        0,
		GTK_PRINT_ERROR_INTERNAL_ERROR = 1,
		GTK_PRINT_ERROR_NOMEM =          2,
		GTK_PRINT_ERROR_INVALID_FILE =   3,
	}
	public enum GtkPrintOperationAction : uint {
		GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG = 0,
		GTK_PRINT_OPERATION_ACTION_PRINT =        1,
		GTK_PRINT_OPERATION_ACTION_PREVIEW =      2,
		GTK_PRINT_OPERATION_ACTION_EXPORT =       3,
	}
	public enum GtkPrintOperationResult : uint {
		GTK_PRINT_OPERATION_RESULT_ERROR =       0,
		GTK_PRINT_OPERATION_RESULT_APPLY =       1,
		GTK_PRINT_OPERATION_RESULT_CANCEL =      2,
		GTK_PRINT_OPERATION_RESULT_IN_PROGRESS = 3,
	}
	public enum GtkPrintPages : uint {
		GTK_PRINT_PAGES_ALL =       0,
		GTK_PRINT_PAGES_CURRENT =   1,
		GTK_PRINT_PAGES_RANGES =    2,
		GTK_PRINT_PAGES_SELECTION = 3,
	}
	public enum GtkPrintQuality : uint {
		GTK_PRINT_QUALITY_LOW =    0,
		GTK_PRINT_QUALITY_NORMAL = 1,
		GTK_PRINT_QUALITY_HIGH =   2,
		GTK_PRINT_QUALITY_DRAFT =  3,
	}
	public enum GtkPrintStatus : uint {
		GTK_PRINT_STATUS_INITIAL =          0,
		GTK_PRINT_STATUS_PREPARING =        1,
		GTK_PRINT_STATUS_GENERATING_DATA =  2,
		GTK_PRINT_STATUS_SENDING_DATA =     3,
		GTK_PRINT_STATUS_PENDING =          4,
		GTK_PRINT_STATUS_PENDING_ISSUE =    5,
		GTK_PRINT_STATUS_PRINTING =         6,
		GTK_PRINT_STATUS_FINISHED =         7,
		GTK_PRINT_STATUS_FINISHED_ABORTED = 8,
	}
	public enum GtkProgressBarOrientation : uint {
		GTK_PROGRESS_LEFT_TO_RIGHT = 0,
		GTK_PROGRESS_RIGHT_TO_LEFT = 1,
		GTK_PROGRESS_BOTTOM_TO_TOP = 2,
		GTK_PROGRESS_TOP_TO_BOTTOM = 3,
	}
	public enum GtkProgressBarStyle : uint {
		GTK_PROGRESS_CONTINUOUS = 0,
		GTK_PROGRESS_DISCRETE =   1,
	}
	[Flags]
	public enum GtkRcFlags : uint {
		None =        0,
		GTK_RC_FG =   1,
		GTK_RC_BG =   2,
		GTK_RC_TEXT = 4,
		GTK_RC_BASE = 8,
	}
	public enum GtkRcTokenType : uint {
		GTK_RC_TOKEN_INVALID =        270,
		GTK_RC_TOKEN_INCLUDE =        271,
		GTK_RC_TOKEN_NORMAL =         272,
		GTK_RC_TOKEN_ACTIVE =         273,
		GTK_RC_TOKEN_PRELIGHT =       274,
		GTK_RC_TOKEN_SELECTED =       275,
		GTK_RC_TOKEN_INSENSITIVE =    276,
		GTK_RC_TOKEN_FG =             277,
		GTK_RC_TOKEN_BG =             278,
		GTK_RC_TOKEN_TEXT =           279,
		GTK_RC_TOKEN_BASE =           280,
		GTK_RC_TOKEN_XTHICKNESS =     281,
		GTK_RC_TOKEN_YTHICKNESS =     282,
		GTK_RC_TOKEN_FONT =           283,
		GTK_RC_TOKEN_FONTSET =        284,
		GTK_RC_TOKEN_FONT_NAME =      285,
		GTK_RC_TOKEN_BG_PIXMAP =      286,
		GTK_RC_TOKEN_PIXMAP_PATH =    287,
		GTK_RC_TOKEN_STYLE =          288,
		GTK_RC_TOKEN_BINDING =        289,
		GTK_RC_TOKEN_BIND =           290,
		GTK_RC_TOKEN_WIDGET =         291,
		GTK_RC_TOKEN_WIDGET_CLASS =   292,
		GTK_RC_TOKEN_CLASS =          293,
		GTK_RC_TOKEN_LOWEST =         294,
		GTK_RC_TOKEN_GTK =            295,
		GTK_RC_TOKEN_APPLICATION =    296,
		GTK_RC_TOKEN_THEME =          297,
		GTK_RC_TOKEN_RC =             298,
		GTK_RC_TOKEN_HIGHEST =        299,
		GTK_RC_TOKEN_ENGINE =         300,
		GTK_RC_TOKEN_MODULE_PATH =    301,
		GTK_RC_TOKEN_IM_MODULE_PATH = 302,
		GTK_RC_TOKEN_IM_MODULE_FILE = 303,
		GTK_RC_TOKEN_STOCK =          304,
		GTK_RC_TOKEN_LTR =            305,
		GTK_RC_TOKEN_RTL =            306,
		GTK_RC_TOKEN_COLOR =          307,
		GTK_RC_TOKEN_UNBIND =         308,
		GTK_RC_TOKEN_LAST =           309,
	}
	public enum GtkRecentChooserError : uint {
		GTK_RECENT_CHOOSER_ERROR_NOT_FOUND =   0,
		GTK_RECENT_CHOOSER_ERROR_INVALID_URI = 1,
	}
	[Flags]
	public enum GtkRecentFilterFlags : uint {
		None =                           0,
		GTK_RECENT_FILTER_URI =          1,
		GTK_RECENT_FILTER_DISPLAY_NAME = 2,
		GTK_RECENT_FILTER_MIME_TYPE =    4,
		GTK_RECENT_FILTER_APPLICATION =  8,
		GTK_RECENT_FILTER_GROUP =       16,
		GTK_RECENT_FILTER_AGE =         32,
	}
	public enum GtkRecentManagerError : uint {
		GTK_RECENT_MANAGER_ERROR_NOT_FOUND =        0,
		GTK_RECENT_MANAGER_ERROR_INVALID_URI =      1,
		GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING = 2,
		GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED =   3,
		GTK_RECENT_MANAGER_ERROR_READ =             4,
		GTK_RECENT_MANAGER_ERROR_WRITE =            5,
		GTK_RECENT_MANAGER_ERROR_UNKNOWN =          6,
	}
	public enum GtkRecentSortType : uint {
		GTK_RECENT_SORT_NONE =   0,
		GTK_RECENT_SORT_MRU =    1,
		GTK_RECENT_SORT_LRU =    2,
		GTK_RECENT_SORT_CUSTOM = 3,
	}
	public enum GtkReliefStyle : uint {
		GTK_RELIEF_NORMAL = 0,
		GTK_RELIEF_HALF =   1,
		GTK_RELIEF_NONE =   2,
	}
	public enum GtkResizeMode : uint {
		GTK_RESIZE_PARENT =    0,
		GTK_RESIZE_QUEUE =     1,
		GTK_RESIZE_IMMEDIATE = 2,
	}
	public enum GtkResponseType : int {
		GTK_RESPONSE_NONE =         -1,
		GTK_RESPONSE_REJECT =       -2,
		GTK_RESPONSE_ACCEPT =       -3,
		GTK_RESPONSE_DELETE_EVENT = -4,
		GTK_RESPONSE_OK =           -5,
		GTK_RESPONSE_CANCEL =       -6,
		GTK_RESPONSE_CLOSE =        -7,
		GTK_RESPONSE_YES =          -8,
		GTK_RESPONSE_NO =           -9,
		GTK_RESPONSE_APPLY =       -10,
		GTK_RESPONSE_HELP =        -11,
	}
	public enum GtkScrollStep : uint {
		GTK_SCROLL_STEPS =            0,
		GTK_SCROLL_PAGES =            1,
		GTK_SCROLL_ENDS =             2,
		GTK_SCROLL_HORIZONTAL_STEPS = 3,
		GTK_SCROLL_HORIZONTAL_PAGES = 4,
		GTK_SCROLL_HORIZONTAL_ENDS =  5,
	}
	public enum GtkScrollType : uint {
		GTK_SCROLL_NONE =          0,
		GTK_SCROLL_JUMP =          1,
		GTK_SCROLL_STEP_BACKWARD = 2,
		GTK_SCROLL_STEP_FORWARD =  3,
		GTK_SCROLL_PAGE_BACKWARD = 4,
		GTK_SCROLL_PAGE_FORWARD =  5,
		GTK_SCROLL_STEP_UP =       6,
		GTK_SCROLL_STEP_DOWN =     7,
		GTK_SCROLL_PAGE_UP =       8,
		GTK_SCROLL_PAGE_DOWN =     9,
		GTK_SCROLL_STEP_LEFT =    10,
		GTK_SCROLL_STEP_RIGHT =   11,
		GTK_SCROLL_PAGE_LEFT =    12,
		GTK_SCROLL_PAGE_RIGHT =   13,
		GTK_SCROLL_START =        14,
		GTK_SCROLL_END =          15,
	}
	public enum GtkSelectionMode : uint {
		GTK_SELECTION_NONE =     0,
		GTK_SELECTION_SINGLE =   1,
		GTK_SELECTION_BROWSE =   2,
		GTK_SELECTION_MULTIPLE = 3,
		GTK_SELECTION_EXTENDED = 3,
	}
	public enum GtkSensitivityType : uint {
		GTK_SENSITIVITY_AUTO = 0,
		GTK_SENSITIVITY_ON =   1,
		GTK_SENSITIVITY_OFF =  2,
	}
	public enum GtkShadowType : uint {
		GTK_SHADOW_NONE =       0,
		GTK_SHADOW_IN =         1,
		GTK_SHADOW_OUT =        2,
		GTK_SHADOW_ETCHED_IN =  3,
		GTK_SHADOW_ETCHED_OUT = 4,
	}
	public enum GtkSideType : uint {
		GTK_SIDE_TOP =    0,
		GTK_SIDE_BOTTOM = 1,
		GTK_SIDE_LEFT =   2,
		GTK_SIDE_RIGHT =  3,
	}
	[Flags]
	public enum GtkSignalRunType : uint {
		None =               0,
		GTK_RUN_FIRST =      1,
		GTK_RUN_LAST =       2,
		GTK_RUN_BOTH =       3,
		GTK_RUN_NO_RECURSE = 8,
		GTK_RUN_ACTION =    32,
		GTK_RUN_NO_HOOKS =  64,
	}
	public enum GtkSizeGroupMode : uint {
		GTK_SIZE_GROUP_NONE =       0,
		GTK_SIZE_GROUP_HORIZONTAL = 1,
		GTK_SIZE_GROUP_VERTICAL =   2,
		GTK_SIZE_GROUP_BOTH =       3,
	}
	public enum GtkSortType : uint {
		GTK_SORT_ASCENDING =  0,
		GTK_SORT_DESCENDING = 1,
	}
	public enum GtkSpinButtonUpdatePolicy : uint {
		GTK_UPDATE_ALWAYS =   0,
		GTK_UPDATE_IF_VALID = 1,
	}
	public enum GtkSpinType : uint {
		GTK_SPIN_STEP_FORWARD =  0,
		GTK_SPIN_STEP_BACKWARD = 1,
		GTK_SPIN_PAGE_FORWARD =  2,
		GTK_SPIN_PAGE_BACKWARD = 3,
		GTK_SPIN_HOME =          4,
		GTK_SPIN_END =           5,
		GTK_SPIN_USER_DEFINED =  6,
	}
	public enum GtkStateType : uint {
		GTK_STATE_NORMAL =      0,
		GTK_STATE_ACTIVE =      1,
		GTK_STATE_PRELIGHT =    2,
		GTK_STATE_SELECTED =    3,
		GTK_STATE_INSENSITIVE = 4,
	}
	public enum GtkSubmenuDirection : uint {
		GTK_DIRECTION_LEFT =  0,
		GTK_DIRECTION_RIGHT = 1,
	}
	public enum GtkSubmenuPlacement : uint {
		GTK_TOP_BOTTOM = 0,
		GTK_LEFT_RIGHT = 1,
	}
	[Flags]
	public enum GtkTargetFlags : uint {
		None =                    0,
		GTK_TARGET_SAME_APP =     1,
		GTK_TARGET_SAME_WIDGET =  2,
		GTK_TARGET_OTHER_APP =    4,
		GTK_TARGET_OTHER_WIDGET = 8,
	}
	public enum GtkTextBufferTargetInfo : int {
		GTK_TEXT_BUFFER_TARGET_INFO_BUFFER_CONTENTS = -1,
		GTK_TEXT_BUFFER_TARGET_INFO_RICH_TEXT =       -2,
		GTK_TEXT_BUFFER_TARGET_INFO_TEXT =            -3,
	}
	public enum GtkTextDirection : uint {
		GTK_TEXT_DIR_NONE = 0,
		GTK_TEXT_DIR_LTR =  1,
		GTK_TEXT_DIR_RTL =  2,
	}
	[Flags]
	public enum GtkTextSearchFlags : uint {
		None =                         0,
		GTK_TEXT_SEARCH_VISIBLE_ONLY = 1,
		GTK_TEXT_SEARCH_TEXT_ONLY =    2,
	}
	public enum GtkTextWindowType : uint {
		GTK_TEXT_WINDOW_PRIVATE = 0,
		GTK_TEXT_WINDOW_WIDGET =  1,
		GTK_TEXT_WINDOW_TEXT =    2,
		GTK_TEXT_WINDOW_LEFT =    3,
		GTK_TEXT_WINDOW_RIGHT =   4,
		GTK_TEXT_WINDOW_TOP =     5,
		GTK_TEXT_WINDOW_BOTTOM =  6,
	}
	public enum GtkToolbarChildType : uint {
		GTK_TOOLBAR_CHILD_SPACE =        0,
		GTK_TOOLBAR_CHILD_BUTTON =       1,
		GTK_TOOLBAR_CHILD_TOGGLEBUTTON = 2,
		GTK_TOOLBAR_CHILD_RADIOBUTTON =  3,
		GTK_TOOLBAR_CHILD_WIDGET =       4,
	}
	public enum GtkToolbarSpaceStyle : uint {
		GTK_TOOLBAR_SPACE_EMPTY = 0,
		GTK_TOOLBAR_SPACE_LINE =  1,
	}
	public enum GtkToolbarStyle : uint {
		GTK_TOOLBAR_ICONS =      0,
		GTK_TOOLBAR_TEXT =       1,
		GTK_TOOLBAR_BOTH =       2,
		GTK_TOOLBAR_BOTH_HORIZ = 3,
	}
	public enum GtkToolPaletteDragTargets : uint {
		GTK_TOOL_PALETTE_DRAG_ITEMS =  1,
		GTK_TOOL_PALETTE_DRAG_GROUPS = 2,
	}
	[Flags]
	public enum GtkTreeModelFlags : uint {
		None =                         0,
		GTK_TREE_MODEL_ITERS_PERSIST = 1,
		GTK_TREE_MODEL_LIST_ONLY =     2,
	}
	public enum GtkTreeViewColumnSizing : uint {
		GTK_TREE_VIEW_COLUMN_GROW_ONLY = 0,
		GTK_TREE_VIEW_COLUMN_AUTOSIZE =  1,
		GTK_TREE_VIEW_COLUMN_FIXED =     2,
	}
	public enum GtkTreeViewDropPosition : uint {
		GTK_TREE_VIEW_DROP_BEFORE =         0,
		GTK_TREE_VIEW_DROP_AFTER =          1,
		GTK_TREE_VIEW_DROP_INTO_OR_BEFORE = 2,
		GTK_TREE_VIEW_DROP_INTO_OR_AFTER =  3,
	}
	public enum GtkTreeViewGridLines : uint {
		GTK_TREE_VIEW_GRID_LINES_NONE =       0,
		GTK_TREE_VIEW_GRID_LINES_HORIZONTAL = 1,
		GTK_TREE_VIEW_GRID_LINES_VERTICAL =   2,
		GTK_TREE_VIEW_GRID_LINES_BOTH =       3,
	}
	[Flags]
	public enum GtkUIManagerItemType : uint {
		GTK_UI_MANAGER_AUTO =                0,
		GTK_UI_MANAGER_MENUBAR =             1,
		GTK_UI_MANAGER_MENU =                2,
		GTK_UI_MANAGER_TOOLBAR =             4,
		GTK_UI_MANAGER_PLACEHOLDER =         8,
		GTK_UI_MANAGER_POPUP =              16,
		GTK_UI_MANAGER_MENUITEM =           32,
		GTK_UI_MANAGER_TOOLITEM =           64,
		GTK_UI_MANAGER_SEPARATOR =         128,
		GTK_UI_MANAGER_ACCELERATOR =       256,
		GTK_UI_MANAGER_POPUP_WITH_ACCELS = 512,
	}
	public enum GtkUnit : uint {
		GTK_UNIT_PIXEL =  0,
		GTK_UNIT_POINTS = 1,
		GTK_UNIT_INCH =   2,
		GTK_UNIT_MM =     3,
	}
	public enum GtkUpdateType : uint {
		GTK_UPDATE_CONTINUOUS =    0,
		GTK_UPDATE_DISCONTINUOUS = 1,
		GTK_UPDATE_DELAYED =       2,
	}
	public enum GtkVisibility : uint {
		GTK_VISIBILITY_NONE =    0,
		GTK_VISIBILITY_PARTIAL = 1,
		GTK_VISIBILITY_FULL =    2,
	}
	[Flags]
	public enum GtkWidgetFlags : uint {
		None =                       0,
		GTK_TOPLEVEL =              16,
		GTK_NO_WINDOW =             32,
		GTK_REALIZED =              64,
		GTK_MAPPED =               128,
		GTK_VISIBLE =              256,
		GTK_SENSITIVE =            512,
		GTK_PARENT_SENSITIVE =    1024,
		GTK_CAN_FOCUS =           2048,
		GTK_HAS_FOCUS =           4096,
		GTK_CAN_DEFAULT =         8192,
		GTK_HAS_DEFAULT =        16384,
		GTK_HAS_GRAB =           32768,
		GTK_RC_STYLE =           65536,
		GTK_COMPOSITE_CHILD =   131072,
		GTK_NO_REPARENT =       262144,
		GTK_APP_PAINTABLE =     524288,
		GTK_RECEIVES_DEFAULT = 1048576,
		GTK_DOUBLE_BUFFERED =  2097152,
		GTK_NO_SHOW_ALL =      4194304,
	}
	public enum GtkWidgetHelpType : uint {
		GTK_WIDGET_HELP_TOOLTIP =    0,
		GTK_WIDGET_HELP_WHATS_THIS = 1,
	}
	public enum GtkWindowPosition : uint {
		GTK_WIN_POS_NONE =             0,
		GTK_WIN_POS_CENTER =           1,
		GTK_WIN_POS_MOUSE =            2,
		GTK_WIN_POS_CENTER_ALWAYS =    3,
		GTK_WIN_POS_CENTER_ON_PARENT = 4,
	}
	public enum GtkWindowType : uint {
		GTK_WINDOW_TOPLEVEL = 0,
		GTK_WINDOW_POPUP =    1,
	}
	public enum GtkWrapMode : uint {
		GTK_WRAP_NONE =      0,
		GTK_WRAP_CHAR =      1,
		GTK_WRAP_WORD =      2,
		GTK_WRAP_WORD_CHAR = 3,
	}
	public partial struct _GtkTextLayout {
	}
	[ExplicitSize( Size = 272 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAboutDialog : GtkDialog {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public Functors.Func<GtkAboutDialog*, sbyte*, Boolean32> _activate_link;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 264 )]
		public void* _private_data;
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAccelGroup : GObject {
		[ExplicitSize( Size = 176 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkAccelGroup*, uint, GdkModifierType, GClosure*> _accel_changed;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public uint _lock_count;
		[ExplicitOffset( Offset = 28 )]
		public GdkModifierType _modifier_mask;
		[ExplicitOffset( Offset = 32 )]
		public GSList* _acceleratables;
		[ExplicitOffset( Offset = 40 )]
		public uint _n_accels;
		[ExplicitOffset( Offset = 48 )]
		public GtkAccelGroupEntry* _priv_accels;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAccelGroupEntry {
		[ExplicitOffset( Offset = 0 )]
		public GtkAccelKey key;
		[ExplicitOffset( Offset = 16 )]
		public GClosure* closure;
		[ExplicitOffset( Offset = 24 )]
		public uint accel_path_quark;
	}
	[ExplicitSize( Size = 12 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkAccelKey {
		[ExplicitOffset( Offset = 0 )]
		public uint accel_key;
		[ExplicitOffset( Offset = 4 )]
		public GdkModifierType accel_mods;
		public uint accel_flags { get { return cast<byte*>( &this )[8] | cast<ushort>( cast<byte*>( &this )[9] ) << 8; } set { cast<byte*>( &this )[8] = cast<byte>( value ); cast<byte*>( &this )[9] = cast<byte>( value >> 8 ); } }
	}
	[ExplicitSize( Size = 232 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAccelLabel : GtkLabel {
		[ExplicitSize( Size = 872 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 776 )]
			public sbyte* _signal_quote1;
			[ExplicitOffset( Offset = 784 )]
			public sbyte* _signal_quote2;
			[ExplicitOffset( Offset = 792 )]
			public CUtf8String _mod_name_shift;
			[ExplicitOffset( Offset = 800 )]
			public CUtf8String _mod_name_control;
			[ExplicitOffset( Offset = 808 )]
			public CUtf8String _mod_name_alt;
			[ExplicitOffset( Offset = 816 )]
			public sbyte* _mod_separator;
			[ExplicitOffset( Offset = 824 )]
			public sbyte* _accel_seperator;
			public bool _latin1_to_char { get { return ( cast<byte*>( &this )[832] & 1 ) != 0; } set { cast<byte*>( &this )[832] &= 254; cast<byte*>( &this )[832] |= cast<byte>( value ) << 0; } }
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 184 )]
		public uint _gtk_reserved;
		[ExplicitOffset( Offset = 188 )]
		public uint _accel_padding;
		[ExplicitOffset( Offset = 192 )]
		public GtkWidget* _accel_widget;
		[ExplicitOffset( Offset = 200 )]
		public GClosure* _accel_closure;
		[ExplicitOffset( Offset = 208 )]
		public GtkAccelGroup* _accel_group;
		[ExplicitOffset( Offset = 216 )]
		public sbyte* _accel_string;
		[ExplicitOffset( Offset = 224 )]
		public ushort _accel_string_width;
	}
	public partial struct GtkAccelMap {
	}
	public partial struct GtkAccelMapClass {
	}
	[ExplicitSize( Size = 80 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAccessible : AtkObject {
		[ExplicitSize( Size = 392 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 352 )]
			public Functors.Action<GtkAccessible*> _connect_widget_destroyed;
			[ExplicitOffset( Offset = 360 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 368 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 376 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 384 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 72 )]
		public GtkWidget* _widget;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAction : GObject {
		[ExplicitSize( Size = 224 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkAction*> _activate;
			[ExplicitOffset( Offset = 144 )]
			public uintptr _menu_item_type;
			[ExplicitOffset( Offset = 152 )]
			public uintptr _toolbar_item_type;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Func<GtkAction*, GtkWidget*> _create_menu_item;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Func<GtkAction*, GtkWidget*> _create_tool_item;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkAction*, GtkWidget*> _connect_proxy;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action<GtkAction*, GtkWidget*> _disconnect_proxy;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Func<GtkAction*, GtkWidget*> _create_menu;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkActionPrivate* _private_data;
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkActionEntry {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String name;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* stock_id;
		[ExplicitOffset( Offset = 16 )]
		public sbyte* label;
		[ExplicitOffset( Offset = 24 )]
		public sbyte* accelerator;
		[ExplicitOffset( Offset = 32 )]
		public sbyte* tooltip;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action callback;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkActionGroup : GObject {
		[ExplicitSize( Size = 176 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Func<GtkActionGroup*, sbyte*, GtkAction*> _get_action;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkActionGroupPrivate* _private_data;
	}
	public partial struct GtkActionGroupPrivate {
	}
	public partial struct GtkActionPrivate {
	}
	public partial struct GtkActivatable {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkActivatableIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkActivatable*, GtkAction*, sbyte*> update;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GtkActivatable*, GtkAction*> sync_action_properties;
	}
	[ExplicitSize( Size = 80 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAdjustment : GtkObject {
		[ExplicitSize( Size = 208 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkAdjustment*> _changed;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkAdjustment*> _value_changed;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 32 )]
		public double _lower;
		[ExplicitOffset( Offset = 40 )]
		public double _upper;
		[ExplicitOffset( Offset = 48 )]
		public double _value;
		[ExplicitOffset( Offset = 56 )]
		public double _step_increment;
		[ExplicitOffset( Offset = 64 )]
		public double _page_increment;
		[ExplicitOffset( Offset = 72 )]
		public double _page_size;
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAlignment : GtkBin {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 120 )]
		public float _xalign;
		[ExplicitOffset( Offset = 124 )]
		public float _yalign;
		[ExplicitOffset( Offset = 128 )]
		public float _xscale;
		[ExplicitOffset( Offset = 132 )]
		public float _yscale;
	}
	public partial struct GtkAlignmentPrivate {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkArg {
		[ExplicitOffset( Offset = 0 )]
		public uintptr type;
		[ExplicitOffset( Offset = 8 )]
		public CUtf8String name;
		[ExplicitOffset( Offset = 16 )]
		public UnnamedUnion_9CDC5A99 d;
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkArrow : GtkMisc {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public short _arrow_type;
		[ExplicitOffset( Offset = 114 )]
		public short _shadow_type;
	}
	[ExplicitSize( Size = 192 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAspectFrame : GtkFrame {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 160 )]
		public float _xalign;
		[ExplicitOffset( Offset = 164 )]
		public float _yalign;
		[ExplicitOffset( Offset = 168 )]
		public float _ratio;
		[ExplicitOffset( Offset = 172 )]
		public Boolean32 _obey_child;
		[ExplicitOffset( Offset = 176 )]
		public GdkRectangle _center_allocation;
	}
	[ExplicitSize( Size = 296 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkAssistant : GtkWindow {
		[ExplicitSize( Size = 976 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkAssistant*, GtkWidget*> _prepare;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action<GtkAssistant*> _apply;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Action<GtkAssistant*> _close;
			[ExplicitOffset( Offset = 928 )]
			public Functors.Action<GtkAssistant*> _cancel;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved5;
		}
		[ExplicitOffset( Offset = 240 )]
		public GtkWidget* _cancel;
		[ExplicitOffset( Offset = 248 )]
		public GtkWidget* _forward;
		[ExplicitOffset( Offset = 256 )]
		public GtkWidget* _back;
		[ExplicitOffset( Offset = 264 )]
		public GtkWidget* _apply;
		[ExplicitOffset( Offset = 272 )]
		public GtkWidget* _close;
		[ExplicitOffset( Offset = 280 )]
		public GtkWidget* _last;
		[ExplicitOffset( Offset = 288 )]
		public GtkAssistantPrivate* _priv;
	}
	public partial struct GtkAssistantPrivate {
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBin : GtkContainer {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkWidget* _child;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBindingArg {
		[ExplicitOffset( Offset = 0 )]
		public uintptr arg_type;
		[ExplicitOffset( Offset = 8 )]
		public UnnamedUnion_6ABCD50B d;
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBindingEntry {
		[ExplicitOffset( Offset = 0 )]
		public uint keyval;
		[ExplicitOffset( Offset = 4 )]
		public GdkModifierType modifiers;
		[ExplicitOffset( Offset = 8 )]
		public GtkBindingSet* binding_set;
		public bool destroyed { get { return ( cast<byte*>( &this )[16] & 1 ) != 0; } set { cast<byte*>( &this )[16] &= 254; cast<byte*>( &this )[16] |= cast<byte>( value ) << 0; } }
		public bool in_emission { get { return ( cast<byte*>( &this )[16] & 2 ) != 0; } set { cast<byte*>( &this )[16] &= 253; cast<byte*>( &this )[16] |= cast<byte>( value ) << 1; } }
		public bool marks_unbound { get { return ( cast<byte*>( &this )[16] & 4 ) != 0; } set { cast<byte*>( &this )[16] &= 251; cast<byte*>( &this )[16] |= cast<byte>( value ) << 2; } }
		[ExplicitOffset( Offset = 24 )]
		public GtkBindingEntry* set_next;
		[ExplicitOffset( Offset = 32 )]
		public GtkBindingEntry* hash_next;
		[ExplicitOffset( Offset = 40 )]
		public GtkBindingSignal* signals;
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBindingSet {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String set_name;
		[ExplicitOffset( Offset = 8 )]
		public int priority;
		[ExplicitOffset( Offset = 16 )]
		public GSList* widget_path_pspecs;
		[ExplicitOffset( Offset = 24 )]
		public GSList* widget_class_pspecs;
		[ExplicitOffset( Offset = 32 )]
		public GSList* class_branch_pspecs;
		[ExplicitOffset( Offset = 40 )]
		public GtkBindingEntry* entries;
		[ExplicitOffset( Offset = 48 )]
		public GtkBindingEntry* current;
		public bool parsed { get { return ( cast<byte*>( &this )[56] & 1 ) != 0; } set { cast<byte*>( &this )[56] &= 254; cast<byte*>( &this )[56] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBindingSignal {
		[ExplicitOffset( Offset = 0 )]
		public GtkBindingSignal* next;
		[ExplicitOffset( Offset = 8 )]
		public CUtf8String signal_name;
		[ExplicitOffset( Offset = 16 )]
		public uint n_args;
		[ExplicitOffset( Offset = 24 )]
		public GtkBindingArg* args;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkBorder {
		[ExplicitOffset( Offset = 0 )]
		public int left;
		[ExplicitOffset( Offset = 4 )]
		public int right;
		[ExplicitOffset( Offset = 8 )]
		public int top;
		[ExplicitOffset( Offset = 12 )]
		public int bottom;
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBox : GtkContainer {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public GList* _children;
		[ExplicitOffset( Offset = 120 )]
		public short _spacing;
		public bool _homogeneous { get { return ( cast<byte*>( &this )[122] & 1 ) != 0; } set { cast<byte*>( &this )[122] &= 254; cast<byte*>( &this )[122] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBoxChild {
		[ExplicitOffset( Offset = 0 )]
		public GtkWidget* widget;
		[ExplicitOffset( Offset = 8 )]
		public ushort padding;
		public bool expand { get { return ( cast<byte*>( &this )[10] & 1 ) != 0; } set { cast<byte*>( &this )[10] &= 254; cast<byte*>( &this )[10] |= cast<byte>( value ) << 0; } }
		public bool fill { get { return ( cast<byte*>( &this )[10] & 2 ) != 0; } set { cast<byte*>( &this )[10] &= 253; cast<byte*>( &this )[10] |= cast<byte>( value ) << 1; } }
		public bool pack { get { return ( cast<byte*>( &this )[10] & 4 ) != 0; } set { cast<byte*>( &this )[10] &= 251; cast<byte*>( &this )[10] |= cast<byte>( value ) << 2; } }
		public bool is_secondary { get { return ( cast<byte*>( &this )[10] & 8 ) != 0; } set { cast<byte*>( &this )[10] &= 247; cast<byte*>( &this )[10] |= cast<byte>( value ) << 3; } }
	}
	public partial struct GtkBuildable {
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBuildableIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkBuildable*, sbyte*> set_name;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Func<GtkBuildable*, sbyte*> get_name;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkBuildable*, GtkBuilder*, GObject*, sbyte*> add_child;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action<GtkBuildable*, GtkBuilder*, sbyte*, GValue*> set_buildable_property;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Func<GtkBuildable*, GtkBuilder*, sbyte*, GObject*> construct_child;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Func<GtkBuildable*, GtkBuilder*, GObject*, sbyte*, GMarkupParser*, void**, Boolean32> custom_tag_start;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Action<GtkBuildable*, GtkBuilder*, GObject*, sbyte*, void**> custom_tag_end;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Action<GtkBuildable*, GtkBuilder*, GObject*, sbyte*, void*> custom_finished;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Action<GtkBuildable*, GtkBuilder*> parser_finished;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Func<GtkBuildable*, GtkBuilder*, sbyte*, GObject*> get_internal_child;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkBuilder : GObject {
		[ExplicitSize( Size = 208 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Func<GtkBuilder*, sbyte*, uintptr> _get_type_from_name;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved6;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action _gtk_reserved7;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action _gtk_reserved8;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkBuilderPrivate* _priv;
	}
	public partial struct GtkBuilderPrivate {
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkButton : GtkBin {
		[ExplicitSize( Size = 904 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkButton*> _pressed;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkButton*> _released;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkButton*> _clicked;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkButton*> _enter;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkButton*> _leave;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkButton*> _activate;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 896 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 120 )]
		public GdkDrawable* _event_window;
		[ExplicitOffset( Offset = 128 )]
		public CUtf8String _label_text;
		[ExplicitOffset( Offset = 136 )]
		public uint _activate_timeout;
		public bool _constructed { get { return ( cast<byte*>( &this )[140] & 1 ) != 0; } set { cast<byte*>( &this )[140] &= 254; cast<byte*>( &this )[140] |= cast<byte>( value ) << 0; } }
		public bool _in_button { get { return ( cast<byte*>( &this )[140] & 2 ) != 0; } set { cast<byte*>( &this )[140] &= 253; cast<byte*>( &this )[140] |= cast<byte>( value ) << 1; } }
		public bool _button_down { get { return ( cast<byte*>( &this )[140] & 4 ) != 0; } set { cast<byte*>( &this )[140] &= 251; cast<byte*>( &this )[140] |= cast<byte>( value ) << 2; } }
		public uint _relief { get { return cast<byte*>( &this )[140] >> 3 & 3; } set { cast<byte*>( &this )[140] &= 231; cast<byte*>( &this )[140] |= ( cast<byte>( value ) & 24 ) << 3; } }
		public bool _use_underline { get { return ( cast<byte*>( &this )[140] & 32 ) != 0; } set { cast<byte*>( &this )[140] &= 223; cast<byte*>( &this )[140] |= cast<byte>( value ) << 5; } }
		public bool _use_stock { get { return ( cast<byte*>( &this )[140] & 64 ) != 0; } set { cast<byte*>( &this )[140] &= 191; cast<byte*>( &this )[140] |= cast<byte>( value ) << 6; } }
		public bool _depressed { get { return ( cast<byte*>( &this )[140] & 128 ) != 0; } set { cast<byte*>( &this )[140] &= 127; cast<byte*>( &this )[140] |= cast<byte>( value ) << 7; } }
		public bool _depress_on_activate { get { return ( cast<byte*>( &this )[141] & 1 ) != 0; } set { cast<byte*>( &this )[141] &= 254; cast<byte*>( &this )[141] |= cast<byte>( value ) << 0; } }
		public bool _focus_on_click { get { return ( cast<byte*>( &this )[141] & 2 ) != 0; } set { cast<byte*>( &this )[141] &= 253; cast<byte*>( &this )[141] |= cast<byte>( value ) << 1; } }
		public uint ConnectSignalActivate<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "activate", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalClicked<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "clicked", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalEnter<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "enter", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalLeave<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "leave", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalPressed<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "pressed", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalReleased<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "released", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkButtonBox : GtkBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 128 )]
		public int _child_min_width;
		[ExplicitOffset( Offset = 132 )]
		public int _child_min_height;
		[ExplicitOffset( Offset = 136 )]
		public int _child_ipad_x;
		[ExplicitOffset( Offset = 140 )]
		public int _child_ipad_y;
		[ExplicitOffset( Offset = 144 )]
		public GtkButtonBoxStyle _layout_style;
	}
	[ExplicitSize( Size = 1072 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCalendar : GtkWidget {
		[ExplicitSize( Size = 776 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkCalendar*> _month_changed;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkCalendar*> _day_selected;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkCalendar*> _day_selected_double_click;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action<GtkCalendar*> _prev_month;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action<GtkCalendar*> _next_month;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action<GtkCalendar*> _prev_year;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Action<GtkCalendar*> _next_year;
		}
		[ExplicitOffset( Offset = 96 )]
		public GtkStyle* _header_style;
		[ExplicitOffset( Offset = 104 )]
		public GtkStyle* _label_style;
		[ExplicitOffset( Offset = 112 )]
		public int _month;
		[ExplicitOffset( Offset = 116 )]
		public int _year;
		[ExplicitOffset( Offset = 120 )]
		public int _selected_day;
		[ExplicitOffset( Offset = 124 )]
		public int[7][6] _day_month;
		[ExplicitOffset( Offset = 292 )]
		public int[7][6] _day;
		[ExplicitOffset( Offset = 460 )]
		public int _num_marked_dates;
		[ExplicitOffset( Offset = 464 )]
		public int[31] _marked_date;
		[ExplicitOffset( Offset = 588 )]
		public GtkCalendarDisplayOptions _display_flags;
		[ExplicitOffset( Offset = 592 )]
		public GdkColor[31] _marked_date_color;
		[ExplicitOffset( Offset = 968 )]
		public GdkGC* _gc;
		[ExplicitOffset( Offset = 976 )]
		public GdkGC* _xor_gc;
		[ExplicitOffset( Offset = 984 )]
		public int _focus_row;
		[ExplicitOffset( Offset = 988 )]
		public int _focus_col;
		[ExplicitOffset( Offset = 992 )]
		public int _highlight_row;
		[ExplicitOffset( Offset = 996 )]
		public int _highlight_col;
		[ExplicitOffset( Offset = 1000 )]
		public GtkCalendarPrivate* _priv;
		[ExplicitOffset( Offset = 1008 )]
		public sbyte[32] _grow_space;
		[ExplicitOffset( Offset = 1040 )]
		public Functors.Action _gtk_reserved1;
		[ExplicitOffset( Offset = 1048 )]
		public Functors.Action _gtk_reserved2;
		[ExplicitOffset( Offset = 1056 )]
		public Functors.Action _gtk_reserved3;
		[ExplicitOffset( Offset = 1064 )]
		public Functors.Action _gtk_reserved4;
	}
	public partial struct GtkCalendarPrivate {
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCell {
		[ExplicitOffset( Offset = 0 )]
		public GtkCellType type;
		[ExplicitOffset( Offset = 4 )]
		public short vertical;
		[ExplicitOffset( Offset = 6 )]
		public short horizontal;
		[ExplicitOffset( Offset = 8 )]
		public GtkStyle* style;
		[ExplicitOffset( Offset = 16 )]
		public UnnamedUnion_3395A966 u;
	}
	public partial struct GtkCellEditable {
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellEditableIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkCellEditable*> editing_done;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GtkCellEditable*> remove_widget;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkCellEditable*, GdkEvent*> start_editing;
	}
	public partial struct GtkCellLayout {
	}
	[ExplicitSize( Size = 80 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellLayoutIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkCellLayout*, GtkCellRenderer*, Boolean32> pack_start;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GtkCellLayout*, GtkCellRenderer*, Boolean32> pack_end;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkCellLayout*> clear;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action<GtkCellLayout*, GtkCellRenderer*, sbyte*, int> add_attribute;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkCellLayout*, GtkCellRenderer*, Functors.Action<GtkCellLayout*, GtkCellRenderer*, GtkTreeModel*, GtkTreeIter*, void*>, void*, Functors.Action<void*>> set_cell_data_func;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Action<GtkCellLayout*, GtkCellRenderer*> clear_attributes;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Action<GtkCellLayout*, GtkCellRenderer*, int> reorder;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Func<GtkCellLayout*, GList*> get_cells;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellPixmap {
		[ExplicitOffset( Offset = 0 )]
		public GtkCellType type;
		[ExplicitOffset( Offset = 4 )]
		public short vertical;
		[ExplicitOffset( Offset = 6 )]
		public short horizontal;
		[ExplicitOffset( Offset = 8 )]
		public GtkStyle* style;
		[ExplicitOffset( Offset = 16 )]
		public GdkDrawable* pixmap;
		[ExplicitOffset( Offset = 24 )]
		public GdkDrawable* mask;
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellPixText {
		[ExplicitOffset( Offset = 0 )]
		public GtkCellType type;
		[ExplicitOffset( Offset = 4 )]
		public short vertical;
		[ExplicitOffset( Offset = 6 )]
		public short horizontal;
		[ExplicitOffset( Offset = 8 )]
		public GtkStyle* style;
		[ExplicitOffset( Offset = 16 )]
		public CUtf8String text;
		[ExplicitOffset( Offset = 24 )]
		public byte spacing;
		[ExplicitOffset( Offset = 32 )]
		public GdkDrawable* pixmap;
		[ExplicitOffset( Offset = 40 )]
		public GdkDrawable* mask;
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRenderer : GtkObject {
		[ExplicitSize( Size = 224 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkCellRenderer*, GtkWidget*, GdkRectangle*, int*, int*, int*, int*> _get_size;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkCellRenderer*, GdkDrawable*, GtkWidget*, GdkRectangle*, GdkRectangle*, GdkRectangle*, GtkCellRendererState> _render;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Func<GtkCellRenderer*, GdkEvent*, GtkWidget*, sbyte*, GdkRectangle*, GdkRectangle*, GtkCellRendererState, Boolean32> _activate;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Func<GtkCellRenderer*, GdkEvent*, GtkWidget*, sbyte*, GdkRectangle*, GdkRectangle*, GtkCellRendererState, GtkCellEditable*> _start_editing;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action<GtkCellRenderer*> _editing_canceled;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action<GtkCellRenderer*, GtkCellEditable*, sbyte*> _editing_started;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action _gtk_reserved2;
		}
		[ExplicitOffset( Offset = 32 )]
		public float _xalign;
		[ExplicitOffset( Offset = 36 )]
		public float _yalign;
		[ExplicitOffset( Offset = 40 )]
		public int _width;
		[ExplicitOffset( Offset = 44 )]
		public int _height;
		[ExplicitOffset( Offset = 48 )]
		public ushort _xpad;
		[ExplicitOffset( Offset = 50 )]
		public ushort _ypad;
		public uint _mode { get { return cast<byte*>( &this )[52] & 3; } set { cast<byte*>( &this )[52] &= 252; cast<byte*>( &this )[52] |= ( cast<byte>( value ) & 3 ); } }
		public bool _visible { get { return ( cast<byte*>( &this )[52] & 4 ) != 0; } set { cast<byte*>( &this )[52] &= 251; cast<byte*>( &this )[52] |= cast<byte>( value ) << 2; } }
		public bool _is_expander { get { return ( cast<byte*>( &this )[52] & 8 ) != 0; } set { cast<byte*>( &this )[52] &= 247; cast<byte*>( &this )[52] |= cast<byte>( value ) << 3; } }
		public bool _is_expanded { get { return ( cast<byte*>( &this )[52] & 16 ) != 0; } set { cast<byte*>( &this )[52] &= 239; cast<byte*>( &this )[52] |= cast<byte>( value ) << 4; } }
		public bool _cell_background_set { get { return ( cast<byte*>( &this )[52] & 32 ) != 0; } set { cast<byte*>( &this )[52] &= 223; cast<byte*>( &this )[52] |= cast<byte>( value ) << 5; } }
		public bool _sensitive { get { return ( cast<byte*>( &this )[52] & 64 ) != 0; } set { cast<byte*>( &this )[52] &= 191; cast<byte*>( &this )[52] |= cast<byte>( value ) << 6; } }
		public bool _editing { get { return ( cast<byte*>( &this )[52] & 128 ) != 0; } set { cast<byte*>( &this )[52] &= 127; cast<byte*>( &this )[52] |= cast<byte>( value ) << 7; } }
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererAccel : GtkCellRendererText {
		[ExplicitSize( Size = 320 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action<GtkCellRendererAccel*, sbyte*, uint, GdkModifierType, uint> _accel_edited;
			[ExplicitOffset( Offset = 272 )]
			public Functors.Action<GtkCellRendererAccel*, sbyte*> _accel_cleared;
			[ExplicitOffset( Offset = 280 )]
			public Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 288 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 296 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 304 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 312 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 120 )]
		public uint _accel_key;
		[ExplicitOffset( Offset = 124 )]
		public GdkModifierType _accel_mods;
		[ExplicitOffset( Offset = 128 )]
		public uint _keycode;
		[ExplicitOffset( Offset = 132 )]
		public GtkCellRendererAccelMode _accel_mode;
		[ExplicitOffset( Offset = 136 )]
		public GtkWidget* _edit_widget;
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _grab_widget;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _sizing_label;
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererCombo : GtkCellRendererText {
		[ExplicitSize( Size = 264 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkTreeModel* _model;
		[ExplicitOffset( Offset = 128 )]
		public int _text_column;
		[ExplicitOffset( Offset = 132 )]
		public Boolean32 _has_entry;
		[ExplicitOffset( Offset = 136 )]
		public uint _focus_out_id;
	}
	[ExplicitSize( Size = 80 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererPixbuf : GtkCellRenderer {
		[ExplicitSize( Size = 256 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 224 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 232 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 56 )]
		public GdkPixbuf* _pixbuf;
		[ExplicitOffset( Offset = 64 )]
		public GdkPixbuf* _pixbuf_expander_open;
		[ExplicitOffset( Offset = 72 )]
		public GdkPixbuf* _pixbuf_expander_closed;
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererProgress : GtkCellRenderer {
		[ExplicitSize( Size = 256 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 224 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 232 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 56 )]
		public GtkCellRendererProgressPrivate* _priv;
	}
	public partial struct GtkCellRendererProgressPrivate {
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererSpin : GtkCellRendererText {
		[ExplicitSize( Size = 264 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererSpinner : GtkCellRenderer {
		[ExplicitSize( Size = 256 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 224 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 232 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 56 )]
		public GtkCellRendererSpinnerPrivate* _priv;
	}
	public partial struct GtkCellRendererSpinnerPrivate {
	}
	public partial struct GtkCellRendererSpinPrivate {
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererText : GtkCellRenderer {
		[ExplicitSize( Size = 264 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action<GtkCellRendererText*, sbyte*, sbyte*> _edited;
			[ExplicitOffset( Offset = 232 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 240 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 56 )]
		public CUtf8String _text;
		[ExplicitOffset( Offset = 64 )]
		public PangoFontDescription* _font;
		[ExplicitOffset( Offset = 72 )]
		public double _font_scale;
		[ExplicitOffset( Offset = 80 )]
		public PangoColor _foreground;
		[ExplicitOffset( Offset = 86 )]
		public PangoColor _background;
		[ExplicitOffset( Offset = 96 )]
		public PangoAttrList* _extra_attrs;
		[ExplicitOffset( Offset = 104 )]
		public PangoUnderline _underline_style;
		[ExplicitOffset( Offset = 108 )]
		public int _rise;
		[ExplicitOffset( Offset = 112 )]
		public int _fixed_height_rows;
		public bool _strikethrough { get { return ( cast<byte*>( &this )[116] & 1 ) != 0; } set { cast<byte*>( &this )[116] &= 254; cast<byte*>( &this )[116] |= cast<byte>( value ) << 0; } }
		public bool _editable { get { return ( cast<byte*>( &this )[116] & 2 ) != 0; } set { cast<byte*>( &this )[116] &= 253; cast<byte*>( &this )[116] |= cast<byte>( value ) << 1; } }
		public bool _scale_set { get { return ( cast<byte*>( &this )[116] & 4 ) != 0; } set { cast<byte*>( &this )[116] &= 251; cast<byte*>( &this )[116] |= cast<byte>( value ) << 2; } }
		public bool _foreground_set { get { return ( cast<byte*>( &this )[116] & 8 ) != 0; } set { cast<byte*>( &this )[116] &= 247; cast<byte*>( &this )[116] |= cast<byte>( value ) << 3; } }
		public bool _background_set { get { return ( cast<byte*>( &this )[116] & 16 ) != 0; } set { cast<byte*>( &this )[116] &= 239; cast<byte*>( &this )[116] |= cast<byte>( value ) << 4; } }
		public bool _underline_set { get { return ( cast<byte*>( &this )[116] & 32 ) != 0; } set { cast<byte*>( &this )[116] &= 223; cast<byte*>( &this )[116] |= cast<byte>( value ) << 5; } }
		public bool _rise_set { get { return ( cast<byte*>( &this )[116] & 64 ) != 0; } set { cast<byte*>( &this )[116] &= 191; cast<byte*>( &this )[116] |= cast<byte>( value ) << 6; } }
		public bool _strikethrough_set { get { return ( cast<byte*>( &this )[116] & 128 ) != 0; } set { cast<byte*>( &this )[116] &= 127; cast<byte*>( &this )[116] |= cast<byte>( value ) << 7; } }
		public bool _editable_set { get { return ( cast<byte*>( &this )[117] & 1 ) != 0; } set { cast<byte*>( &this )[117] &= 254; cast<byte*>( &this )[117] |= cast<byte>( value ) << 0; } }
		public bool _calc_fixed_height { get { return ( cast<byte*>( &this )[117] & 2 ) != 0; } set { cast<byte*>( &this )[117] &= 253; cast<byte*>( &this )[117] |= cast<byte>( value ) << 1; } }
		public uint ConnectSignalEdited<TData>( Functors.Action<thistype*, CUtf8String, CUtf8String, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "edited", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellRendererToggle : GtkCellRenderer {
		[ExplicitSize( Size = 264 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action<GtkCellRendererToggle*, sbyte*> _toggled;
			[ExplicitOffset( Offset = 232 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 240 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action _gtk_reserved4;
		}
		public bool _active { get { return ( cast<byte*>( &this )[56] & 1 ) != 0; } set { cast<byte*>( &this )[56] &= 254; cast<byte*>( &this )[56] |= cast<byte>( value ) << 0; } }
		public bool _activatable { get { return ( cast<byte*>( &this )[56] & 2 ) != 0; } set { cast<byte*>( &this )[56] &= 253; cast<byte*>( &this )[56] |= cast<byte>( value ) << 1; } }
		public bool _radio { get { return ( cast<byte*>( &this )[56] & 4 ) != 0; } set { cast<byte*>( &this )[56] &= 251; cast<byte*>( &this )[56] |= cast<byte>( value ) << 2; } }
		public uint ConnectSignalToggled<TData>( Functors.Action<thistype*, CUtf8String, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "toggled", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellText {
		[ExplicitOffset( Offset = 0 )]
		public GtkCellType type;
		[ExplicitOffset( Offset = 4 )]
		public short vertical;
		[ExplicitOffset( Offset = 6 )]
		public short horizontal;
		[ExplicitOffset( Offset = 8 )]
		public GtkStyle* style;
		[ExplicitOffset( Offset = 16 )]
		public CUtf8String text;
	}
	[ExplicitSize( Size = 104 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellView : GtkWidget {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 96 )]
		public GtkCellViewPrivate* _priv;
	}
	public partial struct GtkCellViewPrivate {
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCellWidget {
		[ExplicitOffset( Offset = 0 )]
		public GtkCellType type;
		[ExplicitOffset( Offset = 4 )]
		public short vertical;
		[ExplicitOffset( Offset = 6 )]
		public short horizontal;
		[ExplicitOffset( Offset = 8 )]
		public GtkStyle* style;
		[ExplicitOffset( Offset = 16 )]
		public GtkWidget* widget;
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCheckButton : GtkToggleButton {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 944 )]
			public Functors.Action<GtkCheckButton*, GdkRectangle*> _draw_indicator;
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved4;
		}
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCheckMenuItem : GtkMenuItem {
		[ExplicitSize( Size = 1000 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public Functors.Action<GtkCheckMenuItem*> _toggled;
			[ExplicitOffset( Offset = 960 )]
			public Functors.Action<GtkCheckMenuItem*, GdkRectangle*> _draw_indicator;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 984 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 992 )]
			public new Functors.Action _gtk_reserved4;
		}
		public bool _active { get { return ( cast<byte*>( &this )[160] & 1 ) != 0; } set { cast<byte*>( &this )[160] &= 254; cast<byte*>( &this )[160] |= cast<byte>( value ) << 0; } }
		public bool _always_show_toggle { get { return ( cast<byte*>( &this )[160] & 2 ) != 0; } set { cast<byte*>( &this )[160] &= 253; cast<byte*>( &this )[160] |= cast<byte>( value ) << 1; } }
		public bool _inconsistent { get { return ( cast<byte*>( &this )[160] & 4 ) != 0; } set { cast<byte*>( &this )[160] &= 251; cast<byte*>( &this )[160] |= cast<byte>( value ) << 2; } }
		public bool _draw_as_radio { get { return ( cast<byte*>( &this )[160] & 8 ) != 0; } set { cast<byte*>( &this )[160] &= 247; cast<byte*>( &this )[160] |= cast<byte>( value ) << 3; } }
	}
	public partial struct GtkClipboard {
	}
	[ExplicitSize( Size = 424 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCList : GtkContainer {
		[ExplicitSize( Size = 1056 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkCList*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkCList*> _refresh;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkCList*, int, int, GdkEvent*> _select_row;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkCList*, int, int, GdkEvent*> _unselect_row;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkCList*, int, int> _row_move;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkCList*, int> _click_column;
			[ExplicitOffset( Offset = 872 )]
			public Functors.Action<GtkCList*, int, int> _resize_column;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Action<GtkCList*> _toggle_focus_row;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Action<GtkCList*> _select_all;
			[ExplicitOffset( Offset = 896 )]
			public Functors.Action<GtkCList*> _unselect_all;
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkCList*> _undo_selection;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action<GtkCList*> _start_selection;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Action<GtkCList*> _end_selection;
			[ExplicitOffset( Offset = 928 )]
			public Functors.Action<GtkCList*, GtkScrollType, float, Boolean32> _extend_selection;
			[ExplicitOffset( Offset = 936 )]
			public Functors.Action<GtkCList*, GtkScrollType, float> _scroll_horizontal;
			[ExplicitOffset( Offset = 944 )]
			public Functors.Action<GtkCList*, GtkScrollType, float> _scroll_vertical;
			[ExplicitOffset( Offset = 952 )]
			public Functors.Action<GtkCList*> _toggle_add_mode;
			[ExplicitOffset( Offset = 960 )]
			public Functors.Action<GtkCList*> _abort_column_resize;
			[ExplicitOffset( Offset = 968 )]
			public Functors.Action<GtkCList*, GdkEvent*> _resync_selection;
			[ExplicitOffset( Offset = 976 )]
			public Functors.Func<GtkCList*, int, GList*, GList*> _selection_find;
			[ExplicitOffset( Offset = 984 )]
			public Functors.Action<GtkCList*, GdkRectangle*, int, GtkCListRow*> _draw_row;
			[ExplicitOffset( Offset = 992 )]
			public Functors.Action<GtkCList*, GtkCListRow*, int, GtkCListDragPos> _draw_drag_highlight;
			[ExplicitOffset( Offset = 1000 )]
			public Functors.Action<GtkCList*> _clear;
			[ExplicitOffset( Offset = 1008 )]
			public Functors.Action<GtkCList*, int> _fake_unselect_all;
			[ExplicitOffset( Offset = 1016 )]
			public Functors.Action<GtkCList*> _sort_list;
			[ExplicitOffset( Offset = 1024 )]
			public Functors.Func<GtkCList*, int, sbyte**, int> _insert_row;
			[ExplicitOffset( Offset = 1032 )]
			public Functors.Action<GtkCList*, int> _remove_row;
			[ExplicitOffset( Offset = 1040 )]
			public Functors.Action<GtkCList*, GtkCListRow*, int, GtkCellType, sbyte*, byte, GdkDrawable*, GdkDrawable*> _set_cell_contents;
			[ExplicitOffset( Offset = 1048 )]
			public Functors.Action<GtkCList*, GtkCListRow*, int, GtkRequisition*> _cell_size_request;
		}
		[ExplicitOffset( Offset = 112 )]
		public new ushort _flags;
		[ExplicitOffset( Offset = 120 )]
		public void* _reserved1;
		[ExplicitOffset( Offset = 128 )]
		public void* _reserved2;
		[ExplicitOffset( Offset = 136 )]
		public uint _freeze_count;
		[ExplicitOffset( Offset = 140 )]
		public GdkRectangle _internal_allocation;
		[ExplicitOffset( Offset = 156 )]
		public int _rows;
		[ExplicitOffset( Offset = 160 )]
		public int _row_height;
		[ExplicitOffset( Offset = 168 )]
		public GList* _row_list;
		[ExplicitOffset( Offset = 176 )]
		public GList* _row_list_end;
		[ExplicitOffset( Offset = 184 )]
		public int _columns;
		[ExplicitOffset( Offset = 188 )]
		public GdkRectangle _column_title_area;
		[ExplicitOffset( Offset = 208 )]
		public GdkDrawable* _title_window;
		[ExplicitOffset( Offset = 216 )]
		public GtkCListColumn* _column;
		[ExplicitOffset( Offset = 224 )]
		public GdkDrawable* _clist_window;
		[ExplicitOffset( Offset = 232 )]
		public int _clist_window_width;
		[ExplicitOffset( Offset = 236 )]
		public int _clist_window_height;
		[ExplicitOffset( Offset = 240 )]
		public int _hoffset;
		[ExplicitOffset( Offset = 244 )]
		public int _voffset;
		[ExplicitOffset( Offset = 248 )]
		public GtkShadowType _shadow_type;
		[ExplicitOffset( Offset = 252 )]
		public GtkSelectionMode _selection_mode;
		[ExplicitOffset( Offset = 256 )]
		public GList* _selection;
		[ExplicitOffset( Offset = 264 )]
		public GList* _selection_end;
		[ExplicitOffset( Offset = 272 )]
		public GList* _undo_selection;
		[ExplicitOffset( Offset = 280 )]
		public GList* _undo_unselection;
		[ExplicitOffset( Offset = 288 )]
		public int _undo_anchor;
		[ExplicitOffset( Offset = 292 )]
		public byte[5] _button_actions;
		[ExplicitOffset( Offset = 297 )]
		public byte _drag_button;
		[ExplicitOffset( Offset = 300 )]
		public GtkCListCellInfo _click_cell;
		[ExplicitOffset( Offset = 312 )]
		public GtkAdjustment* _hadjustment;
		[ExplicitOffset( Offset = 320 )]
		public GtkAdjustment* _vadjustment;
		[ExplicitOffset( Offset = 328 )]
		public GdkGC* _xor_gc;
		[ExplicitOffset( Offset = 336 )]
		public GdkGC* _fg_gc;
		[ExplicitOffset( Offset = 344 )]
		public GdkGC* _bg_gc;
		[ExplicitOffset( Offset = 352 )]
		public GdkCursor* _cursor_drag;
		[ExplicitOffset( Offset = 360 )]
		public int _x_drag;
		[ExplicitOffset( Offset = 364 )]
		public int _focus_row;
		[ExplicitOffset( Offset = 368 )]
		public int _focus_header_column;
		[ExplicitOffset( Offset = 372 )]
		public int _anchor;
		[ExplicitOffset( Offset = 376 )]
		public GtkStateType _anchor_state;
		[ExplicitOffset( Offset = 380 )]
		public int _drag_pos;
		[ExplicitOffset( Offset = 384 )]
		public int _htimer;
		[ExplicitOffset( Offset = 388 )]
		public int _vtimer;
		[ExplicitOffset( Offset = 392 )]
		public GtkSortType _sort_type;
		[ExplicitOffset( Offset = 400 )]
		public Functors.Func<GtkCList*, void*, void*, int> _compare;
		[ExplicitOffset( Offset = 408 )]
		public int _sort_column;
		[ExplicitOffset( Offset = 412 )]
		public int _drag_highlight_row;
		[ExplicitOffset( Offset = 416 )]
		public GtkCListDragPos _drag_highlight_pos;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkCListCellInfo {
		[ExplicitOffset( Offset = 0 )]
		public int row;
		[ExplicitOffset( Offset = 4 )]
		public int column;
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCListColumn {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* title;
		[ExplicitOffset( Offset = 8 )]
		public GdkRectangle area;
		[ExplicitOffset( Offset = 24 )]
		public GtkWidget* button;
		[ExplicitOffset( Offset = 32 )]
		public GdkDrawable* window;
		[ExplicitOffset( Offset = 40 )]
		public int width;
		[ExplicitOffset( Offset = 44 )]
		public int min_width;
		[ExplicitOffset( Offset = 48 )]
		public int max_width;
		[ExplicitOffset( Offset = 52 )]
		public GtkJustification justification;
		public bool visible { get { return ( cast<byte*>( &this )[56] & 1 ) != 0; } set { cast<byte*>( &this )[56] &= 254; cast<byte*>( &this )[56] |= cast<byte>( value ) << 0; } }
		public bool width_set { get { return ( cast<byte*>( &this )[56] & 2 ) != 0; } set { cast<byte*>( &this )[56] &= 253; cast<byte*>( &this )[56] |= cast<byte>( value ) << 1; } }
		public bool resizeable { get { return ( cast<byte*>( &this )[56] & 4 ) != 0; } set { cast<byte*>( &this )[56] &= 251; cast<byte*>( &this )[56] |= cast<byte>( value ) << 2; } }
		public bool auto_resize { get { return ( cast<byte*>( &this )[56] & 8 ) != 0; } set { cast<byte*>( &this )[56] &= 247; cast<byte*>( &this )[56] |= cast<byte>( value ) << 3; } }
		public bool button_passive { get { return ( cast<byte*>( &this )[56] & 16 ) != 0; } set { cast<byte*>( &this )[56] &= 239; cast<byte*>( &this )[56] |= cast<byte>( value ) << 4; } }
	}
	[ExplicitSize( Size = 12 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkCListDestInfo {
		[ExplicitOffset( Offset = 0 )]
		public GtkCListCellInfo cell;
		[ExplicitOffset( Offset = 8 )]
		public GtkCListDragPos insert_pos;
	}
	[ExplicitSize( Size = 72 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCListRow {
		[ExplicitOffset( Offset = 0 )]
		public GtkCell* cell;
		[ExplicitOffset( Offset = 8 )]
		public GtkStateType state;
		[ExplicitOffset( Offset = 12 )]
		public GdkColor foreground;
		[ExplicitOffset( Offset = 24 )]
		public GdkColor background;
		[ExplicitOffset( Offset = 40 )]
		public GtkStyle* style;
		[ExplicitOffset( Offset = 48 )]
		public void* data;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Action<void*> destroy;
		public bool fg_set { get { return ( cast<byte*>( &this )[64] & 1 ) != 0; } set { cast<byte*>( &this )[64] &= 254; cast<byte*>( &this )[64] |= cast<byte>( value ) << 0; } }
		public bool bg_set { get { return ( cast<byte*>( &this )[64] & 2 ) != 0; } set { cast<byte*>( &this )[64] &= 253; cast<byte*>( &this )[64] |= cast<byte>( value ) << 1; } }
		public bool selectable { get { return ( cast<byte*>( &this )[64] & 4 ) != 0; } set { cast<byte*>( &this )[64] &= 251; cast<byte*>( &this )[64] |= cast<byte>( value ) << 2; } }
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkColorButton : GtkButton {
		[ExplicitSize( Size = 944 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkColorButton*> _color_set;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 144 )]
		public GtkColorButtonPrivate* _priv;
	}
	public partial struct GtkColorButtonPrivate {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkColorSelection : GtkVBox {
		[ExplicitSize( Size = 864 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkColorSelection*> _color_changed;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public void* _private_data;
	}
	[ExplicitSize( Size = 296 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkColorSelectionDialog : GtkDialog {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkWidget* _colorsel;
		[ExplicitOffset( Offset = 272 )]
		public GtkWidget* _ok_button;
		[ExplicitOffset( Offset = 280 )]
		public GtkWidget* _cancel_button;
		[ExplicitOffset( Offset = 288 )]
		public GtkWidget* _help_button;
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCombo : GtkHBox {
		[ExplicitSize( Size = 856 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _entry;
		[ExplicitOffset( Offset = 136 )]
		public GtkWidget* _button;
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _popup;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _popwin;
		[ExplicitOffset( Offset = 160 )]
		public GtkWidget* _list;
		[ExplicitOffset( Offset = 168 )]
		public uint _entry_change_id;
		[ExplicitOffset( Offset = 172 )]
		public uint _list_change_id;
		public bool _value_in_list { get { return ( cast<byte*>( &this )[176] & 1 ) != 0; } set { cast<byte*>( &this )[176] &= 254; cast<byte*>( &this )[176] |= cast<byte>( value ) << 0; } }
		public bool _ok_if_empty { get { return ( cast<byte*>( &this )[176] & 2 ) != 0; } set { cast<byte*>( &this )[176] &= 253; cast<byte*>( &this )[176] |= cast<byte>( value ) << 1; } }
		public bool _case_sensitive { get { return ( cast<byte*>( &this )[176] & 4 ) != 0; } set { cast<byte*>( &this )[176] &= 251; cast<byte*>( &this )[176] |= cast<byte>( value ) << 2; } }
		public bool _use_arrows { get { return ( cast<byte*>( &this )[176] & 8 ) != 0; } set { cast<byte*>( &this )[176] &= 247; cast<byte*>( &this )[176] |= cast<byte>( value ) << 3; } }
		public bool _use_arrows_always { get { return ( cast<byte*>( &this )[176] & 16 ) != 0; } set { cast<byte*>( &this )[176] &= 239; cast<byte*>( &this )[176] |= cast<byte>( value ) << 4; } }
		[ExplicitOffset( Offset = 178 )]
		public ushort _current_button;
		[ExplicitOffset( Offset = 180 )]
		public uint _activate_id;
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkComboBox : GtkBin {
		[ExplicitSize( Size = 864 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkComboBox*> _changed;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkComboBox*, sbyte*> _get_active_text;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved2;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkComboBoxPrivate* _priv;
		public uint ConnectSignalChanged<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "changed", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalPopup<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "popup", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkComboBoxEntry : GtkComboBox {
		[ExplicitSize( Size = 896 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 128 )]
		public new GtkComboBoxEntryPrivate* _priv;
	}
	public partial struct GtkComboBoxEntryPrivate {
	}
	public partial struct GtkComboBoxPrivate {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkComboBoxText : GtkComboBox {
		[ExplicitSize( Size = 896 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public new GtkComboBoxTextPrivate* _priv;
	}
	public partial struct GtkComboBoxTextPrivate {
	}
	[ExplicitSize( Size = 112 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkContainer : GtkWidget {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkContainer*, GtkWidget*> _add;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkContainer*, GtkWidget*> _remove;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkContainer*> _check_resize;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action<GtkContainer*, Boolean32, Functors.Action<GtkWidget*, void*>, void*> _forall;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action<GtkContainer*, GtkWidget*> _set_focus_child;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Func<GtkContainer*, uintptr> _child_type;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Func<GtkContainer*, GtkWidget*, sbyte*> _composite_name;
			[ExplicitOffset( Offset = 776 )]
			public Functors.Action<GtkContainer*, GtkWidget*, uint, GValue*, GParamSpec*> _set_child_property;
			[ExplicitOffset( Offset = 784 )]
			public Functors.Action<GtkContainer*, GtkWidget*, uint, GValue*, GParamSpec*> _get_child_property;
			[ExplicitOffset( Offset = 792 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 800 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 808 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 816 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 96 )]
		public GtkWidget* _focus_child;
		public uint _border_width { get { return cast<byte*>( &this )[104] | cast<ushort>( cast<byte*>( &this )[105] ) << 8; } set { cast<byte*>( &this )[104] = cast<byte>( value ); cast<byte*>( &this )[105] = cast<byte>( value >> 8 ); } }
		public bool _need_resize { get { return ( cast<byte*>( &this )[106] & 1 ) != 0; } set { cast<byte*>( &this )[106] &= 254; cast<byte*>( &this )[106] |= cast<byte>( value ) << 0; } }
		public uint _resize_mode { get { return cast<byte*>( &this )[106] >> 1 & 3; } set { cast<byte*>( &this )[106] &= 249; cast<byte*>( &this )[106] |= ( cast<byte>( value ) & 6 ) << 1; } }
		public bool _reallocate_redraws { get { return ( cast<byte*>( &this )[106] & 8 ) != 0; } set { cast<byte*>( &this )[106] &= 247; cast<byte*>( &this )[106] |= cast<byte>( value ) << 3; } }
		public bool _has_focus_chain { get { return ( cast<byte*>( &this )[106] & 16 ) != 0; } set { cast<byte*>( &this )[106] &= 239; cast<byte*>( &this )[106] |= cast<byte>( value ) << 4; } }
	}
	[ExplicitSize( Size = 456 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCTree : GtkCList {
		[ExplicitSize( Size = 1104 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 1056 )]
			public Functors.Action<GtkCTree*, GtkCTreeNode*, int> _tree_select_row;
			[ExplicitOffset( Offset = 1064 )]
			public Functors.Action<GtkCTree*, GtkCTreeNode*, int> _tree_unselect_row;
			[ExplicitOffset( Offset = 1072 )]
			public Functors.Action<GtkCTree*, GtkCTreeNode*> _tree_expand;
			[ExplicitOffset( Offset = 1080 )]
			public Functors.Action<GtkCTree*, GtkCTreeNode*> _tree_collapse;
			[ExplicitOffset( Offset = 1088 )]
			public Functors.Action<GtkCTree*, GtkCTreeNode*, GtkCTreeNode*, GtkCTreeNode*> _tree_move;
			[ExplicitOffset( Offset = 1096 )]
			public Functors.Action<GtkCTree*, GtkCTreeExpansionType> _change_focus_row_expansion;
		}
		[ExplicitOffset( Offset = 424 )]
		public GdkGC* _lines_gc;
		[ExplicitOffset( Offset = 432 )]
		public int _tree_indent;
		[ExplicitOffset( Offset = 436 )]
		public int _tree_spacing;
		[ExplicitOffset( Offset = 440 )]
		public int _tree_column;
		public uint _line_style { get { return cast<byte*>( &this )[444] & 3; } set { cast<byte*>( &this )[444] &= 252; cast<byte*>( &this )[444] |= ( cast<byte>( value ) & 3 ); } }
		public uint _expander_style { get { return cast<byte*>( &this )[444] >> 2 & 3; } set { cast<byte*>( &this )[444] &= 243; cast<byte*>( &this )[444] |= ( cast<byte>( value ) & 12 ) << 2; } }
		public bool _show_stub { get { return ( cast<byte*>( &this )[444] & 16 ) != 0; } set { cast<byte*>( &this )[444] &= 239; cast<byte*>( &this )[444] |= cast<byte>( value ) << 4; } }
		[ExplicitOffset( Offset = 448 )]
		public Functors.Func<GtkCTree*, GtkCTreeNode*, GtkCTreeNode*, GtkCTreeNode*, Boolean32> _drag_compare;
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCTreeNode {
		[ExplicitOffset( Offset = 0 )]
		public GList list;
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCTreeRow {
		[ExplicitOffset( Offset = 0 )]
		public GtkCListRow row;
		[ExplicitOffset( Offset = 72 )]
		public GtkCTreeNode* parent;
		[ExplicitOffset( Offset = 80 )]
		public GtkCTreeNode* sibling;
		[ExplicitOffset( Offset = 88 )]
		public GtkCTreeNode* children;
		[ExplicitOffset( Offset = 96 )]
		public GdkDrawable* pixmap_closed;
		[ExplicitOffset( Offset = 104 )]
		public GdkDrawable* mask_closed;
		[ExplicitOffset( Offset = 112 )]
		public GdkDrawable* pixmap_opened;
		[ExplicitOffset( Offset = 120 )]
		public GdkDrawable* mask_opened;
		[ExplicitOffset( Offset = 128 )]
		public ushort level;
		public bool is_leaf { get { return ( cast<byte*>( &this )[130] & 1 ) != 0; } set { cast<byte*>( &this )[130] &= 254; cast<byte*>( &this )[130] |= cast<byte>( value ) << 0; } }
		public bool expanded { get { return ( cast<byte*>( &this )[130] & 2 ) != 0; } set { cast<byte*>( &this )[130] &= 253; cast<byte*>( &this )[130] |= cast<byte>( value ) << 1; } }
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkCurve : GtkDrawingArea {
		[ExplicitSize( Size = 792 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action<GtkCurve*> _curve_type_changed;
			[ExplicitOffset( Offset = 760 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 768 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 776 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 784 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 104 )]
		public int _cursor_type;
		[ExplicitOffset( Offset = 108 )]
		public float _min_x;
		[ExplicitOffset( Offset = 112 )]
		public float _max_x;
		[ExplicitOffset( Offset = 116 )]
		public float _min_y;
		[ExplicitOffset( Offset = 120 )]
		public float _max_y;
		[ExplicitOffset( Offset = 128 )]
		public GdkDrawable* _pixmap;
		[ExplicitOffset( Offset = 136 )]
		public GtkCurveType _curve_type;
		[ExplicitOffset( Offset = 140 )]
		public int _height;
		[ExplicitOffset( Offset = 144 )]
		public int _grab_point;
		[ExplicitOffset( Offset = 148 )]
		public int _last;
		[ExplicitOffset( Offset = 152 )]
		public int _num_points;
		[ExplicitOffset( Offset = 160 )]
		public GdkPoint* _point;
		[ExplicitOffset( Offset = 168 )]
		public int _num_ctlpoints;
		[ExplicitOffset( Offset = 176 )]
		public float[2]* _ctlpoint;
	}
	[ExplicitSize( Size = 264 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkDialog : GtkWindow {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkDialog*, int> _response;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action<GtkDialog*> _close;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 240 )]
		public GtkWidget* _vbox;
		[ExplicitOffset( Offset = 248 )]
		public GtkWidget* _action_area;
		[ExplicitOffset( Offset = 256 )]
		public GtkWidget* _separator;
	}
	[ExplicitSize( Size = 4 )]
	[Alignment( Boundary = 2 )]
	public partial struct GtkDitherInfo {
		[Overlapped( Offset = 0 )]
		public ushort[2] s;
		[Overlapped( Offset = 0 )]
		public byte[4] c;
	}
	[ExplicitSize( Size = 104 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkDrawingArea : GtkWidget {
		[ExplicitSize( Size = 752 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 96 )]
		public void* _draw_data;
	}
	public partial struct GtkEditable {
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkEditableClass : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkEditable*, sbyte*, int, int*> insert_text;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GtkEditable*, int, int> delete_text;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkEditable*> changed;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action<GtkEditable*, sbyte*, int, int*> do_insert_text;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkEditable*, int, int> do_delete_text;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Func<GtkEditable*, int, int, sbyte*> get_chars;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Action<GtkEditable*, int, int> set_selection_bounds;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Func<GtkEditable*, int*, int*, Boolean32> get_selection_bounds;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Action<GtkEditable*, int> set_position;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Func<GtkEditable*, int> get_position;
	}
	[ExplicitSize( Size = 208 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkEntry : GtkWidget {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkEntry*, GtkMenu*> _populate_popup;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkEntry*> _activate;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkEntry*, GtkMovementStep, int, Boolean32> _move_cursor;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action<GtkEntry*, sbyte*> _insert_at_cursor;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action<GtkEntry*, GtkDeleteType, int> _delete_from_cursor;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action<GtkEntry*> _backspace;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Action<GtkEntry*> _cut_clipboard;
			[ExplicitOffset( Offset = 776 )]
			public Functors.Action<GtkEntry*> _copy_clipboard;
			[ExplicitOffset( Offset = 784 )]
			public Functors.Action<GtkEntry*> _paste_clipboard;
			[ExplicitOffset( Offset = 792 )]
			public Functors.Action<GtkEntry*> _toggle_overwrite;
			[ExplicitOffset( Offset = 800 )]
			public Functors.Action<GtkEntry*, int*, int*, int*, int*> _get_text_area_size;
			[ExplicitOffset( Offset = 808 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 816 )]
			public Functors.Action _gtk_reserved2;
		}
		[ExplicitOffset( Offset = 96 )]
		public CUtf8String _text;
		public bool _editable { get { return ( cast<byte*>( &this )[104] & 1 ) != 0; } set { cast<byte*>( &this )[104] &= 254; cast<byte*>( &this )[104] |= cast<byte>( value ) << 0; } }
		public bool _visible { get { return ( cast<byte*>( &this )[104] & 2 ) != 0; } set { cast<byte*>( &this )[104] &= 253; cast<byte*>( &this )[104] |= cast<byte>( value ) << 1; } }
		public bool _overwrite_mode { get { return ( cast<byte*>( &this )[104] & 4 ) != 0; } set { cast<byte*>( &this )[104] &= 251; cast<byte*>( &this )[104] |= cast<byte>( value ) << 2; } }
		public bool _in_drag { get { return ( cast<byte*>( &this )[104] & 8 ) != 0; } set { cast<byte*>( &this )[104] &= 247; cast<byte*>( &this )[104] |= cast<byte>( value ) << 3; } }
		[ExplicitOffset( Offset = 106 )]
		public ushort _text_length;
		[ExplicitOffset( Offset = 108 )]
		public ushort _text_max_length;
		[ExplicitOffset( Offset = 112 )]
		public GdkDrawable* _text_area;
		[ExplicitOffset( Offset = 120 )]
		public GtkIMContext* _im_context;
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _popup_menu;
		[ExplicitOffset( Offset = 136 )]
		public int _current_pos;
		[ExplicitOffset( Offset = 140 )]
		public int _selection_bound;
		[ExplicitOffset( Offset = 144 )]
		public PangoLayout* _cached_layout;
		public bool _cache_includes_preedit { get { return ( cast<byte*>( &this )[152] & 1 ) != 0; } set { cast<byte*>( &this )[152] &= 254; cast<byte*>( &this )[152] |= cast<byte>( value ) << 0; } }
		public bool _need_im_reset { get { return ( cast<byte*>( &this )[152] & 2 ) != 0; } set { cast<byte*>( &this )[152] &= 253; cast<byte*>( &this )[152] |= cast<byte>( value ) << 1; } }
		public bool _has_frame { get { return ( cast<byte*>( &this )[152] & 4 ) != 0; } set { cast<byte*>( &this )[152] &= 251; cast<byte*>( &this )[152] |= cast<byte>( value ) << 2; } }
		public bool _activates_default { get { return ( cast<byte*>( &this )[152] & 8 ) != 0; } set { cast<byte*>( &this )[152] &= 247; cast<byte*>( &this )[152] |= cast<byte>( value ) << 3; } }
		public bool _cursor_visible { get { return ( cast<byte*>( &this )[152] & 16 ) != 0; } set { cast<byte*>( &this )[152] &= 239; cast<byte*>( &this )[152] |= cast<byte>( value ) << 4; } }
		public bool _in_click { get { return ( cast<byte*>( &this )[152] & 32 ) != 0; } set { cast<byte*>( &this )[152] &= 223; cast<byte*>( &this )[152] |= cast<byte>( value ) << 5; } }
		public bool _is_cell_renderer { get { return ( cast<byte*>( &this )[152] & 64 ) != 0; } set { cast<byte*>( &this )[152] &= 191; cast<byte*>( &this )[152] |= cast<byte>( value ) << 6; } }
		public bool _editing_canceled { get { return ( cast<byte*>( &this )[152] & 128 ) != 0; } set { cast<byte*>( &this )[152] &= 127; cast<byte*>( &this )[152] |= cast<byte>( value ) << 7; } }
		public bool _mouse_cursor_obscured { get { return ( cast<byte*>( &this )[153] & 1 ) != 0; } set { cast<byte*>( &this )[153] &= 254; cast<byte*>( &this )[153] |= cast<byte>( value ) << 0; } }
		public bool _select_words { get { return ( cast<byte*>( &this )[153] & 2 ) != 0; } set { cast<byte*>( &this )[153] &= 253; cast<byte*>( &this )[153] |= cast<byte>( value ) << 1; } }
		public bool _select_lines { get { return ( cast<byte*>( &this )[153] & 4 ) != 0; } set { cast<byte*>( &this )[153] &= 251; cast<byte*>( &this )[153] |= cast<byte>( value ) << 2; } }
		public uint _resolved_dir { get { return cast<byte*>( &this )[153] >> 3 & 15; } set { cast<byte*>( &this )[153] &= 135; cast<byte*>( &this )[153] |= ( cast<byte>( value ) & 120 ) << 3; } }
		public bool _truncate_multiline { get { return ( cast<byte*>( &this )[153] & 128 ) != 0; } set { cast<byte*>( &this )[153] &= 127; cast<byte*>( &this )[153] |= cast<byte>( value ) << 7; } }
		[ExplicitOffset( Offset = 156 )]
		public uint _button;
		[ExplicitOffset( Offset = 160 )]
		public uint _blink_timeout;
		[ExplicitOffset( Offset = 164 )]
		public uint _recompute_idle;
		[ExplicitOffset( Offset = 168 )]
		public int _scroll_offset;
		[ExplicitOffset( Offset = 172 )]
		public int _ascent;
		[ExplicitOffset( Offset = 176 )]
		public int _descent;
		[ExplicitOffset( Offset = 180 )]
		public ushort _x_text_size;
		[ExplicitOffset( Offset = 182 )]
		public ushort _x_n_bytes;
		[ExplicitOffset( Offset = 184 )]
		public ushort _preedit_length;
		[ExplicitOffset( Offset = 186 )]
		public ushort _preedit_cursor;
		[ExplicitOffset( Offset = 188 )]
		public int _dnd_position;
		[ExplicitOffset( Offset = 192 )]
		public int _drag_start_x;
		[ExplicitOffset( Offset = 196 )]
		public int _drag_start_y;
		[ExplicitOffset( Offset = 200 )]
		public uint _invisible_char;
		[ExplicitOffset( Offset = 204 )]
		public int _width_chars;
		public uint ConnectSignalActivate<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "activate", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkEntryBuffer : GObject {
		[ExplicitSize( Size = 232 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkEntryBuffer*, uint, sbyte*, uint> _inserted_text;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkEntryBuffer*, uint, uint> _deleted_text;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Func<GtkEntryBuffer*, uintptr*, sbyte*> _get_text;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Func<GtkEntryBuffer*, uint> _get_length;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Func<GtkEntryBuffer*, uint, sbyte*, uint, uint> _insert_text;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Func<GtkEntryBuffer*, uint, uint, uint> _delete_text;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action _gtk_reserved5;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkEntryBufferPrivate* _priv;
	}
	public partial struct GtkEntryBufferPrivate {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkEntryCompletion : GObject {
		[ExplicitSize( Size = 184 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Func<GtkEntryCompletion*, GtkTreeModel*, GtkTreeIter*, Boolean32> _match_selected;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkEntryCompletion*, int> _action_activated;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Func<GtkEntryCompletion*, sbyte*, Boolean32> _insert_prefix;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Func<GtkEntryCompletion*, GtkTreeModel*, GtkTreeIter*, Boolean32> _cursor_on_match;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved1;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkEntryCompletionPrivate* _priv;
	}
	public partial struct GtkEntryCompletionPrivate {
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkEventBox : GtkBin {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkExpander : GtkBin {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkExpander*> _activate;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkExpanderPrivate* _priv;
	}
	public partial struct GtkExpanderPrivate {
	}
	public partial struct GtkFileChooser {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFileChooserButton : GtkHBox {
		[ExplicitSize( Size = 888 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkFileChooserButton*> _file_set;
			[ExplicitOffset( Offset = 832 )]
			public void* __gtk_reserved1;
			[ExplicitOffset( Offset = 840 )]
			public void* __gtk_reserved2;
			[ExplicitOffset( Offset = 848 )]
			public void* __gtk_reserved3;
			[ExplicitOffset( Offset = 856 )]
			public void* __gtk_reserved4;
			[ExplicitOffset( Offset = 864 )]
			public void* __gtk_reserved5;
			[ExplicitOffset( Offset = 872 )]
			public void* __gtk_reserved6;
			[ExplicitOffset( Offset = 880 )]
			public void* __gtk_reserved7;
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkFileChooserButtonPrivate* _priv;
	}
	public partial struct GtkFileChooserButtonPrivate {
	}
	[ExplicitSize( Size = 272 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFileChooserDialog : GtkDialog {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkFileChooserDialogPrivate* _priv;
	}
	public partial struct GtkFileChooserDialogPrivate {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFileChooserWidget : GtkVBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkFileChooserWidgetPrivate* _priv;
	}
	public partial struct GtkFileChooserWidgetPrivate {
	}
	public partial struct GtkFileFilter {
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFileFilterInfo {
		[ExplicitOffset( Offset = 0 )]
		public GtkFileFilterFlags contains;
		[ExplicitOffset( Offset = 8 )]
		public CUtf8String filename;
		[ExplicitOffset( Offset = 16 )]
		public sbyte* uri;
		[ExplicitOffset( Offset = 24 )]
		public CUtf8String display_name;
		[ExplicitOffset( Offset = 32 )]
		public sbyte* mime_type;
	}
	[ExplicitSize( Size = 440 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFileSelection : GtkDialog {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkWidget* _dir_list;
		[ExplicitOffset( Offset = 272 )]
		public GtkWidget* _file_list;
		[ExplicitOffset( Offset = 280 )]
		public GtkWidget* _selection_entry;
		[ExplicitOffset( Offset = 288 )]
		public GtkWidget* _selection_text;
		[ExplicitOffset( Offset = 296 )]
		public GtkWidget* _main_vbox;
		[ExplicitOffset( Offset = 304 )]
		public GtkWidget* _ok_button;
		[ExplicitOffset( Offset = 312 )]
		public GtkWidget* _cancel_button;
		[ExplicitOffset( Offset = 320 )]
		public GtkWidget* _help_button;
		[ExplicitOffset( Offset = 328 )]
		public GtkWidget* _history_pulldown;
		[ExplicitOffset( Offset = 336 )]
		public GtkWidget* _history_menu;
		[ExplicitOffset( Offset = 344 )]
		public GList* _history_list;
		[ExplicitOffset( Offset = 352 )]
		public GtkWidget* _fileop_dialog;
		[ExplicitOffset( Offset = 360 )]
		public GtkWidget* _fileop_entry;
		[ExplicitOffset( Offset = 368 )]
		public sbyte* _fileop_file;
		[ExplicitOffset( Offset = 376 )]
		public void* _cmpl_state;
		[ExplicitOffset( Offset = 384 )]
		public GtkWidget* _fileop_c_dir;
		[ExplicitOffset( Offset = 392 )]
		public GtkWidget* _fileop_del_file;
		[ExplicitOffset( Offset = 400 )]
		public GtkWidget* _fileop_ren_file;
		[ExplicitOffset( Offset = 408 )]
		public GtkWidget* _button_area;
		[ExplicitOffset( Offset = 416 )]
		public new GtkWidget* _action_area;
		[ExplicitOffset( Offset = 424 )]
		public GPtrArray* _selected_names;
		[ExplicitOffset( Offset = 432 )]
		public sbyte* _last_selected;
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFixed : GtkContainer {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public GList* _children;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFixedChild {
		[ExplicitOffset( Offset = 0 )]
		public GtkWidget* widget;
		[ExplicitOffset( Offset = 8 )]
		public int x;
		[ExplicitOffset( Offset = 12 )]
		public int y;
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFontButton : GtkButton {
		[ExplicitSize( Size = 944 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkFontButton*> _font_set;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 144 )]
		public GtkFontButtonPrivate* _priv;
	}
	public partial struct GtkFontButtonPrivate {
	}
	[ExplicitSize( Size = 240 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFontSelection : GtkVBox {
		[ExplicitSize( Size = 856 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _font_entry;
		[ExplicitOffset( Offset = 136 )]
		public GtkWidget* _family_list;
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _font_style_entry;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _face_list;
		[ExplicitOffset( Offset = 160 )]
		public GtkWidget* _size_entry;
		[ExplicitOffset( Offset = 168 )]
		public GtkWidget* _size_list;
		[ExplicitOffset( Offset = 176 )]
		public GtkWidget* _pixels_button;
		[ExplicitOffset( Offset = 184 )]
		public GtkWidget* _points_button;
		[ExplicitOffset( Offset = 192 )]
		public GtkWidget* _filter_button;
		[ExplicitOffset( Offset = 200 )]
		public GtkWidget* _preview_entry;
		[ExplicitOffset( Offset = 208 )]
		public PangoFontFamily* _family;
		[ExplicitOffset( Offset = 216 )]
		public PangoFontFace* _face;
		[ExplicitOffset( Offset = 224 )]
		public int _size;
		[ExplicitOffset( Offset = 232 )]
		public GdkFont* _font;
	}
	[ExplicitSize( Size = 320 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFontSelectionDialog : GtkDialog {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkWidget* _fontsel;
		[ExplicitOffset( Offset = 272 )]
		public GtkWidget* _main_vbox;
		[ExplicitOffset( Offset = 280 )]
		public new GtkWidget* _action_area;
		[ExplicitOffset( Offset = 288 )]
		public GtkWidget* _ok_button;
		[ExplicitOffset( Offset = 296 )]
		public GtkWidget* _apply_button;
		[ExplicitOffset( Offset = 304 )]
		public GtkWidget* _cancel_button;
		[ExplicitOffset( Offset = 312 )]
		public int _dialog_width;
		[ExplicitOffset( Offset = 316 )]
		public Boolean32 _auto_resize;
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkFrame : GtkBin {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkFrame*, GdkRectangle*> _compute_child_allocation;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkWidget* _label_widget;
		[ExplicitOffset( Offset = 128 )]
		public short _shadow_type;
		[ExplicitOffset( Offset = 132 )]
		public float _label_xalign;
		[ExplicitOffset( Offset = 136 )]
		public float _label_yalign;
		[ExplicitOffset( Offset = 140 )]
		public GdkRectangle _child_allocation;
	}
	[ExplicitSize( Size = 208 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkGammaCurve : GtkVBox {
		[ExplicitSize( Size = 856 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _table;
		[ExplicitOffset( Offset = 136 )]
		public GtkWidget* _curve;
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget*[5] _button;
		[ExplicitOffset( Offset = 184 )]
		public float _gamma;
		[ExplicitOffset( Offset = 192 )]
		public GtkWidget* _gamma_dialog;
		[ExplicitOffset( Offset = 200 )]
		public GtkWidget* _gamma_text;
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHandleBox : GtkBin {
		[ExplicitSize( Size = 872 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkHandleBox*, GtkWidget*> _child_attached;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkHandleBox*, GtkWidget*> _child_detached;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 120 )]
		public GdkDrawable* _bin_window;
		[ExplicitOffset( Offset = 128 )]
		public GdkDrawable* _float_window;
		[ExplicitOffset( Offset = 136 )]
		public GtkShadowType _shadow_type;
		public uint _handle_position { get { return cast<byte*>( &this )[140] & 3; } set { cast<byte*>( &this )[140] &= 252; cast<byte*>( &this )[140] |= ( cast<byte>( value ) & 3 ); } }
		public bool _float_window_mapped { get { return ( cast<byte*>( &this )[140] & 4 ) != 0; } set { cast<byte*>( &this )[140] &= 251; cast<byte*>( &this )[140] |= cast<byte>( value ) << 2; } }
		public bool _child_detached { get { return ( cast<byte*>( &this )[140] & 8 ) != 0; } set { cast<byte*>( &this )[140] &= 247; cast<byte*>( &this )[140] |= cast<byte>( value ) << 3; } }
		public bool _in_drag { get { return ( cast<byte*>( &this )[140] & 16 ) != 0; } set { cast<byte*>( &this )[140] &= 239; cast<byte*>( &this )[140] |= cast<byte>( value ) << 4; } }
		public bool _shrink_on_detach { get { return ( cast<byte*>( &this )[140] & 32 ) != 0; } set { cast<byte*>( &this )[140] &= 223; cast<byte*>( &this )[140] |= cast<byte>( value ) << 5; } }
		public int _snap_edge { get { return cast<byte*>( &this )[140] >> 6 | cast<ushort>( cast<byte*>( &this )[141] & 1 ) << 2; } set { cast<byte*>( &this )[140] &= 63; cast<byte*>( &this )[140] |= ( cast<byte>( value ) & 192 ) << 6; cast<byte*>( &this )[141] &= 254; cast<byte*>( &this )[141] |= cast<byte>( value >> 1128 ) & 1; } }
		[ExplicitOffset( Offset = 144 )]
		public int _deskoff_x;
		[ExplicitOffset( Offset = 148 )]
		public int _deskoff_y;
		[ExplicitOffset( Offset = 152 )]
		public GdkRectangle _attach_allocation;
		[ExplicitOffset( Offset = 168 )]
		public GdkRectangle _float_allocation;
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHBox : GtkBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHButtonBox : GtkButtonBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 216 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHPaned : GtkPaned {
		[ExplicitSize( Size = 904 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHRuler : GtkRuler {
		[ExplicitSize( Size = 768 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 200 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHScale : GtkScale {
		[ExplicitSize( Size = 848 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 192 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHScrollbar : GtkScrollbar {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHSeparator : GtkSeparator {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 104 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkHSV : GtkWidget {
		[ExplicitSize( Size = 768 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkHSV*> _changed;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkHSV*, GtkDirectionType> _move;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 96 )]
		public void* _priv;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkIconFactory : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GHashTable* _icons;
	}
	public partial struct GtkIconInfo {
	}
	public partial struct GtkIconSet {
	}
	public partial struct GtkIconSource {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkIconTheme : GObject {
		[ExplicitSize( Size = 144 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkIconTheme*> _changed;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkIconThemePrivate* _priv;
	}
	public partial struct GtkIconThemePrivate {
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkIconView : GtkContainer {
		[ExplicitSize( Size = 896 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkIconView*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkIconView*, GtkTreePath*> _item_activated;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkIconView*> _selection_changed;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkIconView*> _select_all;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkIconView*> _unselect_all;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkIconView*> _select_cursor_item;
			[ExplicitOffset( Offset = 872 )]
			public Functors.Action<GtkIconView*> _toggle_cursor_item;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Func<GtkIconView*, GtkMovementStep, int, Boolean32> _move_cursor;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Func<GtkIconView*, Boolean32> _activate_cursor_item;
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkIconViewPrivate* _priv;
	}
	public partial struct GtkIconViewPrivate {
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImage : GtkMisc {
		[ExplicitSize( Size = 752 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkImageType _storage_type;
		[ExplicitOffset( Offset = 120 )]
		public UnnamedUnion_093B9419 _data;
		[ExplicitOffset( Offset = 144 )]
		public GdkDrawable* _mask;
		[ExplicitOffset( Offset = 152 )]
		public GtkIconSize _icon_size;
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageAnimationData {
		[ExplicitOffset( Offset = 0 )]
		public GdkPixbufAnimation* anim;
		[ExplicitOffset( Offset = 8 )]
		public GdkPixbufAnimationIter* iter;
		[ExplicitOffset( Offset = 16 )]
		public uint frame_timeout;
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageGIconData {
		[ExplicitOffset( Offset = 0 )]
		public GIcon* icon;
		[ExplicitOffset( Offset = 8 )]
		public GdkPixbuf* pixbuf;
		[ExplicitOffset( Offset = 16 )]
		public uint theme_change_id;
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageIconNameData {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String icon_name;
		[ExplicitOffset( Offset = 8 )]
		public GdkPixbuf* pixbuf;
		[ExplicitOffset( Offset = 16 )]
		public uint theme_change_id;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageIconSetData {
		[ExplicitOffset( Offset = 0 )]
		public GtkIconSet* icon_set;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageImageData {
		[ExplicitOffset( Offset = 0 )]
		public GdkImage* image;
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageMenuItem : GtkMenuItem {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 160 )]
		public GtkWidget* _image;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImagePixbufData {
		[ExplicitOffset( Offset = 0 )]
		public GdkPixbuf* pixbuf;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImagePixmapData {
		[ExplicitOffset( Offset = 0 )]
		public GdkDrawable* pixmap;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkImageStockData {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* stock_id;
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkIMContext : GObject {
		[ExplicitSize( Size = 336 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkIMContext*> _preedit_start;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkIMContext*> _preedit_end;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkIMContext*> _preedit_changed;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action<GtkIMContext*, sbyte*> _commit;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Func<GtkIMContext*, Boolean32> _retrieve_surrounding;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Func<GtkIMContext*, int, int, Boolean32> _delete_surrounding;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action<GtkIMContext*, GdkDrawable*> _set_client_window;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action<GtkIMContext*, sbyte**, PangoAttrList**, int*> _get_preedit_string;
			[ExplicitOffset( Offset = 224 )]
			public Functors.Func<GtkIMContext*, GdkEventKey*, Boolean32> _filter_keypress;
			[ExplicitOffset( Offset = 232 )]
			public Functors.Action<GtkIMContext*> _focus_in;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action<GtkIMContext*> _focus_out;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action<GtkIMContext*> _reset;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action<GtkIMContext*, GdkRectangle*> _set_cursor_location;
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action<GtkIMContext*, Boolean32> _set_use_preedit;
			[ExplicitOffset( Offset = 272 )]
			public Functors.Action<GtkIMContext*, sbyte*, int, int> _set_surrounding;
			[ExplicitOffset( Offset = 280 )]
			public Functors.Func<GtkIMContext*, sbyte**, int*, Boolean32> _get_surrounding;
			[ExplicitOffset( Offset = 288 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 296 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 304 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 312 )]
			public Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 320 )]
			public Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 328 )]
			public Functors.Action _gtk_reserved6;
		}
	}
	[ExplicitSize( Size = 80 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkIMContextSimple : GtkIMContext {
		[ExplicitSize( Size = 336 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 24 )]
		public GSList* _tables;
		[ExplicitOffset( Offset = 32 )]
		public uint[8] _compose_buffer;
		[ExplicitOffset( Offset = 64 )]
		public uint _tentative_match;
		[ExplicitOffset( Offset = 68 )]
		public int _tentative_match_len;
		public bool _in_hex_sequence { get { return ( cast<byte*>( &this )[72] & 1 ) != 0; } set { cast<byte*>( &this )[72] &= 254; cast<byte*>( &this )[72] |= cast<byte>( value ) << 0; } }
		public bool _modifiers_dropped { get { return ( cast<byte*>( &this )[72] & 2 ) != 0; } set { cast<byte*>( &this )[72] &= 253; cast<byte*>( &this )[72] |= cast<byte>( value ) << 1; } }
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkIMMulticontext : GtkIMContext {
		[ExplicitSize( Size = 368 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 336 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 344 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 352 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 360 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkIMContext* _slave;
		[ExplicitOffset( Offset = 32 )]
		public GtkIMMulticontextPrivate* _priv;
		[ExplicitOffset( Offset = 40 )]
		public CUtf8String _context_id;
	}
	public partial struct GtkIMMulticontextPrivate {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkInfoBar : GtkHBox {
		[ExplicitSize( Size = 888 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkInfoBar*, int> _response;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkInfoBar*> _close;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved6;
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkInfoBarPrivate* _priv;
	}
	public partial struct GtkInfoBarPrivate {
	}
	[ExplicitSize( Size = 384 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkInputDialog : GtkDialog {
		[ExplicitSize( Size = 1000 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public Functors.Action<GtkInputDialog*, GdkDevice*> _enable_device;
			[ExplicitOffset( Offset = 960 )]
			public Functors.Action<GtkInputDialog*, GdkDevice*> _disable_device;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 984 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 992 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkWidget* _axis_list;
		[ExplicitOffset( Offset = 272 )]
		public GtkWidget* _axis_listbox;
		[ExplicitOffset( Offset = 280 )]
		public GtkWidget* _mode_optionmenu;
		[ExplicitOffset( Offset = 288 )]
		public GtkWidget* _close_button;
		[ExplicitOffset( Offset = 296 )]
		public GtkWidget* _save_button;
		[ExplicitOffset( Offset = 304 )]
		public GtkWidget*[7] _axis_items;
		[ExplicitOffset( Offset = 360 )]
		public GdkDevice* _current_device;
		[ExplicitOffset( Offset = 368 )]
		public GtkWidget* _keys_list;
		[ExplicitOffset( Offset = 376 )]
		public GtkWidget* _keys_listbox;
	}
	[ExplicitSize( Size = 112 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkInvisible : GtkWidget {
		[ExplicitSize( Size = 752 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 96 )]
		public Boolean32 _has_user_ref_count;
		[ExplicitOffset( Offset = 104 )]
		public GdkScreen* _screen;
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkItem : GtkBin {
		[ExplicitSize( Size = 880 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkItem*> _select;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkItem*> _deselect;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkItem*> _toggle;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved4;
		}
	}
	[ExplicitSize( Size = 88 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkItemFactory : GtkObject {
		[ExplicitSize( Size = 200 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public GHashTable* _item_ht;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 32 )]
		public sbyte* _path;
		[ExplicitOffset( Offset = 40 )]
		public GtkAccelGroup* _accel_group;
		[ExplicitOffset( Offset = 48 )]
		public GtkWidget* _widget;
		[ExplicitOffset( Offset = 56 )]
		public GSList* _items;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Func<sbyte*, void*, sbyte*> _translate_func;
		[ExplicitOffset( Offset = 72 )]
		public void* _translate_data;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Action<void*> _translate_notify;
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkItemFactoryEntry {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* path;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* accelerator;
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action callback;
		[ExplicitOffset( Offset = 24 )]
		public uint callback_action;
		[ExplicitOffset( Offset = 32 )]
		public sbyte* item_type;
		[ExplicitOffset( Offset = 40 )]
		public void* extra_data;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkItemFactoryItem {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* path;
		[ExplicitOffset( Offset = 8 )]
		public GSList* widgets;
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkLabel : GtkMisc {
		[ExplicitSize( Size = 776 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkLabel*, GtkMovementStep, int, Boolean32> _move_cursor;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkLabel*> _copy_clipboard;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkLabel*, GtkMenu*> _populate_popup;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Func<GtkLabel*, sbyte*, Boolean32> _activate_link;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 112 )]
		public sbyte* _label;
		public uint _jtype { get { return cast<byte*>( &this )[120] & 3; } set { cast<byte*>( &this )[120] &= 252; cast<byte*>( &this )[120] |= ( cast<byte>( value ) & 3 ); } }
		public bool _wrap { get { return ( cast<byte*>( &this )[120] & 4 ) != 0; } set { cast<byte*>( &this )[120] &= 251; cast<byte*>( &this )[120] |= cast<byte>( value ) << 2; } }
		public bool _use_underline { get { return ( cast<byte*>( &this )[120] & 8 ) != 0; } set { cast<byte*>( &this )[120] &= 247; cast<byte*>( &this )[120] |= cast<byte>( value ) << 3; } }
		public bool _use_markup { get { return ( cast<byte*>( &this )[120] & 16 ) != 0; } set { cast<byte*>( &this )[120] &= 239; cast<byte*>( &this )[120] |= cast<byte>( value ) << 4; } }
		public uint _ellipsize { get { return cast<byte*>( &this )[120] >> 5; } set { cast<byte*>( &this )[120] &= 31; cast<byte*>( &this )[120] |= ( cast<byte>( value ) & 224 ) << 5; } }
		public bool _single_line_mode { get { return ( cast<byte*>( &this )[121] & 1 ) != 0; } set { cast<byte*>( &this )[121] &= 254; cast<byte*>( &this )[121] |= cast<byte>( value ) << 0; } }
		public bool _have_transform { get { return ( cast<byte*>( &this )[121] & 2 ) != 0; } set { cast<byte*>( &this )[121] &= 253; cast<byte*>( &this )[121] |= cast<byte>( value ) << 1; } }
		public bool _in_click { get { return ( cast<byte*>( &this )[121] & 4 ) != 0; } set { cast<byte*>( &this )[121] &= 251; cast<byte*>( &this )[121] |= cast<byte>( value ) << 2; } }
		public uint _wrap_mode { get { return cast<byte*>( &this )[121] >> 3 & 7; } set { cast<byte*>( &this )[121] &= 199; cast<byte*>( &this )[121] |= ( cast<byte>( value ) & 56 ) << 3; } }
		public bool _pattern_set { get { return ( cast<byte*>( &this )[121] & 64 ) != 0; } set { cast<byte*>( &this )[121] &= 191; cast<byte*>( &this )[121] |= cast<byte>( value ) << 6; } }
		public bool _track_links { get { return ( cast<byte*>( &this )[121] & 128 ) != 0; } set { cast<byte*>( &this )[121] &= 127; cast<byte*>( &this )[121] |= cast<byte>( value ) << 7; } }
		[ExplicitOffset( Offset = 124 )]
		public uint _mnemonic_keyval;
		[ExplicitOffset( Offset = 128 )]
		public CUtf8String _text;
		[ExplicitOffset( Offset = 136 )]
		public PangoAttrList* _attrs;
		[ExplicitOffset( Offset = 144 )]
		public PangoAttrList* _effective_attrs;
		[ExplicitOffset( Offset = 152 )]
		public PangoLayout* _layout;
		[ExplicitOffset( Offset = 160 )]
		public GtkWidget* _mnemonic_widget;
		[ExplicitOffset( Offset = 168 )]
		public GtkWindow* _mnemonic_window;
		[ExplicitOffset( Offset = 176 )]
		public GtkLabelSelectionInfo* _select_info;
	}
	public partial struct GtkLabelSelectionInfo {
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkLayout : GtkContainer {
		[ExplicitSize( Size = 864 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkLayout*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 112 )]
		public GList* _children;
		[ExplicitOffset( Offset = 120 )]
		public uint _width;
		[ExplicitOffset( Offset = 124 )]
		public uint _height;
		[ExplicitOffset( Offset = 128 )]
		public GtkAdjustment* _hadjustment;
		[ExplicitOffset( Offset = 136 )]
		public GtkAdjustment* _vadjustment;
		[ExplicitOffset( Offset = 144 )]
		public GdkDrawable* _bin_window;
		[ExplicitOffset( Offset = 152 )]
		public GdkVisibilityState _visibility;
		[ExplicitOffset( Offset = 156 )]
		public int _scroll_x;
		[ExplicitOffset( Offset = 160 )]
		public int _scroll_y;
		[ExplicitOffset( Offset = 164 )]
		public uint _freeze_count;
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkLinkButton : GtkButton {
		[ExplicitSize( Size = 936 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action _gtk_padding1;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action _gtk_padding2;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Action _gtk_padding3;
			[ExplicitOffset( Offset = 928 )]
			public Functors.Action _gtk_padding4;
		}
		[ExplicitOffset( Offset = 144 )]
		public GtkLinkButtonPrivate* _priv;
	}
	public partial struct GtkLinkButtonPrivate {
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkList : GtkContainer {
		[ExplicitSize( Size = 848 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkList*> _selection_changed;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkList*, GtkWidget*> _select_child;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkList*, GtkWidget*> _unselect_child;
		}
		[ExplicitOffset( Offset = 112 )]
		public GList* _children;
		[ExplicitOffset( Offset = 120 )]
		public GList* _selection;
		[ExplicitOffset( Offset = 128 )]
		public GList* _undo_selection;
		[ExplicitOffset( Offset = 136 )]
		public GList* _undo_unselection;
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _last_focus_child;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _undo_focus_child;
		[ExplicitOffset( Offset = 160 )]
		public uint _htimer;
		[ExplicitOffset( Offset = 164 )]
		public uint _vtimer;
		[ExplicitOffset( Offset = 168 )]
		public int _anchor;
		[ExplicitOffset( Offset = 172 )]
		public int _drag_pos;
		[ExplicitOffset( Offset = 176 )]
		public GtkStateType _anchor_state;
		public uint _selection_mode { get { return cast<byte*>( &this )[180] & 3; } set { cast<byte*>( &this )[180] &= 252; cast<byte*>( &this )[180] |= ( cast<byte>( value ) & 3 ); } }
		public bool _drag_selection { get { return ( cast<byte*>( &this )[180] & 4 ) != 0; } set { cast<byte*>( &this )[180] &= 251; cast<byte*>( &this )[180] |= cast<byte>( value ) << 2; } }
		public bool _add_mode { get { return ( cast<byte*>( &this )[180] & 8 ) != 0; } set { cast<byte*>( &this )[180] &= 247; cast<byte*>( &this )[180] |= cast<byte>( value ) << 3; } }
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkListItem : GtkItem {
		[ExplicitSize( Size = 960 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 880 )]
			public Functors.Action<GtkListItem*> _toggle_focus_row;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Action<GtkListItem*> _select_all;
			[ExplicitOffset( Offset = 896 )]
			public Functors.Action<GtkListItem*> _unselect_all;
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkListItem*> _undo_selection;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action<GtkListItem*> _start_selection;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Action<GtkListItem*> _end_selection;
			[ExplicitOffset( Offset = 928 )]
			public Functors.Action<GtkListItem*, GtkScrollType, float, Boolean32> _extend_selection;
			[ExplicitOffset( Offset = 936 )]
			public Functors.Action<GtkListItem*, GtkScrollType, float> _scroll_horizontal;
			[ExplicitOffset( Offset = 944 )]
			public Functors.Action<GtkListItem*, GtkScrollType, float> _scroll_vertical;
			[ExplicitOffset( Offset = 952 )]
			public Functors.Action<GtkListItem*> _toggle_add_mode;
		}
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkListStore : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public int _stamp;
		[ExplicitOffset( Offset = 32 )]
		public void* _seq;
		[ExplicitOffset( Offset = 40 )]
		public void* _gtk_reserved1;
		[ExplicitOffset( Offset = 48 )]
		public GList* _sort_list;
		[ExplicitOffset( Offset = 56 )]
		public int _n_columns;
		[ExplicitOffset( Offset = 60 )]
		public int _sort_column_id;
		[ExplicitOffset( Offset = 64 )]
		public GtkSortType _order;
		[ExplicitOffset( Offset = 72 )]
		public uintptr* _column_headers;
		[ExplicitOffset( Offset = 80 )]
		public int _length;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, void*, int> _default_sort_func;
		[ExplicitOffset( Offset = 96 )]
		public void* _default_sort_data;
		[ExplicitOffset( Offset = 104 )]
		public Functors.Action<void*> _default_sort_destroy;
		public bool _columns_dirty { get { return ( cast<byte*>( &this )[112] & 1 ) != 0; } set { cast<byte*>( &this )[112] &= 254; cast<byte*>( &this )[112] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 296 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMenu : GtkMenuShell {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _parent_menu_item;
		[ExplicitOffset( Offset = 160 )]
		public GtkWidget* _old_active_menu_item;
		[ExplicitOffset( Offset = 168 )]
		public GtkAccelGroup* _accel_group;
		[ExplicitOffset( Offset = 176 )]
		public sbyte* _accel_path;
		[ExplicitOffset( Offset = 184 )]
		public Functors.Action<GtkMenu*, int*, int*, Boolean32*, void*> _position_func;
		[ExplicitOffset( Offset = 192 )]
		public void* _position_func_data;
		[ExplicitOffset( Offset = 200 )]
		public uint _toggle_size;
		[ExplicitOffset( Offset = 208 )]
		public GtkWidget* _toplevel;
		[ExplicitOffset( Offset = 216 )]
		public GtkWidget* _tearoff_window;
		[ExplicitOffset( Offset = 224 )]
		public GtkWidget* _tearoff_hbox;
		[ExplicitOffset( Offset = 232 )]
		public GtkWidget* _tearoff_scrollbar;
		[ExplicitOffset( Offset = 240 )]
		public GtkAdjustment* _tearoff_adjustment;
		[ExplicitOffset( Offset = 248 )]
		public GdkDrawable* _view_window;
		[ExplicitOffset( Offset = 256 )]
		public GdkDrawable* _bin_window;
		[ExplicitOffset( Offset = 264 )]
		public int _scroll_offset;
		[ExplicitOffset( Offset = 268 )]
		public int _saved_scroll_offset;
		[ExplicitOffset( Offset = 272 )]
		public int _scroll_step;
		[ExplicitOffset( Offset = 276 )]
		public uint _timeout_id;
		[ExplicitOffset( Offset = 280 )]
		public GdkRegion* _navigation_region;
		[ExplicitOffset( Offset = 288 )]
		public uint _navigation_timeout;
		public bool _needs_destruction_ref_count { get { return ( cast<byte*>( &this )[292] & 1 ) != 0; } set { cast<byte*>( &this )[292] &= 254; cast<byte*>( &this )[292] |= cast<byte>( value ) << 0; } }
		public bool _torn_off { get { return ( cast<byte*>( &this )[292] & 2 ) != 0; } set { cast<byte*>( &this )[292] &= 253; cast<byte*>( &this )[292] |= cast<byte>( value ) << 1; } }
		public bool _tearoff_active { get { return ( cast<byte*>( &this )[292] & 4 ) != 0; } set { cast<byte*>( &this )[292] &= 251; cast<byte*>( &this )[292] |= cast<byte>( value ) << 2; } }
		public bool _scroll_fast { get { return ( cast<byte*>( &this )[292] & 8 ) != 0; } set { cast<byte*>( &this )[292] &= 247; cast<byte*>( &this )[292] |= cast<byte>( value ) << 3; } }
		public bool _upper_arrow_visible { get { return ( cast<byte*>( &this )[292] & 16 ) != 0; } set { cast<byte*>( &this )[292] &= 239; cast<byte*>( &this )[292] |= cast<byte>( value ) << 4; } }
		public bool _lower_arrow_visible { get { return ( cast<byte*>( &this )[292] & 32 ) != 0; } set { cast<byte*>( &this )[292] &= 223; cast<byte*>( &this )[292] |= cast<byte>( value ) << 5; } }
		public bool _upper_arrow_prelight { get { return ( cast<byte*>( &this )[292] & 64 ) != 0; } set { cast<byte*>( &this )[292] &= 191; cast<byte*>( &this )[292] |= cast<byte>( value ) << 6; } }
		public bool _lower_arrow_prelight { get { return ( cast<byte*>( &this )[292] & 128 ) != 0; } set { cast<byte*>( &this )[292] &= 127; cast<byte*>( &this )[292] |= cast<byte>( value ) << 7; } }
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMenuBar : GtkMenuShell {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved4;
		}
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMenuEntry {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* path;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* accelerator;
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkWidget*, void*> callback;
		[ExplicitOffset( Offset = 24 )]
		public void* callback_data;
		[ExplicitOffset( Offset = 32 )]
		public GtkWidget* widget;
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMenuItem : GtkItem {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			public bool _hide_on_activate { get { return ( cast<byte*>( &this )[880] & 1 ) != 0; } set { cast<byte*>( &this )[880] &= 254; cast<byte*>( &this )[880] |= cast<byte>( value ) << 0; } }
			[ExplicitOffset( Offset = 888 )]
			public Functors.Action<GtkMenuItem*> _activate;
			[ExplicitOffset( Offset = 896 )]
			public Functors.Action<GtkMenuItem*> _activate_item;
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkMenuItem*, int*> _toggle_size_request;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action<GtkMenuItem*, int> _toggle_size_allocate;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Action<GtkMenuItem*, sbyte*> _set_label;
			[ExplicitOffset( Offset = 928 )]
			public Functors.Func<GtkMenuItem*, sbyte*> _get_label;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved2;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkWidget* _submenu;
		[ExplicitOffset( Offset = 128 )]
		public GdkDrawable* _event_window;
		[ExplicitOffset( Offset = 136 )]
		public ushort _toggle_size;
		[ExplicitOffset( Offset = 138 )]
		public ushort _accelerator_width;
		[ExplicitOffset( Offset = 144 )]
		public sbyte* _accel_path;
		public bool _show_submenu_indicator { get { return ( cast<byte*>( &this )[152] & 1 ) != 0; } set { cast<byte*>( &this )[152] &= 254; cast<byte*>( &this )[152] |= cast<byte>( value ) << 0; } }
		public bool _submenu_placement { get { return ( cast<byte*>( &this )[152] & 2 ) != 0; } set { cast<byte*>( &this )[152] &= 253; cast<byte*>( &this )[152] |= cast<byte>( value ) << 1; } }
		public bool _submenu_direction { get { return ( cast<byte*>( &this )[152] & 4 ) != 0; } set { cast<byte*>( &this )[152] &= 251; cast<byte*>( &this )[152] |= cast<byte>( value ) << 2; } }
		public bool _right_justify { get { return ( cast<byte*>( &this )[152] & 8 ) != 0; } set { cast<byte*>( &this )[152] &= 247; cast<byte*>( &this )[152] |= cast<byte>( value ) << 3; } }
		public bool _timer_from_keypress { get { return ( cast<byte*>( &this )[152] & 16 ) != 0; } set { cast<byte*>( &this )[152] &= 239; cast<byte*>( &this )[152] |= cast<byte>( value ) << 4; } }
		public bool _from_menubar { get { return ( cast<byte*>( &this )[152] & 32 ) != 0; } set { cast<byte*>( &this )[152] &= 223; cast<byte*>( &this )[152] |= cast<byte>( value ) << 5; } }
		[ExplicitOffset( Offset = 156 )]
		public uint _timer;
		public uint ConnectSignalActivate<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "activate", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMenuShell : GtkContainer {
		[ExplicitSize( Size = 920 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			public bool _submenu_placement { get { return ( cast<byte*>( &this )[824] & 1 ) != 0; } set { cast<byte*>( &this )[824] &= 254; cast<byte*>( &this )[824] |= cast<byte>( value ) << 0; } }
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkMenuShell*> _deactivate;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkMenuShell*> _selection_done;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkMenuShell*, GtkMenuDirectionType> _move_current;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkMenuShell*, Boolean32> _activate_current;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkMenuShell*> _cancel;
			[ExplicitOffset( Offset = 872 )]
			public Functors.Action<GtkMenuShell*, GtkWidget*> _select_item;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Action<GtkMenuShell*, GtkWidget*, int> _insert;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Func<GtkMenuShell*, int> _get_popup_delay;
			[ExplicitOffset( Offset = 896 )]
			public Functors.Func<GtkMenuShell*, int, Boolean32> _move_selected;
			[ExplicitOffset( Offset = 904 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved2;
		}
		[ExplicitOffset( Offset = 112 )]
		public GList* _children;
		[ExplicitOffset( Offset = 120 )]
		public GtkWidget* _active_menu_item;
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _parent_menu_shell;
		[ExplicitOffset( Offset = 136 )]
		public uint _button;
		[ExplicitOffset( Offset = 140 )]
		public uint _activate_time;
		public bool _active { get { return ( cast<byte*>( &this )[144] & 1 ) != 0; } set { cast<byte*>( &this )[144] &= 254; cast<byte*>( &this )[144] |= cast<byte>( value ) << 0; } }
		public bool _have_grab { get { return ( cast<byte*>( &this )[144] & 2 ) != 0; } set { cast<byte*>( &this )[144] &= 253; cast<byte*>( &this )[144] |= cast<byte>( value ) << 1; } }
		public bool _have_xgrab { get { return ( cast<byte*>( &this )[144] & 4 ) != 0; } set { cast<byte*>( &this )[144] &= 251; cast<byte*>( &this )[144] |= cast<byte>( value ) << 2; } }
		public bool _ignore_leave { get { return ( cast<byte*>( &this )[144] & 8 ) != 0; } set { cast<byte*>( &this )[144] &= 247; cast<byte*>( &this )[144] |= cast<byte>( value ) << 3; } }
		public bool _menu_flag { get { return ( cast<byte*>( &this )[144] & 16 ) != 0; } set { cast<byte*>( &this )[144] &= 239; cast<byte*>( &this )[144] |= cast<byte>( value ) << 4; } }
		public bool _ignore_enter { get { return ( cast<byte*>( &this )[144] & 32 ) != 0; } set { cast<byte*>( &this )[144] &= 223; cast<byte*>( &this )[144] |= cast<byte>( value ) << 5; } }
		public bool _keyboard_mode { get { return ( cast<byte*>( &this )[144] & 64 ) != 0; } set { cast<byte*>( &this )[144] &= 191; cast<byte*>( &this )[144] |= cast<byte>( value ) << 6; } }
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMenuToolButton : GtkToolButton {
		[ExplicitSize( Size = 968 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 928 )]
			public Functors.Action<GtkMenuToolButton*> _show_menu;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 136 )]
		public new GtkMenuToolButtonPrivate* _priv;
	}
	public partial struct GtkMenuToolButtonPrivate {
	}
	[ExplicitSize( Size = 280 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMessageDialog : GtkDialog {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkWidget* _image;
		[ExplicitOffset( Offset = 272 )]
		public GtkWidget* _label;
	}
	[ExplicitSize( Size = 112 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMisc : GtkWidget {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 96 )]
		public float _xalign;
		[ExplicitOffset( Offset = 100 )]
		public float _yalign;
		[ExplicitOffset( Offset = 104 )]
		public ushort _xpad;
		[ExplicitOffset( Offset = 106 )]
		public ushort _ypad;
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkMountOperation : GMountOperation {
		[ExplicitSize( Size = 288 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 272 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 280 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 32 )]
		public new GtkMountOperationPrivate* _priv;
	}
	public partial struct GtkMountOperationPrivate {
	}
	[ExplicitSize( Size = 176 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkNotebook : GtkContainer {
		[ExplicitSize( Size = 896 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkNotebook*, GtkNotebookPage*, uint> _switch_page;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkNotebook*, Boolean32, Boolean32> _select_page;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Func<GtkNotebook*, GtkNotebookTab, Boolean32> _focus_tab;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Func<GtkNotebook*, int, Boolean32> _change_current_page;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkNotebook*, GtkDirectionType> _move_focus_out;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Func<GtkNotebook*, GtkDirectionType, Boolean32, Boolean32> _reorder_tab;
			[ExplicitOffset( Offset = 872 )]
			public Functors.Func<GtkNotebook*, GtkWidget*, GtkWidget*, GtkWidget*, int, int> _insert_page;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Func<GtkNotebook*, GtkWidget*, int, int, GtkNotebook*> _create_window;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved1;
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkNotebookPage* _cur_page;
		[ExplicitOffset( Offset = 120 )]
		public GList* _children;
		[ExplicitOffset( Offset = 128 )]
		public GList* _first_tab;
		[ExplicitOffset( Offset = 136 )]
		public GList* _focus_tab;
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _menu;
		[ExplicitOffset( Offset = 152 )]
		public GdkDrawable* _event_window;
		[ExplicitOffset( Offset = 160 )]
		public uint _timer;
		[ExplicitOffset( Offset = 164 )]
		public ushort _tab_hborder;
		[ExplicitOffset( Offset = 166 )]
		public ushort _tab_vborder;
		public bool _show_tabs { get { return ( cast<byte*>( &this )[168] & 1 ) != 0; } set { cast<byte*>( &this )[168] &= 254; cast<byte*>( &this )[168] |= cast<byte>( value ) << 0; } }
		public bool _homogeneous { get { return ( cast<byte*>( &this )[168] & 2 ) != 0; } set { cast<byte*>( &this )[168] &= 253; cast<byte*>( &this )[168] |= cast<byte>( value ) << 1; } }
		public bool _show_border { get { return ( cast<byte*>( &this )[168] & 4 ) != 0; } set { cast<byte*>( &this )[168] &= 251; cast<byte*>( &this )[168] |= cast<byte>( value ) << 2; } }
		public uint _tab_pos { get { return cast<byte*>( &this )[168] >> 3 & 3; } set { cast<byte*>( &this )[168] &= 231; cast<byte*>( &this )[168] |= ( cast<byte>( value ) & 24 ) << 3; } }
		public bool _scrollable { get { return ( cast<byte*>( &this )[168] & 32 ) != 0; } set { cast<byte*>( &this )[168] &= 223; cast<byte*>( &this )[168] |= cast<byte>( value ) << 5; } }
		public uint _in_child { get { return cast<byte*>( &this )[168] >> 6 | cast<ushort>( cast<byte*>( &this )[169] & 1 ) << 2; } set { cast<byte*>( &this )[168] &= 63; cast<byte*>( &this )[168] |= ( cast<byte>( value ) & 192 ) << 6; cast<byte*>( &this )[169] &= 254; cast<byte*>( &this )[169] |= cast<byte>( value >> 1352 ) & 1; } }
		public uint _click_child { get { return cast<byte*>( &this )[169] >> 1 & 7; } set { cast<byte*>( &this )[169] &= 241; cast<byte*>( &this )[169] |= ( cast<byte>( value ) & 14 ) << 1; } }
		public uint _button { get { return cast<byte*>( &this )[169] >> 4 & 3; } set { cast<byte*>( &this )[169] &= 207; cast<byte*>( &this )[169] |= ( cast<byte>( value ) & 48 ) << 4; } }
		public bool _need_timer { get { return ( cast<byte*>( &this )[169] & 64 ) != 0; } set { cast<byte*>( &this )[169] &= 191; cast<byte*>( &this )[169] |= cast<byte>( value ) << 6; } }
		public bool _child_has_focus { get { return ( cast<byte*>( &this )[169] & 128 ) != 0; } set { cast<byte*>( &this )[169] &= 127; cast<byte*>( &this )[169] |= cast<byte>( value ) << 7; } }
		public bool _have_visible_child { get { return ( cast<byte*>( &this )[170] & 1 ) != 0; } set { cast<byte*>( &this )[170] &= 254; cast<byte*>( &this )[170] |= cast<byte>( value ) << 0; } }
		public bool _focus_out { get { return ( cast<byte*>( &this )[170] & 2 ) != 0; } set { cast<byte*>( &this )[170] &= 253; cast<byte*>( &this )[170] |= cast<byte>( value ) << 1; } }
		public bool _has_before_previous { get { return ( cast<byte*>( &this )[170] & 4 ) != 0; } set { cast<byte*>( &this )[170] &= 251; cast<byte*>( &this )[170] |= cast<byte>( value ) << 2; } }
		public bool _has_before_next { get { return ( cast<byte*>( &this )[170] & 8 ) != 0; } set { cast<byte*>( &this )[170] &= 247; cast<byte*>( &this )[170] |= cast<byte>( value ) << 3; } }
		public bool _has_after_previous { get { return ( cast<byte*>( &this )[170] & 16 ) != 0; } set { cast<byte*>( &this )[170] &= 239; cast<byte*>( &this )[170] |= cast<byte>( value ) << 4; } }
		public bool _has_after_next { get { return ( cast<byte*>( &this )[170] & 32 ) != 0; } set { cast<byte*>( &this )[170] &= 223; cast<byte*>( &this )[170] |= cast<byte>( value ) << 5; } }
		public uint ConnectSignalSwitchPage<TData>( Functors.Action<thistype*, GtkNotebookPage*, uint, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "switch-page", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	public partial struct GtkNotebookPage {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkObject : GObject {
		[ExplicitSize( Size = 160 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkObject*, GtkArg*, uint> _set_arg;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkObject*, GtkArg*, uint> _get_arg;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action<GtkObject*> _destroy;
		}
		[ExplicitOffset( Offset = 24 )]
		public uint _flags;
		public uint ConnectSignalDestroy<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "destroy", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 240 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkOffscreenWindow : GtkWindow {
		[ExplicitSize( Size = 904 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkOldEditable : GtkWidget {
		[ExplicitSize( Size = 856 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkOldEditable*> _activate;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkOldEditable*, Boolean32> _set_editable;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkOldEditable*, int, int> _move_cursor;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action<GtkOldEditable*, int> _move_word;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action<GtkOldEditable*, int, int> _move_page;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action<GtkOldEditable*, int> _move_to_row;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Action<GtkOldEditable*, int> _move_to_column;
			[ExplicitOffset( Offset = 776 )]
			public Functors.Action<GtkOldEditable*, int> _kill_char;
			[ExplicitOffset( Offset = 784 )]
			public Functors.Action<GtkOldEditable*, int> _kill_word;
			[ExplicitOffset( Offset = 792 )]
			public Functors.Action<GtkOldEditable*, int> _kill_line;
			[ExplicitOffset( Offset = 800 )]
			public Functors.Action<GtkOldEditable*> _cut_clipboard;
			[ExplicitOffset( Offset = 808 )]
			public Functors.Action<GtkOldEditable*> _copy_clipboard;
			[ExplicitOffset( Offset = 816 )]
			public Functors.Action<GtkOldEditable*> _paste_clipboard;
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkOldEditable*, int, int> _update_text;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkOldEditable*, int, int, sbyte*> _get_chars;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkOldEditable*, int, int> _set_selection;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkOldEditable*, int> _set_position;
		}
		[ExplicitOffset( Offset = 96 )]
		public uint _current_pos;
		[ExplicitOffset( Offset = 100 )]
		public uint _selection_start_pos;
		[ExplicitOffset( Offset = 104 )]
		public uint _selection_end_pos;
		public bool _has_selection { get { return ( cast<byte*>( &this )[108] & 1 ) != 0; } set { cast<byte*>( &this )[108] &= 254; cast<byte*>( &this )[108] |= cast<byte>( value ) << 0; } }
		public bool _editable { get { return ( cast<byte*>( &this )[108] & 2 ) != 0; } set { cast<byte*>( &this )[108] &= 253; cast<byte*>( &this )[108] |= cast<byte>( value ) << 1; } }
		public bool _visible { get { return ( cast<byte*>( &this )[108] & 4 ) != 0; } set { cast<byte*>( &this )[108] &= 251; cast<byte*>( &this )[108] |= cast<byte>( value ) << 2; } }
		[ExplicitOffset( Offset = 112 )]
		public CUtf8String _clipboard_text;
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkOptionMenu : GtkButton {
		[ExplicitSize( Size = 944 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkOptionMenu*> _changed;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _menu;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _menu_item;
		[ExplicitOffset( Offset = 160 )]
		public ushort _width;
		[ExplicitOffset( Offset = 162 )]
		public ushort _height;
	}
	public partial struct GtkOrientable {
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkOrientableIface : GTypeInterface {
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkPageRange {
		[ExplicitOffset( Offset = 0 )]
		public int start;
		[ExplicitOffset( Offset = 4 )]
		public int end;
	}
	public partial struct GtkPageSetup {
	}
	[ExplicitSize( Size = 216 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPaned : GtkContainer {
		[ExplicitSize( Size = 904 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Func<GtkPaned*, Boolean32, Boolean32> _cycle_child_focus;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkPaned*, Boolean32> _toggle_handle_focus;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Func<GtkPaned*, GtkScrollType, Boolean32> _move_handle;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Func<GtkPaned*, Boolean32, Boolean32> _cycle_handle_focus;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Func<GtkPaned*, Boolean32> _accept_position;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Func<GtkPaned*, Boolean32> _cancel_position;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 896 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkWidget* _child1;
		[ExplicitOffset( Offset = 120 )]
		public GtkWidget* _child2;
		[ExplicitOffset( Offset = 128 )]
		public GdkDrawable* _handle;
		[ExplicitOffset( Offset = 136 )]
		public GdkGC* _xor_gc;
		[ExplicitOffset( Offset = 144 )]
		public GdkCursorType _cursor_type;
		[ExplicitOffset( Offset = 148 )]
		public GdkRectangle _handle_pos;
		[ExplicitOffset( Offset = 164 )]
		public int _child1_size;
		[ExplicitOffset( Offset = 168 )]
		public int _last_allocation;
		[ExplicitOffset( Offset = 172 )]
		public int _min_position;
		[ExplicitOffset( Offset = 176 )]
		public int _max_position;
		public bool _position_set { get { return ( cast<byte*>( &this )[180] & 1 ) != 0; } set { cast<byte*>( &this )[180] &= 254; cast<byte*>( &this )[180] |= cast<byte>( value ) << 0; } }
		public bool _in_drag { get { return ( cast<byte*>( &this )[180] & 2 ) != 0; } set { cast<byte*>( &this )[180] &= 253; cast<byte*>( &this )[180] |= cast<byte>( value ) << 1; } }
		public bool _child1_shrink { get { return ( cast<byte*>( &this )[180] & 4 ) != 0; } set { cast<byte*>( &this )[180] &= 251; cast<byte*>( &this )[180] |= cast<byte>( value ) << 2; } }
		public bool _child1_resize { get { return ( cast<byte*>( &this )[180] & 8 ) != 0; } set { cast<byte*>( &this )[180] &= 247; cast<byte*>( &this )[180] |= cast<byte>( value ) << 3; } }
		public bool _child2_shrink { get { return ( cast<byte*>( &this )[180] & 16 ) != 0; } set { cast<byte*>( &this )[180] &= 239; cast<byte*>( &this )[180] |= cast<byte>( value ) << 4; } }
		public bool _child2_resize { get { return ( cast<byte*>( &this )[180] & 32 ) != 0; } set { cast<byte*>( &this )[180] &= 223; cast<byte*>( &this )[180] |= cast<byte>( value ) << 5; } }
		public bool _orientation { get { return ( cast<byte*>( &this )[180] & 64 ) != 0; } set { cast<byte*>( &this )[180] &= 191; cast<byte*>( &this )[180] |= cast<byte>( value ) << 6; } }
		public bool _in_recursion { get { return ( cast<byte*>( &this )[180] & 128 ) != 0; } set { cast<byte*>( &this )[180] &= 127; cast<byte*>( &this )[180] |= cast<byte>( value ) << 7; } }
		public bool _handle_prelit { get { return ( cast<byte*>( &this )[181] & 1 ) != 0; } set { cast<byte*>( &this )[181] &= 254; cast<byte*>( &this )[181] |= cast<byte>( value ) << 0; } }
		[ExplicitOffset( Offset = 184 )]
		public GtkWidget* _last_child1_focus;
		[ExplicitOffset( Offset = 192 )]
		public GtkWidget* _last_child2_focus;
		[ExplicitOffset( Offset = 200 )]
		public GtkPanedPrivate* _priv;
		[ExplicitOffset( Offset = 208 )]
		public int _drag_pos;
		[ExplicitOffset( Offset = 212 )]
		public int _original_position;
		public uint ConnectSignalAcceptPosition<TData>( Functors.Func<thistype*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "accept_position", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalCancelPosition<TData>( Functors.Func<thistype*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "cancel_position", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalCycleChildFocus<TData>( Functors.Func<thistype*, int, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "cycle_child_focus", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalCycleHandleFocus<TData>( Functors.Func<thistype*, int, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "cycle_handle_focus", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalMoveHandle<TData>( Functors.Func<thistype*, GtkScrollType, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "move_handle", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalToggleHandleFocus<TData>( Functors.Func<thistype*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "toggle_handle_focus", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	public partial struct GtkPanedPrivate {
	}
	public partial struct GtkPaperSize {
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPixmap : GtkMisc {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public GdkDrawable* _pixmap;
		[ExplicitOffset( Offset = 120 )]
		public GdkDrawable* _mask;
		[ExplicitOffset( Offset = 128 )]
		public GdkDrawable* _pixmap_insensitive;
		public bool _build_insensitive { get { return ( cast<byte*>( &this )[136] & 1 ) != 0; } set { cast<byte*>( &this )[136] &= 254; cast<byte*>( &this )[136] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 280 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPlug : GtkWindow {
		[ExplicitSize( Size = 944 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkPlug*> _embedded;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 240 )]
		public GdkDrawable* _socket_window;
		[ExplicitOffset( Offset = 248 )]
		public GtkWidget* _modality_window;
		[ExplicitOffset( Offset = 256 )]
		public GtkWindowGroup* _modality_group;
		[ExplicitOffset( Offset = 264 )]
		public GHashTable* _grabbed_keys;
		public bool _same_app { get { return ( cast<byte*>( &this )[272] & 1 ) != 0; } set { cast<byte*>( &this )[272] &= 254; cast<byte*>( &this )[272] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPreview : GtkWidget {
		[ExplicitSize( Size = 736 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public GtkPreviewInfo _info;
		}
		[ExplicitOffset( Offset = 96 )]
		public byte* _buffer;
		[ExplicitOffset( Offset = 104 )]
		public ushort _buffer_width;
		[ExplicitOffset( Offset = 106 )]
		public ushort _buffer_height;
		[ExplicitOffset( Offset = 108 )]
		public ushort _bpp;
		[ExplicitOffset( Offset = 110 )]
		public ushort _rowstride;
		[ExplicitOffset( Offset = 112 )]
		public GdkRgbDither _dither;
		public bool _type { get { return ( cast<byte*>( &this )[116] & 1 ) != 0; } set { cast<byte*>( &this )[116] &= 254; cast<byte*>( &this )[116] |= cast<byte>( value ) << 0; } }
		public bool _expand { get { return ( cast<byte*>( &this )[116] & 2 ) != 0; } set { cast<byte*>( &this )[116] &= 253; cast<byte*>( &this )[116] |= cast<byte>( value ) << 1; } }
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPreviewInfo {
		[ExplicitOffset( Offset = 0 )]
		public byte* lookup;
		[ExplicitOffset( Offset = 8 )]
		public double gamma;
	}
	public partial struct GtkPrintContext {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPrintOperation : GObject {
		[ExplicitSize( Size = 272 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkPrintOperation*, GtkPrintOperationResult> _done;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkPrintOperation*, GtkPrintContext*> _begin_print;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Func<GtkPrintOperation*, GtkPrintContext*, Boolean32> _paginate;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkPrintOperation*, GtkPrintContext*, int, GtkPageSetup*> _request_page_setup;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkPrintOperation*, GtkPrintContext*, int> _draw_page;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkPrintOperation*, GtkPrintContext*> _end_print;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action<GtkPrintOperation*> _status_changed;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Func<GtkPrintOperation*, GtkWidget*> _create_custom_widget;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action<GtkPrintOperation*, GtkWidget*> _custom_widget_apply;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Func<GtkPrintOperation*, GtkPrintOperationPreview*, GtkPrintContext*, GtkWindow*, Boolean32> _preview;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action<GtkPrintOperation*, GtkWidget*, GtkPageSetup*, GtkPrintSettings*> _update_custom_widget;
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 232 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action _gtk_reserved6;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkPrintOperationPrivate* _priv;
	}
	public partial struct GtkPrintOperationPreview {
	}
	[ExplicitSize( Size = 112 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkPrintOperationPreviewIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkPrintOperationPreview*, GtkPrintContext*> ready;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GtkPrintOperationPreview*, GtkPrintContext*, GtkPageSetup*> got_page_size;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkPrintOperationPreview*, int> render_page;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Func<GtkPrintOperationPreview*, int, Boolean32> is_selected;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkPrintOperationPreview*> end_preview;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Action _gtk_reserved1;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Action _gtk_reserved2;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Action _gtk_reserved3;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Action _gtk_reserved4;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Action _gtk_reserved5;
		[ExplicitOffset( Offset = 96 )]
		public Functors.Action _gtk_reserved6;
		[ExplicitOffset( Offset = 104 )]
		public Functors.Action _gtk_reserved7;
	}
	public partial struct GtkPrintOperationPrivate {
	}
	public partial struct GtkPrintSettings {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkProgress : GtkWidget {
		[ExplicitSize( Size = 776 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkProgress*> _paint;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkProgress*> _update;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkProgress*> _act_mode_enter;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 96 )]
		public GtkAdjustment* _adjustment;
		[ExplicitOffset( Offset = 104 )]
		public GdkDrawable* _offscreen_pixmap;
		[ExplicitOffset( Offset = 112 )]
		public sbyte* _format;
		[ExplicitOffset( Offset = 120 )]
		public float _x_align;
		[ExplicitOffset( Offset = 124 )]
		public float _y_align;
		public bool _show_text { get { return ( cast<byte*>( &this )[128] & 1 ) != 0; } set { cast<byte*>( &this )[128] &= 254; cast<byte*>( &this )[128] |= cast<byte>( value ) << 0; } }
		public bool _activity_mode { get { return ( cast<byte*>( &this )[128] & 2 ) != 0; } set { cast<byte*>( &this )[128] &= 253; cast<byte*>( &this )[128] |= cast<byte>( value ) << 1; } }
		public bool _use_text_format { get { return ( cast<byte*>( &this )[128] & 4 ) != 0; } set { cast<byte*>( &this )[128] &= 251; cast<byte*>( &this )[128] |= cast<byte>( value ) << 2; } }
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkProgressBar : GtkProgress {
		[ExplicitSize( Size = 808 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 776 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 784 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 792 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 800 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 136 )]
		public GtkProgressBarStyle _bar_style;
		[ExplicitOffset( Offset = 140 )]
		public GtkProgressBarOrientation _orientation;
		[ExplicitOffset( Offset = 144 )]
		public uint _blocks;
		[ExplicitOffset( Offset = 148 )]
		public int _in_block;
		[ExplicitOffset( Offset = 152 )]
		public int _activity_pos;
		[ExplicitOffset( Offset = 156 )]
		public uint _activity_step;
		[ExplicitOffset( Offset = 160 )]
		public uint _activity_blocks;
		[ExplicitOffset( Offset = 168 )]
		public double _pulse_fraction;
		public bool _activity_dir { get { return ( cast<byte*>( &this )[176] & 1 ) != 0; } set { cast<byte*>( &this )[176] &= 254; cast<byte*>( &this )[176] |= cast<byte>( value ) << 0; } }
		public uint _ellipsize { get { return cast<byte*>( &this )[176] >> 1 & 7; } set { cast<byte*>( &this )[176] &= 241; cast<byte*>( &this )[176] |= ( cast<byte>( value ) & 14 ) << 1; } }
		public bool _dirty { get { return ( cast<byte*>( &this )[176] & 16 ) != 0; } set { cast<byte*>( &this )[176] &= 239; cast<byte*>( &this )[176] |= cast<byte>( value ) << 4; } }
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRadioAction : GtkToggleAction {
		[ExplicitSize( Size = 304 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action<GtkRadioAction*, GtkRadioAction*> _changed;
			[ExplicitOffset( Offset = 272 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 280 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 288 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 296 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 40 )]
		public new GtkRadioActionPrivate* _private_data;
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRadioActionEntry {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String name;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* stock_id;
		[ExplicitOffset( Offset = 16 )]
		public sbyte* label;
		[ExplicitOffset( Offset = 24 )]
		public sbyte* accelerator;
		[ExplicitOffset( Offset = 32 )]
		public sbyte* tooltip;
		[ExplicitOffset( Offset = 40 )]
		public int value;
	}
	public partial struct GtkRadioActionPrivate {
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRadioButton : GtkCheckButton {
		[ExplicitSize( Size = 1016 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 984 )]
			public Functors.Action<GtkRadioButton*> _group_changed;
			[ExplicitOffset( Offset = 992 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 1000 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 1008 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 152 )]
		public GSList* _group;
	}
	[ExplicitSize( Size = 176 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRadioMenuItem : GtkCheckMenuItem {
		[ExplicitSize( Size = 1032 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 1000 )]
			public Functors.Action<GtkRadioMenuItem*> _group_changed;
			[ExplicitOffset( Offset = 1008 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 1016 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 1024 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 168 )]
		public GSList* _group;
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRadioToolButton : GtkToggleToolButton {
		[ExplicitSize( Size = 1000 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 984 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 992 )]
			public new Functors.Action _gtk_reserved4;
		}
	}
	[ExplicitSize( Size = 192 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRange : GtkWidget {
		[ExplicitSize( Size = 800 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public sbyte* _slider_detail;
			[ExplicitOffset( Offset = 728 )]
			public sbyte* _stepper_detail;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action<GtkRange*> _value_changed;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action<GtkRange*, double> _adjust_bounds;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action<GtkRange*, GtkScrollType> _move_slider;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action<GtkRange*, GtkBorder*> _get_range_border;
			[ExplicitOffset( Offset = 768 )]
			public Functors.Func<GtkRange*, GtkScrollType, double, Boolean32> _change_value;
			[ExplicitOffset( Offset = 776 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 784 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 792 )]
			public Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 96 )]
		public GtkAdjustment* _adjustment;
		[ExplicitOffset( Offset = 104 )]
		public GtkUpdateType _update_policy;
		public bool _inverted { get { return ( cast<byte*>( &this )[108] & 1 ) != 0; } set { cast<byte*>( &this )[108] &= 254; cast<byte*>( &this )[108] |= cast<byte>( value ) << 0; } }
		public bool _flippable { get { return ( cast<byte*>( &this )[108] & 2 ) != 0; } set { cast<byte*>( &this )[108] &= 253; cast<byte*>( &this )[108] |= cast<byte>( value ) << 1; } }
		public bool _has_stepper_a { get { return ( cast<byte*>( &this )[108] & 4 ) != 0; } set { cast<byte*>( &this )[108] &= 251; cast<byte*>( &this )[108] |= cast<byte>( value ) << 2; } }
		public bool _has_stepper_b { get { return ( cast<byte*>( &this )[108] & 8 ) != 0; } set { cast<byte*>( &this )[108] &= 247; cast<byte*>( &this )[108] |= cast<byte>( value ) << 3; } }
		public bool _has_stepper_c { get { return ( cast<byte*>( &this )[108] & 16 ) != 0; } set { cast<byte*>( &this )[108] &= 239; cast<byte*>( &this )[108] |= cast<byte>( value ) << 4; } }
		public bool _has_stepper_d { get { return ( cast<byte*>( &this )[108] & 32 ) != 0; } set { cast<byte*>( &this )[108] &= 223; cast<byte*>( &this )[108] |= cast<byte>( value ) << 5; } }
		public bool _need_recalc { get { return ( cast<byte*>( &this )[108] & 64 ) != 0; } set { cast<byte*>( &this )[108] &= 191; cast<byte*>( &this )[108] |= cast<byte>( value ) << 6; } }
		public bool _slider_size_fixed { get { return ( cast<byte*>( &this )[108] & 128 ) != 0; } set { cast<byte*>( &this )[108] &= 127; cast<byte*>( &this )[108] |= cast<byte>( value ) << 7; } }
		[ExplicitOffset( Offset = 112 )]
		public int _min_slider_size;
		[ExplicitOffset( Offset = 116 )]
		public GtkOrientation _orientation;
		[ExplicitOffset( Offset = 120 )]
		public GdkRectangle _range_rect;
		[ExplicitOffset( Offset = 136 )]
		public int _slider_start;
		[ExplicitOffset( Offset = 140 )]
		public int _slider_end;
		[ExplicitOffset( Offset = 144 )]
		public int _round_digits;
		public bool _trough_click_forward { get { return ( cast<byte*>( &this )[148] & 1 ) != 0; } set { cast<byte*>( &this )[148] &= 254; cast<byte*>( &this )[148] |= cast<byte>( value ) << 0; } }
		public bool _update_pending { get { return ( cast<byte*>( &this )[148] & 2 ) != 0; } set { cast<byte*>( &this )[148] &= 253; cast<byte*>( &this )[148] |= cast<byte>( value ) << 1; } }
		[ExplicitOffset( Offset = 152 )]
		public GtkRangeLayout* _layout;
		[ExplicitOffset( Offset = 160 )]
		public GtkRangeStepTimer* _timer;
		[ExplicitOffset( Offset = 168 )]
		public int _slide_initial_slider_position;
		[ExplicitOffset( Offset = 172 )]
		public int _slide_initial_coordinate;
		[ExplicitOffset( Offset = 176 )]
		public uint _update_timeout_id;
		[ExplicitOffset( Offset = 184 )]
		public GdkDrawable* _event_window;
		public uint ConnectSignalAdjustBounds<TData>( Functors.Action<thistype*, double, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "adjust-bounds", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalChangeValue<TData>( Functors.Func<thistype*, GtkScrollType, double, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "change-value", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalMoveSlider<TData>( Functors.Action<thistype*, GtkScrollType, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "move-slider", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalValueChanged<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "value-changed", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	public partial struct GtkRangeLayout {
	}
	public partial struct GtkRangeStepTimer {
	}
	public partial struct GtkRcContext {
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRcProperty {
		[ExplicitOffset( Offset = 0 )]
		public uint type_name;
		[ExplicitOffset( Offset = 4 )]
		public uint property_name;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* origin;
		[ExplicitOffset( Offset = 16 )]
		public GValue value;
	}
	[ExplicitSize( Size = 384 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRcStyle : GObject {
		[ExplicitSize( Size = 200 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Func<GtkRcStyle*, GtkRcStyle*> _create_rc_style;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Func<GtkRcStyle*, GtkSettings*, GScanner*, uint> _parse;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action<GtkRcStyle*, GtkRcStyle*> _merge;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Func<GtkRcStyle*, GtkStyle*> _create_style;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public CUtf8String _name;
		[ExplicitOffset( Offset = 32 )]
		public sbyte*[5] _bg_pixmap_name;
		[ExplicitOffset( Offset = 72 )]
		public PangoFontDescription* _font_desc;
		[ExplicitOffset( Offset = 80 )]
		public GtkRcFlags[5] _color_flags;
		[ExplicitOffset( Offset = 100 )]
		public GdkColor[5] _fg;
		[ExplicitOffset( Offset = 160 )]
		public GdkColor[5] _bg;
		[ExplicitOffset( Offset = 220 )]
		public GdkColor[5] _text;
		[ExplicitOffset( Offset = 280 )]
		public GdkColor[5] _base;
		[ExplicitOffset( Offset = 340 )]
		public int _xthickness;
		[ExplicitOffset( Offset = 344 )]
		public int _ythickness;
		[ExplicitOffset( Offset = 352 )]
		public GArray* _rc_properties;
		[ExplicitOffset( Offset = 360 )]
		public GSList* _rc_style_lists;
		[ExplicitOffset( Offset = 368 )]
		public GSList* _icon_factories;
		public bool _engine_specified { get { return ( cast<byte*>( &this )[376] & 1 ) != 0; } set { cast<byte*>( &this )[376] &= 254; cast<byte*>( &this )[376] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentAction : GtkAction {
		[ExplicitSize( Size = 224 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 32 )]
		public GtkRecentActionPrivate* _priv;
	}
	public partial struct GtkRecentActionPrivate {
	}
	public partial struct GtkRecentChooser {
	}
	[ExplicitSize( Size = 272 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentChooserDialog : GtkDialog {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 264 )]
		public GtkRecentChooserDialogPrivate* _priv;
	}
	public partial struct GtkRecentChooserDialogPrivate {
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentChooserIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Func<GtkRecentChooser*, sbyte*, GError**, Boolean32> set_current_uri;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Func<GtkRecentChooser*, sbyte*> get_current_uri;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Func<GtkRecentChooser*, sbyte*, GError**, Boolean32> select_uri;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action<GtkRecentChooser*, sbyte*> unselect_uri;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkRecentChooser*> select_all;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Action<GtkRecentChooser*> unselect_all;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Func<GtkRecentChooser*, GList*> get_items;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Func<GtkRecentChooser*, GtkRecentManager*> get_recent_manager;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Action<GtkRecentChooser*, GtkRecentFilter*> add_filter;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Action<GtkRecentChooser*, GtkRecentFilter*> remove_filter;
		[ExplicitOffset( Offset = 96 )]
		public Functors.Func<GtkRecentChooser*, GSList*> list_filters;
		[ExplicitOffset( Offset = 104 )]
		public Functors.Action<GtkRecentChooser*, Functors.Func<GtkRecentInfo*, GtkRecentInfo*, void*, int>, void*, Functors.Action<void*>> set_sort_func;
		[ExplicitOffset( Offset = 112 )]
		public Functors.Action<GtkRecentChooser*> item_activated;
		[ExplicitOffset( Offset = 120 )]
		public Functors.Action<GtkRecentChooser*> selection_changed;
	}
	[ExplicitSize( Size = 304 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentChooserMenu : GtkMenu {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public Functors.Action _gtk_recent1;
			[ExplicitOffset( Offset = 960 )]
			public Functors.Action _gtk_recent2;
			[ExplicitOffset( Offset = 968 )]
			public Functors.Action _gtk_recent3;
			[ExplicitOffset( Offset = 976 )]
			public Functors.Action _gtk_recent4;
		}
		[ExplicitOffset( Offset = 296 )]
		public GtkRecentChooserMenuPrivate* _priv;
	}
	public partial struct GtkRecentChooserMenuPrivate {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentChooserWidget : GtkVBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkRecentChooserWidgetPrivate* _priv;
	}
	public partial struct GtkRecentChooserWidgetPrivate {
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentData {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String display_name;
		[ExplicitOffset( Offset = 8 )]
		public CUtf8String description;
		[ExplicitOffset( Offset = 16 )]
		public sbyte* mime_type;
		[ExplicitOffset( Offset = 24 )]
		public CUtf8String app_name;
		[ExplicitOffset( Offset = 32 )]
		public sbyte* app_exec;
		[ExplicitOffset( Offset = 40 )]
		public sbyte** groups;
		[ExplicitOffset( Offset = 48 )]
		public Boolean32 is_private;
	}
	public partial struct GtkRecentFilter {
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentFilterInfo {
		[ExplicitOffset( Offset = 0 )]
		public GtkRecentFilterFlags contains;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* uri;
		[ExplicitOffset( Offset = 16 )]
		public CUtf8String display_name;
		[ExplicitOffset( Offset = 24 )]
		public sbyte* mime_type;
		[ExplicitOffset( Offset = 32 )]
		public sbyte** applications;
		[ExplicitOffset( Offset = 40 )]
		public sbyte** groups;
		[ExplicitOffset( Offset = 48 )]
		public int age;
	}
	public partial struct GtkRecentInfo {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRecentManager : GObject {
		[ExplicitSize( Size = 176 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkRecentManager*> _changed;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_recent1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_recent2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_recent3;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_recent4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkRecentManagerPrivate* _priv;
	}
	public partial struct GtkRecentManagerPrivate {
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkRequisition {
		[ExplicitOffset( Offset = 0 )]
		public int width;
		[ExplicitOffset( Offset = 4 )]
		public int height;
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRuler : GtkWidget {
		[ExplicitSize( Size = 768 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 720 )]
			public Functors.Action<GtkRuler*> _draw_ticks;
			[ExplicitOffset( Offset = 728 )]
			public Functors.Action<GtkRuler*> _draw_pos;
			[ExplicitOffset( Offset = 736 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 744 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 752 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 760 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 96 )]
		public GdkDrawable* _backing_store;
		[ExplicitOffset( Offset = 104 )]
		public GdkGC* _non_gr_exp_gc;
		[ExplicitOffset( Offset = 112 )]
		public GtkRulerMetric* _metric;
		[ExplicitOffset( Offset = 120 )]
		public int _xsrc;
		[ExplicitOffset( Offset = 124 )]
		public int _ysrc;
		[ExplicitOffset( Offset = 128 )]
		public int _slider_size;
		[ExplicitOffset( Offset = 136 )]
		public double _lower;
		[ExplicitOffset( Offset = 144 )]
		public double _upper;
		[ExplicitOffset( Offset = 152 )]
		public double _position;
		[ExplicitOffset( Offset = 160 )]
		public double _max_size;
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkRulerMetric {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String metric_name;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* abbrev;
		[ExplicitOffset( Offset = 16 )]
		public double pixels_per_unit;
		[ExplicitOffset( Offset = 24 )]
		public double[10] ruler_scale;
		[ExplicitOffset( Offset = 104 )]
		public int[5] subdivide;
	}
	[ExplicitSize( Size = 200 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkScale : GtkRange {
		[ExplicitSize( Size = 848 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 800 )]
			public Functors.Func<GtkScale*, double, sbyte*> _format_value;
			[ExplicitOffset( Offset = 808 )]
			public Functors.Action<GtkScale*> _draw_value;
			[ExplicitOffset( Offset = 816 )]
			public Functors.Action<GtkScale*, int*, int*> _get_layout_offsets;
			[ExplicitOffset( Offset = 824 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 192 )]
		public int _digits;
		public bool _draw_value { get { return ( cast<byte*>( &this )[196] & 1 ) != 0; } set { cast<byte*>( &this )[196] &= 254; cast<byte*>( &this )[196] |= cast<byte>( value ) << 0; } }
		public uint _value_pos { get { return cast<byte*>( &this )[196] >> 1 & 3; } set { cast<byte*>( &this )[196] &= 249; cast<byte*>( &this )[196] |= ( cast<byte>( value ) & 6 ) << 1; } }
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkScaleButton : GtkButton {
		[ExplicitSize( Size = 944 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkScaleButton*, double> _value_changed;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 144 )]
		public GtkWidget* _plus_button;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _minus_button;
		[ExplicitOffset( Offset = 160 )]
		public GtkScaleButtonPrivate* _priv;
	}
	public partial struct GtkScaleButtonPrivate {
	}
	[ExplicitSize( Size = 192 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkScrollbar : GtkRange {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 800 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 808 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 816 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action _gtk_reserved4;
		}
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkScrolledWindow : GtkBin {
		[ExplicitSize( Size = 880 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public int _scrollbar_spacing;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkScrolledWindow*, GtkScrollType, Boolean32, Boolean32> _scroll_child;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkScrolledWindow*, GtkDirectionType> _move_focus_out;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkWidget* _hscrollbar;
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _vscrollbar;
		public uint _hscrollbar_policy { get { return cast<byte*>( &this )[136] & 3; } set { cast<byte*>( &this )[136] &= 252; cast<byte*>( &this )[136] |= ( cast<byte>( value ) & 3 ); } }
		public uint _vscrollbar_policy { get { return cast<byte*>( &this )[136] >> 2 & 3; } set { cast<byte*>( &this )[136] &= 243; cast<byte*>( &this )[136] |= ( cast<byte>( value ) & 12 ) << 2; } }
		public bool _hscrollbar_visible { get { return ( cast<byte*>( &this )[136] & 16 ) != 0; } set { cast<byte*>( &this )[136] &= 239; cast<byte*>( &this )[136] |= cast<byte>( value ) << 4; } }
		public bool _vscrollbar_visible { get { return ( cast<byte*>( &this )[136] & 32 ) != 0; } set { cast<byte*>( &this )[136] &= 223; cast<byte*>( &this )[136] |= cast<byte>( value ) << 5; } }
		public uint _window_placement { get { return cast<byte*>( &this )[136] >> 6; } set { cast<byte*>( &this )[136] &= 63; cast<byte*>( &this )[136] |= ( cast<byte>( value ) & 192 ) << 6; } }
		public bool _focus_out { get { return ( cast<byte*>( &this )[137] & 1 ) != 0; } set { cast<byte*>( &this )[137] &= 254; cast<byte*>( &this )[137] |= cast<byte>( value ) << 0; } }
		[ExplicitOffset( Offset = 138 )]
		public ushort _shadow_type;
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSelectionData {
		[ExplicitOffset( Offset = 0 )]
		public GdkAtom* selection;
		[ExplicitOffset( Offset = 8 )]
		public GdkAtom* target;
		[ExplicitOffset( Offset = 16 )]
		public GdkAtom* type;
		[ExplicitOffset( Offset = 24 )]
		public int format;
		[ExplicitOffset( Offset = 32 )]
		public byte* data;
		[ExplicitOffset( Offset = 40 )]
		public int length;
		[ExplicitOffset( Offset = 48 )]
		public GdkDisplay* display;
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSeparator : GtkWidget {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSeparatorMenuItem : GtkMenuItem {
		[ExplicitSize( Size = 952 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSeparatorToolItem : GtkToolItem {
		[ExplicitSize( Size = 912 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 896 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 904 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public new GtkSeparatorToolItemPrivate* _priv;
	}
	public partial struct GtkSeparatorToolItemPrivate {
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSettings : GObject {
		[ExplicitSize( Size = 136 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 24 )]
		public GData* _queued_settings;
		[ExplicitOffset( Offset = 32 )]
		public GtkSettingsPropertyValue* _property_values;
		[ExplicitOffset( Offset = 40 )]
		public GtkRcContext* _rc_context;
		[ExplicitOffset( Offset = 48 )]
		public GdkScreen* _screen;
	}
	public partial struct GtkSettingsPropertyValue {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSettingsValue {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* origin;
		[ExplicitOffset( Offset = 8 )]
		public GValue value;
	}
	[ExplicitSize( Size = 48 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSizeGroup : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GSList* _widgets;
		[ExplicitOffset( Offset = 32 )]
		public byte _mode;
		public bool _have_width { get { return ( cast<byte*>( &this )[33] & 1 ) != 0; } set { cast<byte*>( &this )[33] &= 254; cast<byte*>( &this )[33] |= cast<byte>( value ) << 0; } }
		public bool _have_height { get { return ( cast<byte*>( &this )[33] & 2 ) != 0; } set { cast<byte*>( &this )[33] &= 253; cast<byte*>( &this )[33] |= cast<byte>( value ) << 1; } }
		public bool _ignore_hidden { get { return ( cast<byte*>( &this )[33] & 4 ) != 0; } set { cast<byte*>( &this )[33] &= 251; cast<byte*>( &this )[33] |= cast<byte>( value ) << 2; } }
		[ExplicitOffset( Offset = 36 )]
		public GtkRequisition _requisition;
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSocket : GtkContainer {
		[ExplicitSize( Size = 872 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkSocket*> _plug_added;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkSocket*, Boolean32> _plug_removed;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 112 )]
		public ushort _request_width;
		[ExplicitOffset( Offset = 114 )]
		public ushort _request_height;
		[ExplicitOffset( Offset = 116 )]
		public ushort _current_width;
		[ExplicitOffset( Offset = 118 )]
		public ushort _current_height;
		[ExplicitOffset( Offset = 120 )]
		public GdkDrawable* _plug_window;
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _plug_widget;
		[ExplicitOffset( Offset = 136 )]
		public short _xembed_version;
		public bool _same_app { get { return ( cast<byte*>( &this )[138] & 1 ) != 0; } set { cast<byte*>( &this )[138] &= 254; cast<byte*>( &this )[138] |= cast<byte>( value ) << 0; } }
		public bool _focus_in { get { return ( cast<byte*>( &this )[138] & 2 ) != 0; } set { cast<byte*>( &this )[138] &= 253; cast<byte*>( &this )[138] |= cast<byte>( value ) << 1; } }
		public bool _have_size { get { return ( cast<byte*>( &this )[138] & 4 ) != 0; } set { cast<byte*>( &this )[138] &= 251; cast<byte*>( &this )[138] |= cast<byte>( value ) << 2; } }
		public bool _need_map { get { return ( cast<byte*>( &this )[138] & 8 ) != 0; } set { cast<byte*>( &this )[138] &= 247; cast<byte*>( &this )[138] |= cast<byte>( value ) << 3; } }
		public bool _is_mapped { get { return ( cast<byte*>( &this )[138] & 16 ) != 0; } set { cast<byte*>( &this )[138] &= 239; cast<byte*>( &this )[138] |= cast<byte>( value ) << 4; } }
		public bool _active { get { return ( cast<byte*>( &this )[138] & 32 ) != 0; } set { cast<byte*>( &this )[138] &= 223; cast<byte*>( &this )[138] |= cast<byte>( value ) << 5; } }
		[ExplicitOffset( Offset = 144 )]
		public GtkAccelGroup* _accel_group;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _toplevel;
	}
	[ExplicitSize( Size = 256 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSpinButton : GtkEntry {
		[ExplicitSize( Size = 888 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Func<GtkSpinButton*, double*, int> _input;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkSpinButton*, int> _output;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkSpinButton*> _value_changed;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkSpinButton*, GtkScrollType> _change_value;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkSpinButton*> _wrapped;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 208 )]
		public GtkAdjustment* _adjustment;
		[ExplicitOffset( Offset = 216 )]
		public GdkDrawable* _panel;
		[ExplicitOffset( Offset = 224 )]
		public uint _timer;
		[ExplicitOffset( Offset = 232 )]
		public double _climb_rate;
		[ExplicitOffset( Offset = 240 )]
		public double _timer_step;
		[ExplicitOffset( Offset = 248 )]
		public GtkSpinButtonUpdatePolicy _update_policy;
		public uint _in_child { get { return cast<byte*>( &this )[252] & 3; } set { cast<byte*>( &this )[252] &= 252; cast<byte*>( &this )[252] |= ( cast<byte>( value ) & 3 ); } }
		public uint _click_child { get { return cast<byte*>( &this )[252] >> 2 & 3; } set { cast<byte*>( &this )[252] &= 243; cast<byte*>( &this )[252] |= ( cast<byte>( value ) & 12 ) << 2; } }
		public new uint _button { get { return cast<byte*>( &this )[252] >> 4 & 3; } set { cast<byte*>( &this )[252] &= 207; cast<byte*>( &this )[252] |= ( cast<byte>( value ) & 48 ) << 4; } }
		public bool _need_timer { get { return ( cast<byte*>( &this )[252] & 64 ) != 0; } set { cast<byte*>( &this )[252] &= 191; cast<byte*>( &this )[252] |= cast<byte>( value ) << 6; } }
		public uint _timer_calls { get { return cast<byte*>( &this )[252] >> 7 | cast<ushort>( cast<byte*>( &this )[253] & 3 ) << 1; } set { cast<byte*>( &this )[252] &= 127; cast<byte*>( &this )[252] |= ( cast<byte>( value ) & 128 ) << 7; cast<byte*>( &this )[253] &= 252; cast<byte*>( &this )[253] |= cast<byte>( value >> 2024 ) & 3; } }
		public uint _digits { get { return cast<byte*>( &this )[253] >> 2 | cast<ushort>( cast<byte*>( &this )[254] & 15 ) << 6; } set { cast<byte*>( &this )[253] &= 3; cast<byte*>( &this )[253] |= ( cast<byte>( value ) & 252 ) << 2; cast<byte*>( &this )[254] &= 240; cast<byte*>( &this )[254] |= cast<byte>( value >> 2032 ) & 15; } }
		public bool _numeric { get { return ( cast<byte*>( &this )[254] & 16 ) != 0; } set { cast<byte*>( &this )[254] &= 239; cast<byte*>( &this )[254] |= cast<byte>( value ) << 4; } }
		public bool _wrap { get { return ( cast<byte*>( &this )[254] & 32 ) != 0; } set { cast<byte*>( &this )[254] &= 223; cast<byte*>( &this )[254] |= cast<byte>( value ) << 5; } }
		public bool _snap_to_ticks { get { return ( cast<byte*>( &this )[254] & 64 ) != 0; } set { cast<byte*>( &this )[254] &= 191; cast<byte*>( &this )[254] |= cast<byte>( value ) << 6; } }
	}
	[ExplicitSize( Size = 112 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkSpinner : GtkDrawingArea {
		[ExplicitSize( Size = 752 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 104 )]
		public GtkSpinnerPrivate* _priv;
	}
	public partial struct GtkSpinnerPrivate {
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkStatusbar : GtkHBox {
		[ExplicitSize( Size = 880 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public void* _reserved;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkStatusbar*, uint, sbyte*> _text_pushed;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkStatusbar*, uint, sbyte*> _text_popped;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public GtkWidget* _frame;
		[ExplicitOffset( Offset = 136 )]
		public GtkWidget* _label;
		[ExplicitOffset( Offset = 144 )]
		public GSList* _messages;
		[ExplicitOffset( Offset = 152 )]
		public GSList* _keys;
		[ExplicitOffset( Offset = 160 )]
		public uint _seq_context_id;
		[ExplicitOffset( Offset = 164 )]
		public uint _seq_message_id;
		[ExplicitOffset( Offset = 168 )]
		public GdkDrawable* _grip_window;
		public bool _has_resize_grip { get { return ( cast<byte*>( &this )[176] & 1 ) != 0; } set { cast<byte*>( &this )[176] &= 254; cast<byte*>( &this )[176] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkStatusIcon : GObject {
		[ExplicitSize( Size = 208 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkStatusIcon*> _activate;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkStatusIcon*, uint, uint> _popup_menu;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Func<GtkStatusIcon*, int, Boolean32> _size_changed;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Func<GtkStatusIcon*, GdkEventButton*, Boolean32> _button_press_event;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Func<GtkStatusIcon*, GdkEventButton*, Boolean32> _button_release_event;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Func<GtkStatusIcon*, GdkEventScroll*, Boolean32> _scroll_event;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Func<GtkStatusIcon*, int, int, Boolean32, GtkTooltip*, Boolean32> _query_tooltip;
			[ExplicitOffset( Offset = 192 )]
			public void* __gtk_reserved1;
			[ExplicitOffset( Offset = 200 )]
			public void* __gtk_reserved2;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkStatusIconPrivate* _priv;
	}
	public partial struct GtkStatusIconPrivate {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkStockItem {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* stock_id;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* label;
		[ExplicitOffset( Offset = 16 )]
		public GdkModifierType modifier;
		[ExplicitOffset( Offset = 20 )]
		public uint keyval;
		[ExplicitOffset( Offset = 24 )]
		public sbyte* translation_domain;
	}
	[ExplicitSize( Size = 984 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkStyle : GObject {
		[ExplicitSize( Size = 456 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkStyle*> _realize;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkStyle*> _unrealize;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action<GtkStyle*, GtkStyle*> _copy;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Func<GtkStyle*, GtkStyle*> _clone;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkStyle*, GtkRcStyle*> _init_from_rc;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType> _set_background;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Func<GtkStyle*, GtkIconSource*, GtkTextDirection, GtkStateType, GtkIconSize, GtkWidget*, sbyte*, GdkPixbuf*> _render_icon;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int> _draw_hline;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int> _draw_vline;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_shadow;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, GdkPoint*, int, Boolean32> _draw_polygon;
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, GtkArrowType, Boolean32, int, int, int, int> _draw_arrow;
			[ExplicitOffset( Offset = 232 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_diamond;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, int, int, sbyte*> _draw_string;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_box;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_flat_box;
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_check;
			[ExplicitOffset( Offset = 272 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_option;
			[ExplicitOffset( Offset = 280 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_tab;
			[ExplicitOffset( Offset = 288 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int, GtkPositionType, int, int> _draw_shadow_gap;
			[ExplicitOffset( Offset = 296 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int, GtkPositionType, int, int> _draw_box_gap;
			[ExplicitOffset( Offset = 304 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int, GtkPositionType> _draw_extension;
			[ExplicitOffset( Offset = 312 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int> _draw_focus;
			[ExplicitOffset( Offset = 320 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int, GtkOrientation> _draw_slider;
			[ExplicitOffset( Offset = 328 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GtkShadowType, GdkRectangle*, GtkWidget*, sbyte*, int, int, int, int, GtkOrientation> _draw_handle;
			[ExplicitOffset( Offset = 336 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, int, int, GtkExpanderStyle> _draw_expander;
			[ExplicitOffset( Offset = 344 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, Boolean32, GdkRectangle*, GtkWidget*, sbyte*, int, int, PangoLayout*> _draw_layout;
			[ExplicitOffset( Offset = 352 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, GdkWindowEdge, int, int, int, int> _draw_resize_grip;
			[ExplicitOffset( Offset = 360 )]
			public Functors.Action<GtkStyle*, GdkDrawable*, GtkStateType, GdkRectangle*, GtkWidget*, sbyte*, uint, int, int, int, int> _draw_spinner;
			[ExplicitOffset( Offset = 368 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 376 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 384 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 392 )]
			public Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 400 )]
			public Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 408 )]
			public Functors.Action _gtk_reserved6;
			[ExplicitOffset( Offset = 416 )]
			public Functors.Action _gtk_reserved7;
			[ExplicitOffset( Offset = 424 )]
			public Functors.Action _gtk_reserved8;
			[ExplicitOffset( Offset = 432 )]
			public Functors.Action _gtk_reserved9;
			[ExplicitOffset( Offset = 440 )]
			public Functors.Action _gtk_reserved10;
			[ExplicitOffset( Offset = 448 )]
			public Functors.Action _gtk_reserved11;
		}
		[ExplicitOffset( Offset = 24 )]
		public GdkColor[5] _fg;
		[ExplicitOffset( Offset = 84 )]
		public GdkColor[5] _bg;
		[ExplicitOffset( Offset = 144 )]
		public GdkColor[5] _light;
		[ExplicitOffset( Offset = 204 )]
		public GdkColor[5] _dark;
		[ExplicitOffset( Offset = 264 )]
		public GdkColor[5] _mid;
		[ExplicitOffset( Offset = 324 )]
		public GdkColor[5] _text;
		[ExplicitOffset( Offset = 384 )]
		public GdkColor[5] _base;
		[ExplicitOffset( Offset = 444 )]
		public GdkColor[5] _text_aa;
		[ExplicitOffset( Offset = 504 )]
		public GdkColor _black;
		[ExplicitOffset( Offset = 516 )]
		public GdkColor _white;
		[ExplicitOffset( Offset = 528 )]
		public PangoFontDescription* _font_desc;
		[ExplicitOffset( Offset = 536 )]
		public int _xthickness;
		[ExplicitOffset( Offset = 540 )]
		public int _ythickness;
		[ExplicitOffset( Offset = 544 )]
		public GdkGC*[5] _fg_gc;
		[ExplicitOffset( Offset = 584 )]
		public GdkGC*[5] _bg_gc;
		[ExplicitOffset( Offset = 624 )]
		public GdkGC*[5] _light_gc;
		[ExplicitOffset( Offset = 664 )]
		public GdkGC*[5] _dark_gc;
		[ExplicitOffset( Offset = 704 )]
		public GdkGC*[5] _mid_gc;
		[ExplicitOffset( Offset = 744 )]
		public GdkGC*[5] _text_gc;
		[ExplicitOffset( Offset = 784 )]
		public GdkGC*[5] _base_gc;
		[ExplicitOffset( Offset = 824 )]
		public GdkGC*[5] _text_aa_gc;
		[ExplicitOffset( Offset = 864 )]
		public GdkGC* _black_gc;
		[ExplicitOffset( Offset = 872 )]
		public GdkGC* _white_gc;
		[ExplicitOffset( Offset = 880 )]
		public GdkDrawable*[5] _bg_pixmap;
		[ExplicitOffset( Offset = 920 )]
		public int _attach_count;
		[ExplicitOffset( Offset = 924 )]
		public int _depth;
		[ExplicitOffset( Offset = 928 )]
		public GdkColormap* _colormap;
		[ExplicitOffset( Offset = 936 )]
		public GdkFont* _private_font;
		[ExplicitOffset( Offset = 944 )]
		public PangoFontDescription* _private_font_desc;
		[ExplicitOffset( Offset = 952 )]
		public GtkRcStyle* _rc_style;
		[ExplicitOffset( Offset = 960 )]
		public GSList* _styles;
		[ExplicitOffset( Offset = 968 )]
		public GArray* _property_cache;
		[ExplicitOffset( Offset = 976 )]
		public GSList* _icon_factories;
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTable : GtkContainer {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public GList* _children;
		[ExplicitOffset( Offset = 120 )]
		public GtkTableRowCol* _rows;
		[ExplicitOffset( Offset = 128 )]
		public GtkTableRowCol* _cols;
		[ExplicitOffset( Offset = 136 )]
		public ushort _nrows;
		[ExplicitOffset( Offset = 138 )]
		public ushort _ncols;
		[ExplicitOffset( Offset = 140 )]
		public ushort _column_spacing;
		[ExplicitOffset( Offset = 142 )]
		public ushort _row_spacing;
		public bool _homogeneous { get { return ( cast<byte*>( &this )[144] & 1 ) != 0; } set { cast<byte*>( &this )[144] &= 254; cast<byte*>( &this )[144] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTableChild {
		[ExplicitOffset( Offset = 0 )]
		public GtkWidget* widget;
		[ExplicitOffset( Offset = 8 )]
		public ushort left_attach;
		[ExplicitOffset( Offset = 10 )]
		public ushort right_attach;
		[ExplicitOffset( Offset = 12 )]
		public ushort top_attach;
		[ExplicitOffset( Offset = 14 )]
		public ushort bottom_attach;
		[ExplicitOffset( Offset = 16 )]
		public ushort xpadding;
		[ExplicitOffset( Offset = 18 )]
		public ushort ypadding;
		public bool xexpand { get { return ( cast<byte*>( &this )[20] & 1 ) != 0; } set { cast<byte*>( &this )[20] &= 254; cast<byte*>( &this )[20] |= cast<byte>( value ) << 0; } }
		public bool yexpand { get { return ( cast<byte*>( &this )[20] & 2 ) != 0; } set { cast<byte*>( &this )[20] &= 253; cast<byte*>( &this )[20] |= cast<byte>( value ) << 1; } }
		public bool xshrink { get { return ( cast<byte*>( &this )[20] & 4 ) != 0; } set { cast<byte*>( &this )[20] &= 251; cast<byte*>( &this )[20] |= cast<byte>( value ) << 2; } }
		public bool yshrink { get { return ( cast<byte*>( &this )[20] & 8 ) != 0; } set { cast<byte*>( &this )[20] &= 247; cast<byte*>( &this )[20] |= cast<byte>( value ) << 3; } }
		public bool xfill { get { return ( cast<byte*>( &this )[20] & 16 ) != 0; } set { cast<byte*>( &this )[20] &= 239; cast<byte*>( &this )[20] |= cast<byte>( value ) << 4; } }
		public bool yfill { get { return ( cast<byte*>( &this )[20] & 32 ) != 0; } set { cast<byte*>( &this )[20] &= 223; cast<byte*>( &this )[20] |= cast<byte>( value ) << 5; } }
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkTableRowCol {
		[ExplicitOffset( Offset = 0 )]
		public ushort requisition;
		[ExplicitOffset( Offset = 2 )]
		public ushort allocation;
		[ExplicitOffset( Offset = 4 )]
		public ushort spacing;
		public bool need_expand { get { return ( cast<byte*>( &this )[6] & 1 ) != 0; } set { cast<byte*>( &this )[6] &= 254; cast<byte*>( &this )[6] |= cast<byte>( value ) << 0; } }
		public bool need_shrink { get { return ( cast<byte*>( &this )[6] & 2 ) != 0; } set { cast<byte*>( &this )[6] &= 253; cast<byte*>( &this )[6] |= cast<byte>( value ) << 1; } }
		public bool expand { get { return ( cast<byte*>( &this )[6] & 4 ) != 0; } set { cast<byte*>( &this )[6] &= 251; cast<byte*>( &this )[6] |= cast<byte>( value ) << 2; } }
		public bool shrink { get { return ( cast<byte*>( &this )[6] & 8 ) != 0; } set { cast<byte*>( &this )[6] &= 247; cast<byte*>( &this )[6] |= cast<byte>( value ) << 3; } }
		public bool empty { get { return ( cast<byte*>( &this )[6] & 16 ) != 0; } set { cast<byte*>( &this )[6] &= 239; cast<byte*>( &this )[6] |= cast<byte>( value ) << 4; } }
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTargetEntry {
		[ExplicitOffset( Offset = 0 )]
		public sbyte* target;
		[ExplicitOffset( Offset = 8 )]
		public uint flags;
		[ExplicitOffset( Offset = 12 )]
		public uint info;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTargetList {
		[ExplicitOffset( Offset = 0 )]
		public GList* list;
		[ExplicitOffset( Offset = 8 )]
		public uint ref_count;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTargetPair {
		[ExplicitOffset( Offset = 0 )]
		public GdkAtom* target;
		[ExplicitOffset( Offset = 8 )]
		public uint flags;
		[ExplicitOffset( Offset = 12 )]
		public uint info;
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTearoffMenuItem : GtkMenuItem {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved4;
		}
		public bool _torn_off { get { return ( cast<byte*>( &this )[160] & 1 ) != 0; } set { cast<byte*>( &this )[160] &= 254; cast<byte*>( &this )[160] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextAppearance {
		[ExplicitOffset( Offset = 0 )]
		public GdkColor bg_color;
		[ExplicitOffset( Offset = 12 )]
		public GdkColor fg_color;
		[ExplicitOffset( Offset = 24 )]
		public GdkDrawable* bg_stipple;
		[ExplicitOffset( Offset = 32 )]
		public GdkDrawable* fg_stipple;
		[ExplicitOffset( Offset = 40 )]
		public int rise;
		[ExplicitOffset( Offset = 48 )]
		public void* padding1;
		public uint underline { get { return cast<byte*>( &this )[56] & 15; } set { cast<byte*>( &this )[56] &= 240; cast<byte*>( &this )[56] |= ( cast<byte>( value ) & 15 ); } }
		public bool strikethrough { get { return ( cast<byte*>( &this )[56] & 16 ) != 0; } set { cast<byte*>( &this )[56] &= 239; cast<byte*>( &this )[56] |= cast<byte>( value ) << 4; } }
		public bool draw_bg { get { return ( cast<byte*>( &this )[56] & 32 ) != 0; } set { cast<byte*>( &this )[56] &= 223; cast<byte*>( &this )[56] |= cast<byte>( value ) << 5; } }
		public bool inside_selection { get { return ( cast<byte*>( &this )[56] & 64 ) != 0; } set { cast<byte*>( &this )[56] &= 191; cast<byte*>( &this )[56] |= cast<byte>( value ) << 6; } }
		public bool is_text { get { return ( cast<byte*>( &this )[56] & 128 ) != 0; } set { cast<byte*>( &this )[56] &= 127; cast<byte*>( &this )[56] |= cast<byte>( value ) << 7; } }
		public bool pad1 { get { return ( cast<byte*>( &this )[57] & 1 ) != 0; } set { cast<byte*>( &this )[57] &= 254; cast<byte*>( &this )[57] |= cast<byte>( value ) << 0; } }
		public bool pad2 { get { return ( cast<byte*>( &this )[57] & 2 ) != 0; } set { cast<byte*>( &this )[57] &= 253; cast<byte*>( &this )[57] |= cast<byte>( value ) << 1; } }
		public bool pad3 { get { return ( cast<byte*>( &this )[57] & 4 ) != 0; } set { cast<byte*>( &this )[57] &= 251; cast<byte*>( &this )[57] |= cast<byte>( value ) << 2; } }
		public bool pad4 { get { return ( cast<byte*>( &this )[57] & 8 ) != 0; } set { cast<byte*>( &this )[57] &= 247; cast<byte*>( &this )[57] |= cast<byte>( value ) << 3; } }
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextAttributes {
		[ExplicitOffset( Offset = 0 )]
		public uint refcount;
		[ExplicitOffset( Offset = 8 )]
		public GtkTextAppearance appearance;
		[ExplicitOffset( Offset = 72 )]
		public GtkJustification justification;
		[ExplicitOffset( Offset = 76 )]
		public GtkTextDirection direction;
		[ExplicitOffset( Offset = 80 )]
		public PangoFontDescription* font;
		[ExplicitOffset( Offset = 88 )]
		public double font_scale;
		[ExplicitOffset( Offset = 96 )]
		public int left_margin;
		[ExplicitOffset( Offset = 100 )]
		public int indent;
		[ExplicitOffset( Offset = 104 )]
		public int right_margin;
		[ExplicitOffset( Offset = 108 )]
		public int pixels_above_lines;
		[ExplicitOffset( Offset = 112 )]
		public int pixels_below_lines;
		[ExplicitOffset( Offset = 116 )]
		public int pixels_inside_wrap;
		[ExplicitOffset( Offset = 120 )]
		public PangoTabArray* tabs;
		[ExplicitOffset( Offset = 128 )]
		public GtkWrapMode wrap_mode;
		[ExplicitOffset( Offset = 136 )]
		public PangoLanguage* language;
		[ExplicitOffset( Offset = 144 )]
		public GdkColor* pg_bg_color;
		public bool invisible { get { return ( cast<byte*>( &this )[152] & 1 ) != 0; } set { cast<byte*>( &this )[152] &= 254; cast<byte*>( &this )[152] |= cast<byte>( value ) << 0; } }
		public bool bg_full_height { get { return ( cast<byte*>( &this )[152] & 2 ) != 0; } set { cast<byte*>( &this )[152] &= 253; cast<byte*>( &this )[152] |= cast<byte>( value ) << 1; } }
		public bool editable { get { return ( cast<byte*>( &this )[152] & 4 ) != 0; } set { cast<byte*>( &this )[152] &= 251; cast<byte*>( &this )[152] |= cast<byte>( value ) << 2; } }
		public bool realized { get { return ( cast<byte*>( &this )[152] & 8 ) != 0; } set { cast<byte*>( &this )[152] &= 247; cast<byte*>( &this )[152] |= cast<byte>( value ) << 3; } }
		public bool pad1 { get { return ( cast<byte*>( &this )[152] & 16 ) != 0; } set { cast<byte*>( &this )[152] &= 239; cast<byte*>( &this )[152] |= cast<byte>( value ) << 4; } }
		public bool pad2 { get { return ( cast<byte*>( &this )[152] & 32 ) != 0; } set { cast<byte*>( &this )[152] &= 223; cast<byte*>( &this )[152] |= cast<byte>( value ) << 5; } }
		public bool pad3 { get { return ( cast<byte*>( &this )[152] & 64 ) != 0; } set { cast<byte*>( &this )[152] &= 191; cast<byte*>( &this )[152] |= cast<byte>( value ) << 6; } }
		public bool pad4 { get { return ( cast<byte*>( &this )[152] & 128 ) != 0; } set { cast<byte*>( &this )[152] &= 127; cast<byte*>( &this )[152] |= cast<byte>( value ) << 7; } }
	}
	public partial struct GtkTextBTree {
	}
	[ExplicitSize( Size = 72 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextBuffer : GObject {
		[ExplicitSize( Size = 280 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkTextBuffer*, GtkTextIter*, sbyte*, int> _insert_text;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkTextBuffer*, GtkTextIter*, GdkPixbuf*> _insert_pixbuf;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action<GtkTextBuffer*, GtkTextIter*, GtkTextChildAnchor*> _insert_child_anchor;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkTextBuffer*, GtkTextIter*, GtkTextIter*> _delete_range;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkTextBuffer*> _changed;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkTextBuffer*> _modified_changed;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action<GtkTextBuffer*, GtkTextIter*, GtkTextMark*> _mark_set;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action<GtkTextBuffer*, GtkTextMark*> _mark_deleted;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action<GtkTextBuffer*, GtkTextTag*, GtkTextIter*, GtkTextIter*> _apply_tag;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action<GtkTextBuffer*, GtkTextTag*, GtkTextIter*, GtkTextIter*> _remove_tag;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action<GtkTextBuffer*> _begin_user_action;
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action<GtkTextBuffer*> _end_user_action;
			[ExplicitOffset( Offset = 232 )]
			public Functors.Action<GtkTextBuffer*, GtkClipboard*> _paste_done;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 272 )]
			public Functors.Action _gtk_reserved5;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkTextTagTable* _tag_table;
		[ExplicitOffset( Offset = 32 )]
		public GtkTextBTree* _btree;
		[ExplicitOffset( Offset = 40 )]
		public GSList* _clipboard_contents_buffers;
		[ExplicitOffset( Offset = 48 )]
		public GSList* _selection_clipboards;
		[ExplicitOffset( Offset = 56 )]
		public GtkTextLogAttrCache* _log_attr_cache;
		[ExplicitOffset( Offset = 64 )]
		public uint _user_action_count;
		public bool _modified { get { return ( cast<byte*>( &this )[68] & 1 ) != 0; } set { cast<byte*>( &this )[68] &= 254; cast<byte*>( &this )[68] |= cast<byte>( value ) << 0; } }
		public bool _has_selection { get { return ( cast<byte*>( &this )[68] & 2 ) != 0; } set { cast<byte*>( &this )[68] &= 253; cast<byte*>( &this )[68] |= cast<byte>( value ) << 1; } }
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextChildAnchor : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public void* _segment;
	}
	[ExplicitSize( Size = 80 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextIter {
		[ExplicitOffset( Offset = 0 )]
		public void* dummy1;
		[ExplicitOffset( Offset = 8 )]
		public void* dummy2;
		[ExplicitOffset( Offset = 16 )]
		public int dummy3;
		[ExplicitOffset( Offset = 20 )]
		public int dummy4;
		[ExplicitOffset( Offset = 24 )]
		public int dummy5;
		[ExplicitOffset( Offset = 28 )]
		public int dummy6;
		[ExplicitOffset( Offset = 32 )]
		public int dummy7;
		[ExplicitOffset( Offset = 36 )]
		public int dummy8;
		[ExplicitOffset( Offset = 40 )]
		public void* dummy9;
		[ExplicitOffset( Offset = 48 )]
		public void* dummy10;
		[ExplicitOffset( Offset = 56 )]
		public int dummy11;
		[ExplicitOffset( Offset = 60 )]
		public int dummy12;
		[ExplicitOffset( Offset = 64 )]
		public int dummy13;
		[ExplicitOffset( Offset = 72 )]
		public void* dummy14;
	}
	public partial struct GtkTextLogAttrCache {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextMark : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public void* _segment;
	}
	public partial struct GtkTextPendingScroll {
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextTag : GObject {
		[ExplicitSize( Size = 176 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Func<GtkTextTag*, GObject*, GdkEvent*, GtkTextIter*, Boolean32> _event;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkTextTagTable* _table;
		[ExplicitOffset( Offset = 32 )]
		public CUtf8String _name;
		[ExplicitOffset( Offset = 40 )]
		public int _priority;
		[ExplicitOffset( Offset = 48 )]
		public GtkTextAttributes* _values;
		public bool _bg_color_set { get { return ( cast<byte*>( &this )[56] & 1 ) != 0; } set { cast<byte*>( &this )[56] &= 254; cast<byte*>( &this )[56] |= cast<byte>( value ) << 0; } }
		public bool _bg_stipple_set { get { return ( cast<byte*>( &this )[56] & 2 ) != 0; } set { cast<byte*>( &this )[56] &= 253; cast<byte*>( &this )[56] |= cast<byte>( value ) << 1; } }
		public bool _fg_color_set { get { return ( cast<byte*>( &this )[56] & 4 ) != 0; } set { cast<byte*>( &this )[56] &= 251; cast<byte*>( &this )[56] |= cast<byte>( value ) << 2; } }
		public bool _scale_set { get { return ( cast<byte*>( &this )[56] & 8 ) != 0; } set { cast<byte*>( &this )[56] &= 247; cast<byte*>( &this )[56] |= cast<byte>( value ) << 3; } }
		public bool _fg_stipple_set { get { return ( cast<byte*>( &this )[56] & 16 ) != 0; } set { cast<byte*>( &this )[56] &= 239; cast<byte*>( &this )[56] |= cast<byte>( value ) << 4; } }
		public bool _justification_set { get { return ( cast<byte*>( &this )[56] & 32 ) != 0; } set { cast<byte*>( &this )[56] &= 223; cast<byte*>( &this )[56] |= cast<byte>( value ) << 5; } }
		public bool _left_margin_set { get { return ( cast<byte*>( &this )[56] & 64 ) != 0; } set { cast<byte*>( &this )[56] &= 191; cast<byte*>( &this )[56] |= cast<byte>( value ) << 6; } }
		public bool _indent_set { get { return ( cast<byte*>( &this )[56] & 128 ) != 0; } set { cast<byte*>( &this )[56] &= 127; cast<byte*>( &this )[56] |= cast<byte>( value ) << 7; } }
		public bool _rise_set { get { return ( cast<byte*>( &this )[57] & 1 ) != 0; } set { cast<byte*>( &this )[57] &= 254; cast<byte*>( &this )[57] |= cast<byte>( value ) << 0; } }
		public bool _strikethrough_set { get { return ( cast<byte*>( &this )[57] & 2 ) != 0; } set { cast<byte*>( &this )[57] &= 253; cast<byte*>( &this )[57] |= cast<byte>( value ) << 1; } }
		public bool _right_margin_set { get { return ( cast<byte*>( &this )[57] & 4 ) != 0; } set { cast<byte*>( &this )[57] &= 251; cast<byte*>( &this )[57] |= cast<byte>( value ) << 2; } }
		public bool _pixels_above_lines_set { get { return ( cast<byte*>( &this )[57] & 8 ) != 0; } set { cast<byte*>( &this )[57] &= 247; cast<byte*>( &this )[57] |= cast<byte>( value ) << 3; } }
		public bool _pixels_below_lines_set { get { return ( cast<byte*>( &this )[57] & 16 ) != 0; } set { cast<byte*>( &this )[57] &= 239; cast<byte*>( &this )[57] |= cast<byte>( value ) << 4; } }
		public bool _pixels_inside_wrap_set { get { return ( cast<byte*>( &this )[57] & 32 ) != 0; } set { cast<byte*>( &this )[57] &= 223; cast<byte*>( &this )[57] |= cast<byte>( value ) << 5; } }
		public bool _tabs_set { get { return ( cast<byte*>( &this )[57] & 64 ) != 0; } set { cast<byte*>( &this )[57] &= 191; cast<byte*>( &this )[57] |= cast<byte>( value ) << 6; } }
		public bool _underline_set { get { return ( cast<byte*>( &this )[57] & 128 ) != 0; } set { cast<byte*>( &this )[57] &= 127; cast<byte*>( &this )[57] |= cast<byte>( value ) << 7; } }
		public bool _wrap_mode_set { get { return ( cast<byte*>( &this )[58] & 1 ) != 0; } set { cast<byte*>( &this )[58] &= 254; cast<byte*>( &this )[58] |= cast<byte>( value ) << 0; } }
		public bool _bg_full_height_set { get { return ( cast<byte*>( &this )[58] & 2 ) != 0; } set { cast<byte*>( &this )[58] &= 253; cast<byte*>( &this )[58] |= cast<byte>( value ) << 1; } }
		public bool _invisible_set { get { return ( cast<byte*>( &this )[58] & 4 ) != 0; } set { cast<byte*>( &this )[58] &= 251; cast<byte*>( &this )[58] |= cast<byte>( value ) << 2; } }
		public bool _editable_set { get { return ( cast<byte*>( &this )[58] & 8 ) != 0; } set { cast<byte*>( &this )[58] &= 247; cast<byte*>( &this )[58] |= cast<byte>( value ) << 3; } }
		public bool _language_set { get { return ( cast<byte*>( &this )[58] & 16 ) != 0; } set { cast<byte*>( &this )[58] &= 239; cast<byte*>( &this )[58] |= cast<byte>( value ) << 4; } }
		public bool _pg_bg_color_set { get { return ( cast<byte*>( &this )[58] & 32 ) != 0; } set { cast<byte*>( &this )[58] &= 223; cast<byte*>( &this )[58] |= cast<byte>( value ) << 5; } }
		public bool _accumulative_margin { get { return ( cast<byte*>( &this )[58] & 64 ) != 0; } set { cast<byte*>( &this )[58] &= 191; cast<byte*>( &this )[58] |= cast<byte>( value ) << 6; } }
		public bool _pad1 { get { return ( cast<byte*>( &this )[58] & 128 ) != 0; } set { cast<byte*>( &this )[58] &= 127; cast<byte*>( &this )[58] |= cast<byte>( value ) << 7; } }
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextTagTable : GObject {
		[ExplicitSize( Size = 192 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkTextTagTable*, GtkTextTag*, Boolean32> _tag_changed;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkTextTagTable*, GtkTextTag*> _tag_added;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action<GtkTextTagTable*, GtkTextTag*> _tag_removed;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GHashTable* _hash;
		[ExplicitOffset( Offset = 32 )]
		public GSList* _anonymous;
		[ExplicitOffset( Offset = 40 )]
		public int _anon_count;
		[ExplicitOffset( Offset = 48 )]
		public GSList* _buffers;
	}
	[ExplicitSize( Size = 352 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTextView : GtkContainer {
		[ExplicitSize( Size = 984 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkTextView*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkTextView*, GtkMenu*> _populate_popup;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkTextView*, GtkMovementStep, int, Boolean32> _move_cursor;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkTextView*, int, Boolean32> _page_horizontally;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkTextView*> _set_anchor;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkTextView*, sbyte*> _insert_at_cursor;
			[ExplicitOffset( Offset = 872 )]
			public Functors.Action<GtkTextView*, GtkDeleteType, int> _delete_from_cursor;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Action<GtkTextView*> _backspace;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Action<GtkTextView*> _cut_clipboard;
			[ExplicitOffset( Offset = 896 )]
			public Functors.Action<GtkTextView*> _copy_clipboard;
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkTextView*> _paste_clipboard;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Action<GtkTextView*> _toggle_overwrite;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Action<GtkTextView*, GtkDirectionType> _move_focus;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved6;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved7;
		}
		[ExplicitOffset( Offset = 112 )]
		public _GtkTextLayout* _layout;
		[ExplicitOffset( Offset = 120 )]
		public GtkTextBuffer* _buffer;
		[ExplicitOffset( Offset = 128 )]
		public uint _selection_drag_handler;
		[ExplicitOffset( Offset = 132 )]
		public uint _scroll_timeout;
		[ExplicitOffset( Offset = 136 )]
		public int _pixels_above_lines;
		[ExplicitOffset( Offset = 140 )]
		public int _pixels_below_lines;
		[ExplicitOffset( Offset = 144 )]
		public int _pixels_inside_wrap;
		[ExplicitOffset( Offset = 148 )]
		public GtkWrapMode _wrap_mode;
		[ExplicitOffset( Offset = 152 )]
		public GtkJustification _justify;
		[ExplicitOffset( Offset = 156 )]
		public int _left_margin;
		[ExplicitOffset( Offset = 160 )]
		public int _right_margin;
		[ExplicitOffset( Offset = 164 )]
		public int _indent;
		[ExplicitOffset( Offset = 168 )]
		public PangoTabArray* _tabs;
		public bool _editable { get { return ( cast<byte*>( &this )[176] & 1 ) != 0; } set { cast<byte*>( &this )[176] &= 254; cast<byte*>( &this )[176] |= cast<byte>( value ) << 0; } }
		public bool _overwrite_mode { get { return ( cast<byte*>( &this )[176] & 2 ) != 0; } set { cast<byte*>( &this )[176] &= 253; cast<byte*>( &this )[176] |= cast<byte>( value ) << 1; } }
		public bool _cursor_visible { get { return ( cast<byte*>( &this )[176] & 4 ) != 0; } set { cast<byte*>( &this )[176] &= 251; cast<byte*>( &this )[176] |= cast<byte>( value ) << 2; } }
		public bool _need_im_reset { get { return ( cast<byte*>( &this )[176] & 8 ) != 0; } set { cast<byte*>( &this )[176] &= 247; cast<byte*>( &this )[176] |= cast<byte>( value ) << 3; } }
		public bool _accepts_tab { get { return ( cast<byte*>( &this )[176] & 16 ) != 0; } set { cast<byte*>( &this )[176] &= 239; cast<byte*>( &this )[176] |= cast<byte>( value ) << 4; } }
		public bool _width_changed { get { return ( cast<byte*>( &this )[176] & 32 ) != 0; } set { cast<byte*>( &this )[176] &= 223; cast<byte*>( &this )[176] |= cast<byte>( value ) << 5; } }
		public bool _onscreen_validated { get { return ( cast<byte*>( &this )[176] & 64 ) != 0; } set { cast<byte*>( &this )[176] &= 191; cast<byte*>( &this )[176] |= cast<byte>( value ) << 6; } }
		public bool _mouse_cursor_obscured { get { return ( cast<byte*>( &this )[176] & 128 ) != 0; } set { cast<byte*>( &this )[176] &= 127; cast<byte*>( &this )[176] |= cast<byte>( value ) << 7; } }
		[ExplicitOffset( Offset = 184 )]
		public GtkTextWindow* _text_window;
		[ExplicitOffset( Offset = 192 )]
		public GtkTextWindow* _left_window;
		[ExplicitOffset( Offset = 200 )]
		public GtkTextWindow* _right_window;
		[ExplicitOffset( Offset = 208 )]
		public GtkTextWindow* _top_window;
		[ExplicitOffset( Offset = 216 )]
		public GtkTextWindow* _bottom_window;
		[ExplicitOffset( Offset = 224 )]
		public GtkAdjustment* _hadjustment;
		[ExplicitOffset( Offset = 232 )]
		public GtkAdjustment* _vadjustment;
		[ExplicitOffset( Offset = 240 )]
		public int _xoffset;
		[ExplicitOffset( Offset = 244 )]
		public int _yoffset;
		[ExplicitOffset( Offset = 248 )]
		public int _width;
		[ExplicitOffset( Offset = 252 )]
		public int _height;
		[ExplicitOffset( Offset = 256 )]
		public int _virtual_cursor_x;
		[ExplicitOffset( Offset = 260 )]
		public int _virtual_cursor_y;
		[ExplicitOffset( Offset = 264 )]
		public GtkTextMark* _first_para_mark;
		[ExplicitOffset( Offset = 272 )]
		public int _first_para_pixels;
		[ExplicitOffset( Offset = 280 )]
		public GtkTextMark* _dnd_mark;
		[ExplicitOffset( Offset = 288 )]
		public uint _blink_timeout;
		[ExplicitOffset( Offset = 292 )]
		public uint _first_validate_idle;
		[ExplicitOffset( Offset = 296 )]
		public uint _incremental_validate_idle;
		[ExplicitOffset( Offset = 304 )]
		public GtkIMContext* _im_context;
		[ExplicitOffset( Offset = 312 )]
		public GtkWidget* _popup_menu;
		[ExplicitOffset( Offset = 320 )]
		public int _drag_start_x;
		[ExplicitOffset( Offset = 324 )]
		public int _drag_start_y;
		[ExplicitOffset( Offset = 328 )]
		public GSList* _children;
		[ExplicitOffset( Offset = 336 )]
		public GtkTextPendingScroll* _pending_scroll;
		[ExplicitOffset( Offset = 344 )]
		public int _pending_place_cursor_button;
	}
	public partial struct GtkTextWindow {
	}
	public partial struct GtkThemeEngine {
	}
	[ExplicitSize( Size = 232 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTipsQuery : GtkLabel {
		[ExplicitSize( Size = 840 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 776 )]
			public Functors.Action<GtkTipsQuery*> _start_query;
			[ExplicitOffset( Offset = 784 )]
			public Functors.Action<GtkTipsQuery*> _stop_query;
			[ExplicitOffset( Offset = 792 )]
			public Functors.Action<GtkTipsQuery*, GtkWidget*, sbyte*, sbyte*> _widget_entered;
			[ExplicitOffset( Offset = 800 )]
			public Functors.Func<GtkTipsQuery*, GtkWidget*, sbyte*, sbyte*, GdkEventButton*, int> _widget_selected;
			[ExplicitOffset( Offset = 808 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 816 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 824 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action _gtk_reserved4;
		}
		public bool _emit_always { get { return ( cast<byte*>( &this )[184] & 1 ) != 0; } set { cast<byte*>( &this )[184] &= 254; cast<byte*>( &this )[184] |= cast<byte>( value ) << 0; } }
		public bool _in_query { get { return ( cast<byte*>( &this )[184] & 2 ) != 0; } set { cast<byte*>( &this )[184] &= 253; cast<byte*>( &this )[184] |= cast<byte>( value ) << 1; } }
		[ExplicitOffset( Offset = 192 )]
		public sbyte* _label_inactive;
		[ExplicitOffset( Offset = 200 )]
		public sbyte* _label_no_tip;
		[ExplicitOffset( Offset = 208 )]
		public GtkWidget* _caller;
		[ExplicitOffset( Offset = 216 )]
		public GtkWidget* _last_crossed;
		[ExplicitOffset( Offset = 224 )]
		public GdkCursor* _query_cursor;
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToggleAction : GtkAction {
		[ExplicitSize( Size = 264 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action<GtkToggleAction*> _toggled;
			[ExplicitOffset( Offset = 232 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 240 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 248 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 256 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 32 )]
		public new GtkToggleActionPrivate* _private_data;
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToggleActionEntry {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String name;
		[ExplicitOffset( Offset = 8 )]
		public sbyte* stock_id;
		[ExplicitOffset( Offset = 16 )]
		public sbyte* label;
		[ExplicitOffset( Offset = 24 )]
		public sbyte* accelerator;
		[ExplicitOffset( Offset = 32 )]
		public sbyte* tooltip;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action callback;
		[ExplicitOffset( Offset = 48 )]
		public Boolean32 is_active;
	}
	public partial struct GtkToggleActionPrivate {
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToggleButton : GtkButton {
		[ExplicitSize( Size = 944 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 904 )]
			public Functors.Action<GtkToggleButton*> _toggled;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 928 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved4;
		}
		public bool _active { get { return ( cast<byte*>( &this )[144] & 1 ) != 0; } set { cast<byte*>( &this )[144] &= 254; cast<byte*>( &this )[144] |= cast<byte>( value ) << 0; } }
		public bool _draw_indicator { get { return ( cast<byte*>( &this )[144] & 2 ) != 0; } set { cast<byte*>( &this )[144] &= 253; cast<byte*>( &this )[144] |= cast<byte>( value ) << 1; } }
		public bool _inconsistent { get { return ( cast<byte*>( &this )[144] & 4 ) != 0; } set { cast<byte*>( &this )[144] &= 251; cast<byte*>( &this )[144] |= cast<byte>( value ) << 2; } }
		public uint ConnectSignalToggled<TData>( Functors.Action<thistype*, TData*> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "toggled", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 144 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToggleToolButton : GtkToolButton {
		[ExplicitSize( Size = 968 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 928 )]
			public Functors.Action<GtkToggleToolButton*> _toggled;
			[ExplicitOffset( Offset = 936 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 136 )]
		public new GtkToggleToolButtonPrivate* _priv;
	}
	public partial struct GtkToggleToolButtonPrivate {
	}
	[ExplicitSize( Size = 176 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolbar : GtkContainer {
		[ExplicitSize( Size = 872 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkToolbar*, GtkOrientation> _orientation_changed;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkToolbar*, GtkToolbarStyle> _style_changed;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Func<GtkToolbar*, int, int, int, Boolean32> _popup_context_menu;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 112 )]
		public int _num_children;
		[ExplicitOffset( Offset = 120 )]
		public GList* _children;
		[ExplicitOffset( Offset = 128 )]
		public GtkOrientation _orientation;
		[ExplicitOffset( Offset = 132 )]
		public new GtkToolbarStyle _style;
		[ExplicitOffset( Offset = 136 )]
		public GtkIconSize _icon_size;
		[ExplicitOffset( Offset = 144 )]
		public GtkTooltips* _tooltips;
		[ExplicitOffset( Offset = 152 )]
		public int _button_maxw;
		[ExplicitOffset( Offset = 156 )]
		public int _button_maxh;
		[ExplicitOffset( Offset = 160 )]
		public uint _gtk_reserved1;
		[ExplicitOffset( Offset = 164 )]
		public uint _gtk_reserved2;
		public bool _style_set { get { return ( cast<byte*>( &this )[168] & 1 ) != 0; } set { cast<byte*>( &this )[168] &= 254; cast<byte*>( &this )[168] |= cast<byte>( value ) << 0; } }
		public bool _icon_size_set { get { return ( cast<byte*>( &this )[168] & 2 ) != 0; } set { cast<byte*>( &this )[168] &= 253; cast<byte*>( &this )[168] |= cast<byte>( value ) << 1; } }
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolbarChild {
		[ExplicitOffset( Offset = 0 )]
		public GtkToolbarChildType type;
		[ExplicitOffset( Offset = 8 )]
		public GtkWidget* widget;
		[ExplicitOffset( Offset = 16 )]
		public GtkWidget* icon;
		[ExplicitOffset( Offset = 24 )]
		public GtkWidget* label;
	}
	public partial struct GtkToolbarPrivate {
	}
	[ExplicitSize( Size = 136 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolButton : GtkToolItem {
		[ExplicitSize( Size = 928 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 880 )]
			public uintptr _button_type;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Action<GtkToolButton*> _clicked;
			[ExplicitOffset( Offset = 896 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 904 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 912 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 920 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 128 )]
		public new GtkToolButtonPrivate* _priv;
	}
	public partial struct GtkToolButtonPrivate {
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolItem : GtkBin {
		[ExplicitSize( Size = 880 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Func<GtkToolItem*, Boolean32> _create_menu_proxy;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkToolItem*> _toolbar_reconfigured;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Func<GtkToolItem*, GtkTooltips*, sbyte*, sbyte*, Boolean32> _set_tooltip;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkToolItemPrivate* _priv;
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolItemGroup : GtkContainer {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkToolItemGroupPrivate* _priv;
	}
	public partial struct GtkToolItemGroupPrivate {
	}
	public partial struct GtkToolItemPrivate {
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolPalette : GtkContainer {
		[ExplicitSize( Size = 880 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkWidget*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
			[ExplicitOffset( Offset = 832 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 840 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 848 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 856 )]
			public new Functors.Action _gtk_reserved4;
			[ExplicitOffset( Offset = 864 )]
			public new Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved6;
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkToolPalettePrivate* _priv;
	}
	public partial struct GtkToolPalettePrivate {
	}
	public partial struct GtkToolShell {
	}
	[ExplicitSize( Size = 88 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkToolShellIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Func<GtkToolShell*, GtkIconSize> get_icon_size;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Func<GtkToolShell*, GtkOrientation> get_orientation;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Func<GtkToolShell*, GtkToolbarStyle> get_style;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Func<GtkToolShell*, GtkReliefStyle> get_relief_style;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkToolShell*> rebuild_menu;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Func<GtkToolShell*, GtkOrientation> get_text_orientation;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Func<GtkToolShell*, float> get_text_alignment;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Func<GtkToolShell*, PangoEllipsizeMode> get_ellipsize_mode;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Func<GtkToolShell*, GtkSizeGroup*> get_text_size_group;
	}
	public partial struct GtkTooltip {
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTooltips : GtkObject {
		[ExplicitSize( Size = 192 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 32 )]
		public GtkWidget* _tip_window;
		[ExplicitOffset( Offset = 40 )]
		public GtkWidget* _tip_label;
		[ExplicitOffset( Offset = 48 )]
		public GtkTooltipsData* _active_tips_data;
		[ExplicitOffset( Offset = 56 )]
		public GList* _tips_data_list;
		public uint _delay { get { return cast<byte*>( &this )[64] | cast<ushort>( cast<byte*>( &this )[65] ) << 8 | cast<uint>( cast<byte*>( &this )[66] ) << 16 | cast<uint>( cast<byte*>( &this )[67] & 63 ) << 24; } set { cast<byte*>( &this )[64] = cast<byte>( value ); cast<byte*>( &this )[65] = cast<byte>( value >> 8 ); cast<byte*>( &this )[66] = cast<byte>( value >> 16 ); cast<byte*>( &this )[67] &= 192; cast<byte*>( &this )[67] |= cast<byte>( value >> 536 ) & 63; } }
		public bool _enabled { get { return ( cast<byte*>( &this )[67] & 64 ) != 0; } set { cast<byte*>( &this )[67] &= 191; cast<byte*>( &this )[67] |= cast<byte>( value ) << 6; } }
		public bool _have_grab { get { return ( cast<byte*>( &this )[67] & 128 ) != 0; } set { cast<byte*>( &this )[67] &= 127; cast<byte*>( &this )[67] |= cast<byte>( value ) << 7; } }
		public bool _use_sticky_delay { get { return ( cast<byte*>( &this )[68] & 1 ) != 0; } set { cast<byte*>( &this )[68] &= 254; cast<byte*>( &this )[68] |= cast<byte>( value ) << 0; } }
		[ExplicitOffset( Offset = 72 )]
		public int _timer_tag;
		[ExplicitOffset( Offset = 80 )]
		public GTimeVal _last_popdown;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTooltipsData {
		[ExplicitOffset( Offset = 0 )]
		public GtkTooltips* tooltips;
		[ExplicitOffset( Offset = 8 )]
		public GtkWidget* widget;
		[ExplicitOffset( Offset = 16 )]
		public CUtf8String tip_text;
		[ExplicitOffset( Offset = 24 )]
		public sbyte* tip_private;
	}
	public partial struct GtkTreeDragDest {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeDragDestIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Func<GtkTreeDragDest*, GtkTreePath*, GtkSelectionData*, Boolean32> drag_data_received;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Func<GtkTreeDragDest*, GtkTreePath*, GtkSelectionData*, Boolean32> row_drop_possible;
	}
	public partial struct GtkTreeDragSource {
	}
	[ExplicitSize( Size = 40 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeDragSourceIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Func<GtkTreeDragSource*, GtkTreePath*, Boolean32> row_draggable;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Func<GtkTreeDragSource*, GtkTreePath*, GtkSelectionData*, Boolean32> drag_data_get;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Func<GtkTreeDragSource*, GtkTreePath*, Boolean32> drag_data_delete;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeIter {
		[ExplicitOffset( Offset = 0 )]
		public int stamp;
		[ExplicitOffset( Offset = 8 )]
		public void* user_data;
		[ExplicitOffset( Offset = 16 )]
		public void* user_data2;
		[ExplicitOffset( Offset = 24 )]
		public void* user_data3;
	}
	public partial struct GtkTreeModel {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeModelFilter : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved3;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkTreeModelFilterPrivate* _priv;
	}
	public partial struct GtkTreeModelFilterPrivate {
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeModelIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkTreeModel*, GtkTreePath*, GtkTreeIter*> row_changed;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GtkTreeModel*, GtkTreePath*, GtkTreeIter*> row_inserted;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkTreeModel*, GtkTreePath*, GtkTreeIter*> row_has_child_toggled;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action<GtkTreeModel*, GtkTreePath*> row_deleted;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkTreeModel*, GtkTreePath*, GtkTreeIter*, int*> rows_reordered;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Func<GtkTreeModel*, GtkTreeModelFlags> get_flags;
		[ExplicitOffset( Offset = 64 )]
		public Functors.Func<GtkTreeModel*, int> get_n_columns;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Func<GtkTreeModel*, int, uintptr> get_column_type;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreePath*, Boolean32> get_iter;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreePath*> get_path;
		[ExplicitOffset( Offset = 96 )]
		public Functors.Action<GtkTreeModel*, GtkTreeIter*, int, GValue*> get_value;
		[ExplicitOffset( Offset = 104 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, Boolean32> iter_next;
		[ExplicitOffset( Offset = 112 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, Boolean32> iter_children;
		[ExplicitOffset( Offset = 120 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, Boolean32> iter_has_child;
		[ExplicitOffset( Offset = 128 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, int> iter_n_children;
		[ExplicitOffset( Offset = 136 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, int, Boolean32> iter_nth_child;
		[ExplicitOffset( Offset = 144 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, Boolean32> iter_parent;
		[ExplicitOffset( Offset = 152 )]
		public Functors.Action<GtkTreeModel*, GtkTreeIter*> ref_node;
		[ExplicitOffset( Offset = 160 )]
		public Functors.Action<GtkTreeModel*, GtkTreeIter*> unref_node;
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeModelSort : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public void* _root;
		[ExplicitOffset( Offset = 32 )]
		public int _stamp;
		[ExplicitOffset( Offset = 36 )]
		public uint _child_flags;
		[ExplicitOffset( Offset = 40 )]
		public GtkTreeModel* _child_model;
		[ExplicitOffset( Offset = 48 )]
		public int _zero_ref_count;
		[ExplicitOffset( Offset = 56 )]
		public GList* _sort_list;
		[ExplicitOffset( Offset = 64 )]
		public int _sort_column_id;
		[ExplicitOffset( Offset = 68 )]
		public GtkSortType _order;
		[ExplicitOffset( Offset = 72 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, void*, int> _default_sort_func;
		[ExplicitOffset( Offset = 80 )]
		public void* _default_sort_data;
		[ExplicitOffset( Offset = 88 )]
		public Functors.Action<void*> _default_sort_destroy;
		[ExplicitOffset( Offset = 96 )]
		public uint _changed_id;
		[ExplicitOffset( Offset = 100 )]
		public uint _inserted_id;
		[ExplicitOffset( Offset = 104 )]
		public uint _has_child_toggled_id;
		[ExplicitOffset( Offset = 108 )]
		public uint _deleted_id;
		[ExplicitOffset( Offset = 112 )]
		public uint _reordered_id;
	}
	public partial struct GtkTreePath {
	}
	public partial struct GtkTreeRowReference {
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeSelection : GObject {
		[ExplicitSize( Size = 176 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkTreeSelection*> _changed;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkTreeView* _tree_view;
		[ExplicitOffset( Offset = 32 )]
		public GtkSelectionMode _type;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Func<GtkTreeSelection*, GtkTreeModel*, GtkTreePath*, Boolean32, void*, Boolean32> _user_func;
		[ExplicitOffset( Offset = 48 )]
		public void* _user_data;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Action<void*> _destroy;
	}
	public partial struct GtkTreeSortable {
	}
	[ExplicitSize( Size = 64 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeSortableIface : GTypeInterface {
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<GtkTreeSortable*> sort_column_changed;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Func<GtkTreeSortable*, int*, GtkSortType*, Boolean32> get_sort_column_id;
		[ExplicitOffset( Offset = 32 )]
		public Functors.Action<GtkTreeSortable*, int, GtkSortType> set_sort_column_id;
		[ExplicitOffset( Offset = 40 )]
		public Functors.Action<GtkTreeSortable*, int, Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, void*, int>, void*, Functors.Action<void*>> set_sort_func;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<GtkTreeSortable*, Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, void*, int>, void*, Functors.Action<void*>> set_default_sort_func;
		[ExplicitOffset( Offset = 56 )]
		public Functors.Func<GtkTreeSortable*, Boolean32> has_default_sort_func;
	}
	[ExplicitSize( Size = 112 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeStore : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public int _stamp;
		[ExplicitOffset( Offset = 32 )]
		public void* _root;
		[ExplicitOffset( Offset = 40 )]
		public void* _last;
		[ExplicitOffset( Offset = 48 )]
		public int _n_columns;
		[ExplicitOffset( Offset = 52 )]
		public int _sort_column_id;
		[ExplicitOffset( Offset = 56 )]
		public GList* _sort_list;
		[ExplicitOffset( Offset = 64 )]
		public GtkSortType _order;
		[ExplicitOffset( Offset = 72 )]
		public uintptr* _column_headers;
		[ExplicitOffset( Offset = 80 )]
		public Functors.Func<GtkTreeModel*, GtkTreeIter*, GtkTreeIter*, void*, int> _default_sort_func;
		[ExplicitOffset( Offset = 88 )]
		public void* _default_sort_data;
		[ExplicitOffset( Offset = 96 )]
		public Functors.Action<void*> _default_sort_destroy;
		public bool _columns_dirty { get { return ( cast<byte*>( &this )[104] & 1 ) != 0; } set { cast<byte*>( &this )[104] &= 254; cast<byte*>( &this )[104] |= cast<byte>( value ) << 0; } }
	}
	[ExplicitSize( Size = 120 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeView : GtkContainer {
		[ExplicitSize( Size = 992 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkTreeView*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Action<GtkTreeView*, GtkTreePath*, GtkTreeViewColumn*> _row_activated;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Func<GtkTreeView*, GtkTreeIter*, GtkTreePath*, Boolean32> _test_expand_row;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Func<GtkTreeView*, GtkTreeIter*, GtkTreePath*, Boolean32> _test_collapse_row;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkTreeView*, GtkTreeIter*, GtkTreePath*> _row_expanded;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkTreeView*, GtkTreeIter*, GtkTreePath*> _row_collapsed;
			[ExplicitOffset( Offset = 872 )]
			public Functors.Action<GtkTreeView*> _columns_changed;
			[ExplicitOffset( Offset = 880 )]
			public Functors.Action<GtkTreeView*> _cursor_changed;
			[ExplicitOffset( Offset = 888 )]
			public Functors.Func<GtkTreeView*, GtkMovementStep, int, Boolean32> _move_cursor;
			[ExplicitOffset( Offset = 896 )]
			public Functors.Func<GtkTreeView*, Boolean32> _select_all;
			[ExplicitOffset( Offset = 904 )]
			public Functors.Func<GtkTreeView*, Boolean32> _unselect_all;
			[ExplicitOffset( Offset = 912 )]
			public Functors.Func<GtkTreeView*, Boolean32, Boolean32> _select_cursor_row;
			[ExplicitOffset( Offset = 920 )]
			public Functors.Func<GtkTreeView*, Boolean32> _toggle_cursor_row;
			[ExplicitOffset( Offset = 928 )]
			public Functors.Func<GtkTreeView*, Boolean32, Boolean32, Boolean32, Boolean32> _expand_collapse_cursor_row;
			[ExplicitOffset( Offset = 936 )]
			public Functors.Func<GtkTreeView*, Boolean32> _select_cursor_parent;
			[ExplicitOffset( Offset = 944 )]
			public Functors.Func<GtkTreeView*, Boolean32> _start_interactive_search;
			[ExplicitOffset( Offset = 952 )]
			public Functors.Action _gtk_reserved0;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 976 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 984 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 112 )]
		public GtkTreeViewPrivate* _priv;
	}
	[ExplicitSize( Size = 184 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTreeViewColumn : GtkObject {
		[ExplicitSize( Size = 200 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkTreeViewColumn*> _clicked;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 32 )]
		public GtkWidget* _tree_view;
		[ExplicitOffset( Offset = 40 )]
		public GtkWidget* _button;
		[ExplicitOffset( Offset = 48 )]
		public GtkWidget* _child;
		[ExplicitOffset( Offset = 56 )]
		public GtkWidget* _arrow;
		[ExplicitOffset( Offset = 64 )]
		public GtkWidget* _alignment;
		[ExplicitOffset( Offset = 72 )]
		public GdkDrawable* _window;
		[ExplicitOffset( Offset = 80 )]
		public GtkCellEditable* _editable_widget;
		[ExplicitOffset( Offset = 88 )]
		public float _xalign;
		[ExplicitOffset( Offset = 92 )]
		public uint _property_changed_signal;
		[ExplicitOffset( Offset = 96 )]
		public int _spacing;
		[ExplicitOffset( Offset = 100 )]
		public GtkTreeViewColumnSizing _column_type;
		[ExplicitOffset( Offset = 104 )]
		public int _requested_width;
		[ExplicitOffset( Offset = 108 )]
		public int _button_request;
		[ExplicitOffset( Offset = 112 )]
		public int _resized_width;
		[ExplicitOffset( Offset = 116 )]
		public int _width;
		[ExplicitOffset( Offset = 120 )]
		public int _fixed_width;
		[ExplicitOffset( Offset = 124 )]
		public int _min_width;
		[ExplicitOffset( Offset = 128 )]
		public int _max_width;
		[ExplicitOffset( Offset = 132 )]
		public int _drag_x;
		[ExplicitOffset( Offset = 136 )]
		public int _drag_y;
		[ExplicitOffset( Offset = 144 )]
		public sbyte* _title;
		[ExplicitOffset( Offset = 152 )]
		public GList* _cell_list;
		[ExplicitOffset( Offset = 160 )]
		public uint _sort_clicked_signal;
		[ExplicitOffset( Offset = 164 )]
		public uint _sort_column_changed_signal;
		[ExplicitOffset( Offset = 168 )]
		public int _sort_column_id;
		[ExplicitOffset( Offset = 172 )]
		public GtkSortType _sort_order;
		public bool _visible { get { return ( cast<byte*>( &this )[176] & 1 ) != 0; } set { cast<byte*>( &this )[176] &= 254; cast<byte*>( &this )[176] |= cast<byte>( value ) << 0; } }
		public bool _resizable { get { return ( cast<byte*>( &this )[176] & 2 ) != 0; } set { cast<byte*>( &this )[176] &= 253; cast<byte*>( &this )[176] |= cast<byte>( value ) << 1; } }
		public bool _clickable { get { return ( cast<byte*>( &this )[176] & 4 ) != 0; } set { cast<byte*>( &this )[176] &= 251; cast<byte*>( &this )[176] |= cast<byte>( value ) << 2; } }
		public bool _dirty { get { return ( cast<byte*>( &this )[176] & 8 ) != 0; } set { cast<byte*>( &this )[176] &= 247; cast<byte*>( &this )[176] |= cast<byte>( value ) << 3; } }
		public bool _show_sort_indicator { get { return ( cast<byte*>( &this )[176] & 16 ) != 0; } set { cast<byte*>( &this )[176] &= 239; cast<byte*>( &this )[176] |= cast<byte>( value ) << 4; } }
		public bool _maybe_reordered { get { return ( cast<byte*>( &this )[176] & 32 ) != 0; } set { cast<byte*>( &this )[176] &= 223; cast<byte*>( &this )[176] |= cast<byte>( value ) << 5; } }
		public bool _reorderable { get { return ( cast<byte*>( &this )[176] & 64 ) != 0; } set { cast<byte*>( &this )[176] &= 191; cast<byte*>( &this )[176] |= cast<byte>( value ) << 6; } }
		public bool _use_resized_width { get { return ( cast<byte*>( &this )[176] & 128 ) != 0; } set { cast<byte*>( &this )[176] &= 127; cast<byte*>( &this )[176] |= cast<byte>( value ) << 7; } }
		public bool _expand { get { return ( cast<byte*>( &this )[177] & 1 ) != 0; } set { cast<byte*>( &this )[177] &= 254; cast<byte*>( &this )[177] |= cast<byte>( value ) << 0; } }
	}
	public partial struct GtkTreeViewPrivate {
	}
	[ExplicitSize( Size = 56 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkTypeInfo {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String type_name;
		[ExplicitOffset( Offset = 8 )]
		public uint object_size;
		[ExplicitOffset( Offset = 12 )]
		public uint class_size;
		[ExplicitOffset( Offset = 16 )]
		public Functors.Action<void*> class_init_func;
		[ExplicitOffset( Offset = 24 )]
		public Functors.Action<GTypeInstance*, void*> object_init_func;
		[ExplicitOffset( Offset = 32 )]
		public void* reserved_1;
		[ExplicitOffset( Offset = 40 )]
		public void* reserved_2;
		[ExplicitOffset( Offset = 48 )]
		public Functors.Action<void*> base_class_init_func;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkUIManager : GObject {
		[ExplicitSize( Size = 216 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action<GtkUIManager*, GtkWidget*> _add_widget;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action<GtkUIManager*> _actions_changed;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action<GtkUIManager*, GtkAction*, GtkWidget*> _connect_proxy;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action<GtkUIManager*, GtkAction*, GtkWidget*> _disconnect_proxy;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkUIManager*, GtkAction*> _pre_activate;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkUIManager*, GtkAction*> _post_activate;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Func<GtkUIManager*, sbyte*, GtkWidget*> _get_widget;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Func<GtkUIManager*, sbyte*, GtkAction*> _get_action;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action _gtk_reserved2;
		}
		[ExplicitOffset( Offset = 24 )]
		public GtkUIManagerPrivate* _private_data;
	}
	public partial struct GtkUIManagerPrivate {
	}
	[ExplicitSize( Size = 128 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVBox : GtkBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 152 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVButtonBox : GtkButtonBox {
		[ExplicitSize( Size = 824 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 160 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkViewport : GtkBin {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkViewport*, GtkAdjustment*, GtkAdjustment*> _set_scroll_adjustments;
		}
		[ExplicitOffset( Offset = 120 )]
		public GtkShadowType _shadow_type;
		[ExplicitOffset( Offset = 128 )]
		public GdkDrawable* _view_window;
		[ExplicitOffset( Offset = 136 )]
		public GdkDrawable* _bin_window;
		[ExplicitOffset( Offset = 144 )]
		public GtkAdjustment* _hadjustment;
		[ExplicitOffset( Offset = 152 )]
		public GtkAdjustment* _vadjustment;
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVolumeButton : GtkScaleButton {
		[ExplicitSize( Size = 976 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 944 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 952 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 960 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 968 )]
			public new Functors.Action _gtk_reserved4;
		}
	}
	[ExplicitSize( Size = 216 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVPaned : GtkPaned {
		[ExplicitSize( Size = 904 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 168 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVRuler : GtkRuler {
		[ExplicitSize( Size = 768 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 200 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVScale : GtkScale {
		[ExplicitSize( Size = 848 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 192 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVScrollbar : GtkScrollbar {
		[ExplicitSize( Size = 832 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkVSeparator : GtkSeparator {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
		}
	}
	[ExplicitSize( Size = 96 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkWidget : GtkObject {
		[ExplicitSize( Size = 720 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 160 )]
			public uint _activate_signal;
			[ExplicitOffset( Offset = 164 )]
			public uint _set_scroll_adjustments_signal;
			[ExplicitOffset( Offset = 168 )]
			public Functors.Action<GtkWidget*, uint, GParamSpec**> _dispatch_child_properties_changed;
			[ExplicitOffset( Offset = 176 )]
			public Functors.Action<GtkWidget*> _show;
			[ExplicitOffset( Offset = 184 )]
			public Functors.Action<GtkWidget*> _show_all;
			[ExplicitOffset( Offset = 192 )]
			public Functors.Action<GtkWidget*> _hide;
			[ExplicitOffset( Offset = 200 )]
			public Functors.Action<GtkWidget*> _hide_all;
			[ExplicitOffset( Offset = 208 )]
			public Functors.Action<GtkWidget*> _map;
			[ExplicitOffset( Offset = 216 )]
			public Functors.Action<GtkWidget*> _unmap;
			[ExplicitOffset( Offset = 224 )]
			public Functors.Action<GtkWidget*> _realize;
			[ExplicitOffset( Offset = 232 )]
			public Functors.Action<GtkWidget*> _unrealize;
			[ExplicitOffset( Offset = 240 )]
			public Functors.Action<GtkWidget*, GtkRequisition*> _size_request;
			[ExplicitOffset( Offset = 248 )]
			public Functors.Action<GtkWidget*, GdkRectangle*> _size_allocate;
			[ExplicitOffset( Offset = 256 )]
			public Functors.Action<GtkWidget*, GtkStateType> _state_changed;
			[ExplicitOffset( Offset = 264 )]
			public Functors.Action<GtkWidget*, GtkWidget*> _parent_set;
			[ExplicitOffset( Offset = 272 )]
			public Functors.Action<GtkWidget*, GtkWidget*> _hierarchy_changed;
			[ExplicitOffset( Offset = 280 )]
			public Functors.Action<GtkWidget*, GtkStyle*> _style_set;
			[ExplicitOffset( Offset = 288 )]
			public Functors.Action<GtkWidget*, GtkTextDirection> _direction_changed;
			[ExplicitOffset( Offset = 296 )]
			public Functors.Action<GtkWidget*, Boolean32> _grab_notify;
			[ExplicitOffset( Offset = 304 )]
			public Functors.Action<GtkWidget*, GParamSpec*> _child_notify;
			[ExplicitOffset( Offset = 312 )]
			public Functors.Func<GtkWidget*, Boolean32, Boolean32> _mnemonic_activate;
			[ExplicitOffset( Offset = 320 )]
			public Functors.Action<GtkWidget*> _grab_focus;
			[ExplicitOffset( Offset = 328 )]
			public Functors.Func<GtkWidget*, GtkDirectionType, Boolean32> _focus;
			[ExplicitOffset( Offset = 336 )]
			public Functors.Func<GtkWidget*, GdkEvent*, Boolean32> _event;
			[ExplicitOffset( Offset = 344 )]
			public Functors.Func<GtkWidget*, GdkEventButton*, Boolean32> _button_press_event;
			[ExplicitOffset( Offset = 352 )]
			public Functors.Func<GtkWidget*, GdkEventButton*, Boolean32> _button_release_event;
			[ExplicitOffset( Offset = 360 )]
			public Functors.Func<GtkWidget*, GdkEventScroll*, Boolean32> _scroll_event;
			[ExplicitOffset( Offset = 368 )]
			public Functors.Func<GtkWidget*, GdkEventMotion*, Boolean32> _motion_notify_event;
			[ExplicitOffset( Offset = 376 )]
			public Functors.Func<GtkWidget*, GdkEventAny*, Boolean32> _delete_event;
			[ExplicitOffset( Offset = 384 )]
			public Functors.Func<GtkWidget*, GdkEventAny*, Boolean32> _destroy_event;
			[ExplicitOffset( Offset = 392 )]
			public Functors.Func<GtkWidget*, GdkEventExpose*, Boolean32> _expose_event;
			[ExplicitOffset( Offset = 400 )]
			public Functors.Func<GtkWidget*, GdkEventKey*, Boolean32> _key_press_event;
			[ExplicitOffset( Offset = 408 )]
			public Functors.Func<GtkWidget*, GdkEventKey*, Boolean32> _key_release_event;
			[ExplicitOffset( Offset = 416 )]
			public Functors.Func<GtkWidget*, GdkEventCrossing*, Boolean32> _enter_notify_event;
			[ExplicitOffset( Offset = 424 )]
			public Functors.Func<GtkWidget*, GdkEventCrossing*, Boolean32> _leave_notify_event;
			[ExplicitOffset( Offset = 432 )]
			public Functors.Func<GtkWidget*, GdkEventConfigure*, Boolean32> _configure_event;
			[ExplicitOffset( Offset = 440 )]
			public Functors.Func<GtkWidget*, GdkEventFocus*, Boolean32> _focus_in_event;
			[ExplicitOffset( Offset = 448 )]
			public Functors.Func<GtkWidget*, GdkEventFocus*, Boolean32> _focus_out_event;
			[ExplicitOffset( Offset = 456 )]
			public Functors.Func<GtkWidget*, GdkEventAny*, Boolean32> _map_event;
			[ExplicitOffset( Offset = 464 )]
			public Functors.Func<GtkWidget*, GdkEventAny*, Boolean32> _unmap_event;
			[ExplicitOffset( Offset = 472 )]
			public Functors.Func<GtkWidget*, GdkEventProperty*, Boolean32> _property_notify_event;
			[ExplicitOffset( Offset = 480 )]
			public Functors.Func<GtkWidget*, GdkEventSelection*, Boolean32> _selection_clear_event;
			[ExplicitOffset( Offset = 488 )]
			public Functors.Func<GtkWidget*, GdkEventSelection*, Boolean32> _selection_request_event;
			[ExplicitOffset( Offset = 496 )]
			public Functors.Func<GtkWidget*, GdkEventSelection*, Boolean32> _selection_notify_event;
			[ExplicitOffset( Offset = 504 )]
			public Functors.Func<GtkWidget*, GdkEventProximity*, Boolean32> _proximity_in_event;
			[ExplicitOffset( Offset = 512 )]
			public Functors.Func<GtkWidget*, GdkEventProximity*, Boolean32> _proximity_out_event;
			[ExplicitOffset( Offset = 520 )]
			public Functors.Func<GtkWidget*, GdkEventVisibility*, Boolean32> _visibility_notify_event;
			[ExplicitOffset( Offset = 528 )]
			public Functors.Func<GtkWidget*, GdkEventClient*, Boolean32> _client_event;
			[ExplicitOffset( Offset = 536 )]
			public Functors.Func<GtkWidget*, GdkEventAny*, Boolean32> _no_expose_event;
			[ExplicitOffset( Offset = 544 )]
			public Functors.Func<GtkWidget*, GdkEventWindowState*, Boolean32> _window_state_event;
			[ExplicitOffset( Offset = 552 )]
			public Functors.Action<GtkWidget*, GtkSelectionData*, uint, uint> _selection_get;
			[ExplicitOffset( Offset = 560 )]
			public Functors.Action<GtkWidget*, GtkSelectionData*, uint> _selection_received;
			[ExplicitOffset( Offset = 568 )]
			public Functors.Action<GtkWidget*, GdkDragContext*> _drag_begin;
			[ExplicitOffset( Offset = 576 )]
			public Functors.Action<GtkWidget*, GdkDragContext*> _drag_end;
			[ExplicitOffset( Offset = 584 )]
			public Functors.Action<GtkWidget*, GdkDragContext*, GtkSelectionData*, uint, uint> _drag_data_get;
			[ExplicitOffset( Offset = 592 )]
			public Functors.Action<GtkWidget*, GdkDragContext*> _drag_data_delete;
			[ExplicitOffset( Offset = 600 )]
			public Functors.Action<GtkWidget*, GdkDragContext*, uint> _drag_leave;
			[ExplicitOffset( Offset = 608 )]
			public Functors.Func<GtkWidget*, GdkDragContext*, int, int, uint, Boolean32> _drag_motion;
			[ExplicitOffset( Offset = 616 )]
			public Functors.Func<GtkWidget*, GdkDragContext*, int, int, uint, Boolean32> _drag_drop;
			[ExplicitOffset( Offset = 624 )]
			public Functors.Action<GtkWidget*, GdkDragContext*, int, int, GtkSelectionData*, uint, uint> _drag_data_received;
			[ExplicitOffset( Offset = 632 )]
			public Functors.Func<GtkWidget*, Boolean32> _popup_menu;
			[ExplicitOffset( Offset = 640 )]
			public Functors.Func<GtkWidget*, GtkWidgetHelpType, Boolean32> _show_help;
			[ExplicitOffset( Offset = 648 )]
			public Functors.Func<GtkWidget*, AtkObject*> _get_accessible;
			[ExplicitOffset( Offset = 656 )]
			public Functors.Action<GtkWidget*, GdkScreen*> _screen_changed;
			[ExplicitOffset( Offset = 664 )]
			public Functors.Func<GtkWidget*, uint, Boolean32> _can_activate_accel;
			[ExplicitOffset( Offset = 672 )]
			public Functors.Func<GtkWidget*, GdkEventGrabBroken*, Boolean32> _grab_broken_event;
			[ExplicitOffset( Offset = 680 )]
			public Functors.Action<GtkWidget*> _composited_changed;
			[ExplicitOffset( Offset = 688 )]
			public Functors.Func<GtkWidget*, int, int, Boolean32, GtkTooltip*, Boolean32> _query_tooltip;
			[ExplicitOffset( Offset = 696 )]
			public Functors.Action _gtk_reserved5;
			[ExplicitOffset( Offset = 704 )]
			public Functors.Action _gtk_reserved6;
			[ExplicitOffset( Offset = 712 )]
			public Functors.Action _gtk_reserved7;
		}
		[ExplicitOffset( Offset = 32 )]
		public ushort _private_flags;
		[ExplicitOffset( Offset = 34 )]
		public byte _state;
		[ExplicitOffset( Offset = 35 )]
		public byte _saved_state;
		[ExplicitOffset( Offset = 40 )]
		public CUtf8String _name;
		[ExplicitOffset( Offset = 48 )]
		public GtkStyle* _style;
		[ExplicitOffset( Offset = 56 )]
		public GtkRequisition _requisition;
		[ExplicitOffset( Offset = 64 )]
		public GdkRectangle _allocation;
		[ExplicitOffset( Offset = 80 )]
		public GdkDrawable* _window;
		[ExplicitOffset( Offset = 88 )]
		public GtkWidget* _parent;
		public uint ConnectSignalButtonPressEvent<TData>( Functors.Func<thistype*, GdkEventButton*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "button_press_event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalButtonReleaseEvent<TData>( Functors.Func<thistype*, GdkEventButton*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "button_release_event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalDeleteEvent<TData>( Functors.Func<thistype*, GdkEventAny*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "delete-event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalDestroyEvent<TData>( Functors.Func<thistype*, GdkEventAny*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "destroy-event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalExposeEvent<TData>( Functors.Func<thistype*, GdkEventExpose*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "expose_event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalFocusInEvent<TData>( Functors.Func<thistype*, GdkEventFocus*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "focus-in-event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalFocusOutEvent<TData>( Functors.Func<thistype*, GdkEventFocus*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "focus-out-event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalKeyPressEvent<TData>( Functors.Func<thistype*, GdkEventKey*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "key-press-event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalMotionNotifyEvent<TData>( Functors.Func<thistype*, GdkEventMotion*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "motion_notify_event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
		public uint ConnectSignalScrollEvent<TData>( Functors.Func<thistype*, GdkEventScroll*, TData*, Boolean32> value, TData* data ) { return GObjectApi.g_signal_connect_data( &this, "scroll_event", bitcast<Functors.Action<void*, void*>>( value ), data, null, GConnectFlags.None ); }
	}
	[ExplicitSize( Size = 20 )]
	[Alignment( Boundary = 4 )]
	public partial struct GtkWidgetAuxInfo {
		[ExplicitOffset( Offset = 0 )]
		public int x;
		[ExplicitOffset( Offset = 4 )]
		public int y;
		[ExplicitOffset( Offset = 8 )]
		public int width;
		[ExplicitOffset( Offset = 12 )]
		public int height;
		public bool x_set { get { return ( cast<byte*>( &this )[16] & 1 ) != 0; } set { cast<byte*>( &this )[16] &= 254; cast<byte*>( &this )[16] |= cast<byte>( value ) << 0; } }
		public bool y_set { get { return ( cast<byte*>( &this )[16] & 2 ) != 0; } set { cast<byte*>( &this )[16] &= 253; cast<byte*>( &this )[16] |= cast<byte>( value ) << 1; } }
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkWidgetShapeInfo {
		[ExplicitOffset( Offset = 0 )]
		public short offset_x;
		[ExplicitOffset( Offset = 2 )]
		public short offset_y;
		[ExplicitOffset( Offset = 8 )]
		public GdkDrawable* shape_mask;
	}
	[ExplicitSize( Size = 240 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkWindow : GtkBin {
		[ExplicitSize( Size = 904 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 824 )]
			public Functors.Action<GtkWindow*, GtkWidget*> _set_focus;
			[ExplicitOffset( Offset = 832 )]
			public Functors.Func<GtkWindow*, GdkEvent*, Boolean32> _frame_event;
			[ExplicitOffset( Offset = 840 )]
			public Functors.Action<GtkWindow*> _activate_focus;
			[ExplicitOffset( Offset = 848 )]
			public Functors.Action<GtkWindow*> _activate_default;
			[ExplicitOffset( Offset = 856 )]
			public Functors.Action<GtkWindow*, GtkDirectionType> _move_focus;
			[ExplicitOffset( Offset = 864 )]
			public Functors.Action<GtkWindow*> _keys_changed;
			[ExplicitOffset( Offset = 872 )]
			public new Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 880 )]
			public new Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 888 )]
			public new Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 896 )]
			public new Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 120 )]
		public sbyte* _title;
		[ExplicitOffset( Offset = 128 )]
		public CUtf8String _wmclass_name;
		[ExplicitOffset( Offset = 136 )]
		public sbyte* _wmclass_class;
		[ExplicitOffset( Offset = 144 )]
		public sbyte* _wm_role;
		[ExplicitOffset( Offset = 152 )]
		public GtkWidget* _focus_widget;
		[ExplicitOffset( Offset = 160 )]
		public GtkWidget* _default_widget;
		[ExplicitOffset( Offset = 168 )]
		public GtkWindow* _transient_parent;
		[ExplicitOffset( Offset = 176 )]
		public GtkWindowGeometryInfo* _geometry_info;
		[ExplicitOffset( Offset = 184 )]
		public GdkDrawable* _frame;
		[ExplicitOffset( Offset = 192 )]
		public GtkWindowGroup* _group;
		[ExplicitOffset( Offset = 200 )]
		public ushort _configure_request_count;
		public bool _allow_shrink { get { return ( cast<byte*>( &this )[202] & 1 ) != 0; } set { cast<byte*>( &this )[202] &= 254; cast<byte*>( &this )[202] |= cast<byte>( value ) << 0; } }
		public bool _allow_grow { get { return ( cast<byte*>( &this )[202] & 2 ) != 0; } set { cast<byte*>( &this )[202] &= 253; cast<byte*>( &this )[202] |= cast<byte>( value ) << 1; } }
		public bool _configure_notify_received { get { return ( cast<byte*>( &this )[202] & 4 ) != 0; } set { cast<byte*>( &this )[202] &= 251; cast<byte*>( &this )[202] |= cast<byte>( value ) << 2; } }
		public bool _need_default_position { get { return ( cast<byte*>( &this )[202] & 8 ) != 0; } set { cast<byte*>( &this )[202] &= 247; cast<byte*>( &this )[202] |= cast<byte>( value ) << 3; } }
		public bool _need_default_size { get { return ( cast<byte*>( &this )[202] & 16 ) != 0; } set { cast<byte*>( &this )[202] &= 239; cast<byte*>( &this )[202] |= cast<byte>( value ) << 4; } }
		public uint _position { get { return cast<byte*>( &this )[202] >> 5; } set { cast<byte*>( &this )[202] &= 31; cast<byte*>( &this )[202] |= ( cast<byte>( value ) & 224 ) << 5; } }
		public uint _type { get { return cast<byte*>( &this )[203] & 15; } set { cast<byte*>( &this )[203] &= 240; cast<byte*>( &this )[203] |= ( cast<byte>( value ) & 15 ); } }
		public bool _has_user_ref_count { get { return ( cast<byte*>( &this )[203] & 16 ) != 0; } set { cast<byte*>( &this )[203] &= 239; cast<byte*>( &this )[203] |= cast<byte>( value ) << 4; } }
		public bool _has_focus { get { return ( cast<byte*>( &this )[203] & 32 ) != 0; } set { cast<byte*>( &this )[203] &= 223; cast<byte*>( &this )[203] |= cast<byte>( value ) << 5; } }
		public bool _modal { get { return ( cast<byte*>( &this )[203] & 64 ) != 0; } set { cast<byte*>( &this )[203] &= 191; cast<byte*>( &this )[203] |= cast<byte>( value ) << 6; } }
		public bool _destroy_with_parent { get { return ( cast<byte*>( &this )[203] & 128 ) != 0; } set { cast<byte*>( &this )[203] &= 127; cast<byte*>( &this )[203] |= cast<byte>( value ) << 7; } }
		public bool _has_frame { get { return ( cast<byte*>( &this )[204] & 1 ) != 0; } set { cast<byte*>( &this )[204] &= 254; cast<byte*>( &this )[204] |= cast<byte>( value ) << 0; } }
		public bool _iconify_initially { get { return ( cast<byte*>( &this )[204] & 2 ) != 0; } set { cast<byte*>( &this )[204] &= 253; cast<byte*>( &this )[204] |= cast<byte>( value ) << 1; } }
		public bool _stick_initially { get { return ( cast<byte*>( &this )[204] & 4 ) != 0; } set { cast<byte*>( &this )[204] &= 251; cast<byte*>( &this )[204] |= cast<byte>( value ) << 2; } }
		public bool _maximize_initially { get { return ( cast<byte*>( &this )[204] & 8 ) != 0; } set { cast<byte*>( &this )[204] &= 247; cast<byte*>( &this )[204] |= cast<byte>( value ) << 3; } }
		public bool _decorated { get { return ( cast<byte*>( &this )[204] & 16 ) != 0; } set { cast<byte*>( &this )[204] &= 239; cast<byte*>( &this )[204] |= cast<byte>( value ) << 4; } }
		public uint _type_hint { get { return cast<byte*>( &this )[204] >> 5; } set { cast<byte*>( &this )[204] &= 31; cast<byte*>( &this )[204] |= ( cast<byte>( value ) & 224 ) << 5; } }
		public uint _gravity { get { return cast<byte*>( &this )[205] & 31; } set { cast<byte*>( &this )[205] &= 224; cast<byte*>( &this )[205] |= ( cast<byte>( value ) & 31 ); } }
		public bool _is_active { get { return ( cast<byte*>( &this )[205] & 32 ) != 0; } set { cast<byte*>( &this )[205] &= 223; cast<byte*>( &this )[205] |= cast<byte>( value ) << 5; } }
		public bool _has_toplevel_focus { get { return ( cast<byte*>( &this )[205] & 64 ) != 0; } set { cast<byte*>( &this )[205] &= 191; cast<byte*>( &this )[205] |= cast<byte>( value ) << 6; } }
		[ExplicitOffset( Offset = 208 )]
		public uint _frame_left;
		[ExplicitOffset( Offset = 212 )]
		public uint _frame_top;
		[ExplicitOffset( Offset = 216 )]
		public uint _frame_right;
		[ExplicitOffset( Offset = 220 )]
		public uint _frame_bottom;
		[ExplicitOffset( Offset = 224 )]
		public uint _keys_changed_handler;
		[ExplicitOffset( Offset = 228 )]
		public GdkModifierType _mnemonic_modifier;
		[ExplicitOffset( Offset = 232 )]
		public GdkScreen* _screen;
	}
	public partial struct GtkWindowGeometryInfo {
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct GtkWindowGroup : GObject {
		[ExplicitSize( Size = 168 )]
		[Alignment( Boundary = 8 )]
		public new partial struct Class : basetype.Class {
			[ExplicitOffset( Offset = 136 )]
			public Functors.Action _gtk_reserved1;
			[ExplicitOffset( Offset = 144 )]
			public Functors.Action _gtk_reserved2;
			[ExplicitOffset( Offset = 152 )]
			public Functors.Action _gtk_reserved3;
			[ExplicitOffset( Offset = 160 )]
			public Functors.Action _gtk_reserved4;
		}
		[ExplicitOffset( Offset = 24 )]
		public GSList* _grabs;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedStruct_3395A941 {
		[ExplicitOffset( Offset = 0 )]
		public GdkDrawable* pixmap;
		[ExplicitOffset( Offset = 8 )]
		public GdkDrawable* mask;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedStruct_3395AA68 {
		[ExplicitOffset( Offset = 0 )]
		public CUtf8String text;
		[ExplicitOffset( Offset = 8 )]
		public byte spacing;
		[ExplicitOffset( Offset = 16 )]
		public GdkDrawable* pixmap;
		[ExplicitOffset( Offset = 24 )]
		public GdkDrawable* mask;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedStruct_9CDC588F {
		[ExplicitOffset( Offset = 0 )]
		public Functors.Action f;
		[ExplicitOffset( Offset = 8 )]
		public void* d;
	}
	[ExplicitSize( Size = 24 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedUnion_093B9419 {
		[Overlapped( Offset = 0 )]
		public GtkImagePixmapData pixmap;
		[Overlapped( Offset = 0 )]
		public GtkImageImageData image;
		[Overlapped( Offset = 0 )]
		public GtkImagePixbufData pixbuf;
		[Overlapped( Offset = 0 )]
		public GtkImageStockData stock;
		[Overlapped( Offset = 0 )]
		public GtkImageIconSetData icon_set;
		[Overlapped( Offset = 0 )]
		public GtkImageAnimationData anim;
		[Overlapped( Offset = 0 )]
		public GtkImageIconNameData name;
		[Overlapped( Offset = 0 )]
		public GtkImageGIconData gicon;
	}
	[ExplicitSize( Size = 32 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedUnion_3395A966 {
		[Overlapped( Offset = 0 )]
		public sbyte* text;
		[Overlapped( Offset = 0 )]
		public UnnamedStruct_3395A941 pm;
		[Overlapped( Offset = 0 )]
		public UnnamedStruct_3395AA68 pt;
		[Overlapped( Offset = 0 )]
		public GtkWidget* widget;
	}
	[ExplicitSize( Size = 8 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedUnion_6ABCD50B {
		[Overlapped( Offset = 0 )]
		public intptr long_data;
		[Overlapped( Offset = 0 )]
		public double double_data;
		[Overlapped( Offset = 0 )]
		public sbyte* string_data;
	}
	[ExplicitSize( Size = 16 )]
	[Alignment( Boundary = 8 )]
	public partial struct UnnamedUnion_9CDC5A99 {
		[Overlapped( Offset = 0 )]
		public sbyte char_data;
		[Overlapped( Offset = 0 )]
		public byte uchar_data;
		[Overlapped( Offset = 0 )]
		public Boolean32 bool_data;
		[Overlapped( Offset = 0 )]
		public int int_data;
		[Overlapped( Offset = 0 )]
		public uint uint_data;
		[Overlapped( Offset = 0 )]
		public intptr long_data;
		[Overlapped( Offset = 0 )]
		public uintptr ulong_data;
		[Overlapped( Offset = 0 )]
		public float float_data;
		[Overlapped( Offset = 0 )]
		public double double_data;
		[Overlapped( Offset = 0 )]
		public sbyte* string_data;
		[Overlapped( Offset = 0 )]
		public GtkObject* object_data;
		[Overlapped( Offset = 0 )]
		public void* pointer_data;
		[Overlapped( Offset = 0 )]
		public UnnamedStruct_9CDC588F signal_data;
	}
}