diff options
author | Andreas Rumpf <andreas@andi> | 2008-06-22 16:14:11 +0200 |
---|---|---|
committer | Andreas Rumpf <andreas@andi> | 2008-06-22 16:14:11 +0200 |
commit | 405b86068e6a3d39970b9129ceec0a9108464b28 (patch) | |
tree | c0449946f54baae6ea88baf453157ddd7faa8f86 /lib/base/gtk | |
download | Nim-405b86068e6a3d39970b9129ceec0a9108464b28.tar.gz |
Initial import
Diffstat (limited to 'lib/base/gtk')
-rwxr-xr-x | lib/base/gtk/atk.nim | 1368 | ||||
-rwxr-xr-x | lib/base/gtk/gdk2.nim | 3957 | ||||
-rwxr-xr-x | lib/base/gtk/gdk2pixbuf.nim | 279 | ||||
-rwxr-xr-x | lib/base/gtk/gdkglext.nim | 562 | ||||
-rwxr-xr-x | lib/base/gtk/glib2.nim | 4498 | ||||
-rwxr-xr-x | lib/base/gtk/gtk2.nim | 17226 | ||||
-rwxr-xr-x | lib/base/gtk/gtkglext.nim | 48 | ||||
-rwxr-xr-x | lib/base/gtk/gtkhtml.nim | 497 | ||||
-rwxr-xr-x | lib/base/gtk/libglade2.nim | 117 | ||||
-rwxr-xr-x | lib/base/gtk/pango.nim | 1209 | ||||
-rwxr-xr-x | lib/base/gtk/pangoutils.nim | 46 |
11 files changed, 29807 insertions, 0 deletions
diff --git a/lib/base/gtk/atk.nim b/lib/base/gtk/atk.nim new file mode 100755 index 000000000..69eb7c7cc --- /dev/null +++ b/lib/base/gtk/atk.nim @@ -0,0 +1,1368 @@ +import + glib2 + +when defined(windows): + {.define: atkwin.} + const + atklib = "libatk-1.0-0.dll" +else: + const + atklib = "libatk-1.0.so" +type + PAtkImplementor* = pointer + PAtkAction* = pointer + PAtkComponent* = pointer + PAtkDocument* = pointer + PAtkEditableText* = pointer + PAtkHypertext* = pointer + PAtkImage* = pointer + PAtkSelection* = pointer + PAtkStreamableContent* = pointer + PAtkTable* = pointer + PAtkText* = pointer + PAtkValue* = pointer + PAtkRelationSet* = ptr TAtkRelationSet + PAtkStateSet* = ptr TAtkStateSet + PAtkAttributeSet* = ptr TAtkAttributeSet + PAtkCoordType* = ptr TAtkCoordType + TAtkCoordType* = enum + ATK_XY_SCREEN, ATK_XY_WINDOW + PAtkRole* = ptr TAtkRole + TAtkRole* = enum + ATK_ROLE_INVALID, ATK_ROLE_ACCEL_LABEL, ATK_ROLE_ALERT, ATK_ROLE_ANIMATION, + ATK_ROLE_ARROW, ATK_ROLE_CALENDAR, ATK_ROLE_CANVAS, ATK_ROLE_CHECK_BOX, + ATK_ROLE_CHECK_MENU_ITEM, ATK_ROLE_COLOR_CHOOSER, ATK_ROLE_COLUMN_HEADER, + ATK_ROLE_COMBO_BOX, ATK_ROLE_DATE_EDITOR, ATK_ROLE_DESKTOP_ICON, + ATK_ROLE_DESKTOP_FRAME, ATK_ROLE_DIAL, ATK_ROLE_DIALOG, + ATK_ROLE_DIRECTORY_PANE, ATK_ROLE_DRAWING_AREA, ATK_ROLE_FILE_CHOOSER, + ATK_ROLE_FILLER, ATK_ROLE_FONT_CHOOSER, ATK_ROLE_FRAME, ATK_ROLE_GLASS_PANE, + ATK_ROLE_HTML_CONTAINER, ATK_ROLE_ICON, ATK_ROLE_IMAGE, + ATK_ROLE_INTERNAL_FRAME, ATK_ROLE_LABEL, ATK_ROLE_LAYERED_PANE, + ATK_ROLE_LIST, ATK_ROLE_LIST_ITEM, ATK_ROLE_MENU, ATK_ROLE_MENU_BAR, + ATK_ROLE_MENU_ITEM, ATK_ROLE_OPTION_PANE, ATK_ROLE_PAGE_TAB, + ATK_ROLE_PAGE_TAB_LIST, ATK_ROLE_PANEL, ATK_ROLE_PASSWORD_TEXT, + ATK_ROLE_POPUP_MENU, ATK_ROLE_PROGRESS_BAR, ATK_ROLE_PUSH_BUTTON, + ATK_ROLE_RADIO_BUTTON, ATK_ROLE_RADIO_MENU_ITEM, ATK_ROLE_ROOT_PANE, + ATK_ROLE_ROW_HEADER, ATK_ROLE_SCROLL_BAR, ATK_ROLE_SCROLL_PANE, + ATK_ROLE_SEPARATOR, ATK_ROLE_SLIDER, ATK_ROLE_SPLIT_PANE, + ATK_ROLE_SPIN_BUTTON, ATK_ROLE_STATUSBAR, ATK_ROLE_TABLE, + ATK_ROLE_TABLE_CELL, ATK_ROLE_TABLE_COLUMN_HEADER, + ATK_ROLE_TABLE_ROW_HEADER, ATK_ROLE_TEAR_OFF_MENU_ITEM, ATK_ROLE_TERMINAL, + ATK_ROLE_TEXT, ATK_ROLE_TOGGLE_BUTTON, ATK_ROLE_TOOL_BAR, ATK_ROLE_TOOL_TIP, + ATK_ROLE_TREE, ATK_ROLE_TREE_TABLE, ATK_ROLE_UNKNOWN, ATK_ROLE_VIEWPORT, + ATK_ROLE_WINDOW, ATK_ROLE_LAST_DEFINED + PAtkLayer* = ptr TAtkLayer + TAtkLayer* = enum + ATK_LAYER_INVALID, ATK_LAYER_BACKGROUND, ATK_LAYER_CANVAS, ATK_LAYER_WIDGET, + ATK_LAYER_MDI, ATK_LAYER_POPUP, ATK_LAYER_OVERLAY + PAtkPropertyValues* = ptr TAtkPropertyValues + TAtkPropertyValues* = record + property_name*: cstring + old_value*: TGValue + new_value*: TGValue + + TAtkFunction* = proc (data: gpointer): gboolean{.cdecl.} + PAtkObject* = ptr TAtkObject + PPAtkObject* = ptr PAtkObject + TAtkObject* = object of TGObject + description*: cstring + name*: cstring + accessible_parent*: PAtkObject + role*: TAtkRole + relation_set*: PAtkRelationSet + layer*: TAtkLayer + + TAtkPropertyChangeHandler* = proc (para1: PAtkObject, + para2: PAtkPropertyValues){.cdecl.} + PAtkObjectClass* = ptr TAtkObjectClass + TAtkObjectClass* = object of TGObjectClass + get_name*: proc (accessible: PAtkObject): cstring{.cdecl.} + get_description*: proc (accessible: PAtkObject): cstring{.cdecl.} + get_parent*: proc (accessible: PAtkObject): PAtkObject{.cdecl.} + get_n_children*: proc (accessible: PAtkObject): gint{.cdecl.} + ref_child*: proc (accessible: PAtkObject, i: gint): PAtkObject{.cdecl.} + get_index_in_parent*: proc (accessible: PAtkObject): gint{.cdecl.} + ref_relation_set*: proc (accessible: PAtkObject): PAtkRelationSet{.cdecl.} + get_role*: proc (accessible: PAtkObject): TAtkRole{.cdecl.} + get_layer*: proc (accessible: PAtkObject): TAtkLayer{.cdecl.} + get_mdi_zorder*: proc (accessible: PAtkObject): gint{.cdecl.} + ref_state_set*: proc (accessible: PAtkObject): PAtkStateSet{.cdecl.} + set_name*: proc (accessible: PAtkObject, name: cstring){.cdecl.} + set_description*: proc (accessible: PAtkObject, description: cstring){.cdecl.} + set_parent*: proc (accessible: PAtkObject, parent: PAtkObject){.cdecl.} + set_role*: proc (accessible: PAtkObject, role: TAtkRole){.cdecl.} + connect_property_change_handler*: proc (accessible: PAtkObject, + handler: TAtkPropertyChangeHandler): guint{.cdecl.} + remove_property_change_handler*: proc (accessible: PAtkObject, + handler_id: guint){.cdecl.} + initialize*: proc (accessible: PAtkObject, data: gpointer){.cdecl.} + children_changed*: proc (accessible: PAtkObject, change_index: guint, + changed_child: gpointer){.cdecl.} + focus_event*: proc (accessible: PAtkObject, focus_in: gboolean){.cdecl.} + property_change*: proc (accessible: PAtkObject, values: PAtkPropertyValues){. + cdecl.} + state_change*: proc (accessible: PAtkObject, name: cstring, + state_set: gboolean){.cdecl.} + visible_data_changed*: proc (accessible: PAtkObject){.cdecl.} + pad1*: TAtkFunction + pad2*: TAtkFunction + pad3*: TAtkFunction + pad4*: TAtkFunction + + PAtkImplementorIface* = ptr TAtkImplementorIface + TAtkImplementorIface* = object of TGTypeInterface + ref_accessible*: proc (implementor: PAtkImplementor): PAtkObject{.cdecl.} + + PAtkActionIface* = ptr TAtkActionIface + TAtkActionIface* = object of TGTypeInterface + do_action*: proc (action: PAtkAction, i: gint): gboolean{.cdecl.} + get_n_actions*: proc (action: PAtkAction): gint{.cdecl.} + get_description*: proc (action: PAtkAction, i: gint): cstring{.cdecl.} + get_name*: proc (action: PAtkAction, i: gint): cstring{.cdecl.} + get_keybinding*: proc (action: PAtkAction, i: gint): cstring{.cdecl.} + set_description*: proc (action: PAtkAction, i: gint, desc: cstring): gboolean{. + cdecl.} + pad1*: TAtkFunction + pad2*: TAtkFunction + + TAtkFocusHandler* = proc (para1: PAtkObject, para2: gboolean){.cdecl.} + PAtkComponentIface* = ptr TAtkComponentIface + TAtkComponentIface* = object of TGTypeInterface + add_focus_handler*: proc (component: PAtkComponent, + handler: TAtkFocusHandler): guint{.cdecl.} + contains*: proc (component: PAtkComponent, x: gint, y: gint, + coord_type: TAtkCoordType): gboolean{.cdecl.} + ref_accessible_at_point*: proc (component: PAtkComponent, x: gint, y: gint, + coord_type: TAtkCoordType): PAtkObject{. + cdecl.} + get_extents*: proc (component: PAtkComponent, x: Pgint, y: Pgint, + width: Pgint, height: Pgint, coord_type: TAtkCoordType){. + cdecl.} + get_position*: proc (component: PAtkComponent, x: Pgint, y: Pgint, + coord_type: TAtkCoordType){.cdecl.} + get_size*: proc (component: PAtkComponent, width: Pgint, height: Pgint){. + cdecl.} + grab_focus*: proc (component: PAtkComponent): gboolean{.cdecl.} + remove_focus_handler*: proc (component: PAtkComponent, handler_id: guint){. + cdecl.} + set_extents*: proc (component: PAtkComponent, x: gint, y: gint, width: gint, + height: gint, coord_type: TAtkCoordType): gboolean{. + cdecl.} + set_position*: proc (component: PAtkComponent, x: gint, y: gint, + coord_type: TAtkCoordType): gboolean{.cdecl.} + set_size*: proc (component: PAtkComponent, width: gint, height: gint): gboolean{. + cdecl.} + get_layer*: proc (component: PAtkComponent): TAtkLayer{.cdecl.} + get_mdi_zorder*: proc (component: PAtkComponent): gint{.cdecl.} + pad1*: TAtkFunction + pad2*: TAtkFunction + + PAtkDocumentIface* = ptr TAtkDocumentIface + TAtkDocumentIface* = object of TGTypeInterface + get_document_type*: proc (document: PAtkDocument): cstring{.cdecl.} + get_document*: proc (document: PAtkDocument): gpointer{.cdecl.} + pad1*: TAtkFunction + pad2*: TAtkFunction + pad3*: TAtkFunction + pad4*: TAtkFunction + pad5*: TAtkFunction + pad6*: TAtkFunction + pad7*: TAtkFunction + pad8*: TAtkFunction + + PAtkEditableTextIface* = ptr TAtkEditableTextIface + TAtkEditableTextIface* = object of TGTypeInterface + set_run_attributes*: proc (text: PAtkEditableText, + attrib_set: PAtkAttributeSet, start_offset: gint, + end_offset: gint): gboolean{.cdecl.} + set_text_contents*: proc (text: PAtkEditableText, `string`: cstring){.cdecl.} + insert_text*: proc (text: PAtkEditableText, `string`: cstring, length: gint, + position: Pgint){.cdecl.} + copy_text*: proc (text: PAtkEditableText, start_pos: gint, end_pos: gint){. + cdecl.} + cut_text*: proc (text: PAtkEditableText, start_pos: gint, end_pos: gint){. + cdecl.} + delete_text*: proc (text: PAtkEditableText, start_pos: gint, end_pos: gint){. + cdecl.} + paste_text*: proc (text: PAtkEditableText, position: gint){.cdecl.} + pad1*: TAtkFunction + pad2*: TAtkFunction + + PAtkGObjectAccessible* = ptr TAtkGObjectAccessible + TAtkGObjectAccessible* = object of TAtkObject + + PAtkGObjectAccessibleClass* = ptr TAtkGObjectAccessibleClass + TAtkGObjectAccessibleClass* = object of TAtkObjectClass + pad5*: TAtkFunction + pad6*: TAtkFunction + + PAtkHyperlink* = ptr TAtkHyperlink + TAtkHyperlink* = object of TGObject + + PAtkHyperlinkClass* = ptr TAtkHyperlinkClass + TAtkHyperlinkClass* = object of TGObjectClass + get_uri*: proc (link: PAtkHyperlink, i: gint): cstring{.cdecl.} + get_object*: proc (link: PAtkHyperlink, i: gint): PAtkObject{.cdecl.} + get_end_index*: proc (link: PAtkHyperlink): gint{.cdecl.} + get_start_index*: proc (link: PAtkHyperlink): gint{.cdecl.} + is_valid*: proc (link: PAtkHyperlink): gboolean{.cdecl.} + get_n_anchors*: proc (link: PAtkHyperlink): gint{.cdecl.} + pad7*: TAtkFunction + pad8*: TAtkFunction + pad9*: TAtkFunction + pad10*: TAtkFunction + + PAtkHypertextIface* = ptr TAtkHypertextIface + TAtkHypertextIface* = object of TGTypeInterface + get_link*: proc (hypertext: PAtkHypertext, link_index: gint): PAtkHyperlink{. + cdecl.} + get_n_links*: proc (hypertext: PAtkHypertext): gint{.cdecl.} + get_link_index*: proc (hypertext: PAtkHypertext, char_index: gint): gint{. + cdecl.} + pad11*: TAtkFunction + pad12*: TAtkFunction + pad13*: TAtkFunction + pad14*: TAtkFunction + + PAtkImageIface* = ptr TAtkImageIface + TAtkImageIface* = object of TGTypeInterface + get_image_position*: proc (image: PAtkImage, x: Pgint, y: Pgint, + coord_type: TAtkCoordType){.cdecl.} + get_image_description*: proc (image: PAtkImage): cstring{.cdecl.} + get_image_size*: proc (image: PAtkImage, width: Pgint, height: Pgint){.cdecl.} + set_image_description*: proc (image: PAtkImage, description: cstring): gboolean{. + cdecl.} + pad15*: TAtkFunction + pad16*: TAtkFunction + + PAtkObjectFactory* = ptr TAtkObjectFactory + TAtkObjectFactory* = object of TGObject + + PAtkObjectFactoryClass* = ptr TAtkObjectFactoryClass + TAtkObjectFactoryClass* = object of TGObjectClass + create_accessible*: proc (obj: PGObject): PAtkObject{.cdecl.} + invalidate*: proc (factory: PAtkObjectFactory){.cdecl.} + get_accessible_type*: proc (): GType{.cdecl.} + pad17*: TAtkFunction + pad18*: TAtkFunction + + PAtkRegistry* = ptr TAtkRegistry + TAtkRegistry* = object of TGObject + factory_type_registry*: PGHashTable + factory_singleton_cache*: PGHashTable + + PAtkRegistryClass* = ptr TAtkRegistryClass + TAtkRegistryClass* = object of TGObjectClass + + PAtkRelationType* = ptr TAtkRelationType + TAtkRelationType* = enum + ATK_RELATION_NULL, ATK_RELATION_CONTROLLED_BY, ATK_RELATION_CONTROLLER_FOR, + ATK_RELATION_LABEL_FOR, ATK_RELATION_LABELLED_BY, ATK_RELATION_MEMBER_OF, + ATK_RELATION_NODE_CHILD_OF, ATK_RELATION_LAST_DEFINED + PAtkRelation* = ptr TAtkRelation + PGPtrArray = pointer + TAtkRelation* = object of TGObject + target*: PGPtrArray + relationship*: TAtkRelationType + + PAtkRelationClass* = ptr TAtkRelationClass + TAtkRelationClass* = object of TGObjectClass + + TAtkRelationSet* = object of TGObject + relations*: PGPtrArray + + PAtkRelationSetClass* = ptr TAtkRelationSetClass + TAtkRelationSetClass* = object of TGObjectClass + pad19*: TAtkFunction + pad20*: TAtkFunction + + PAtkSelectionIface* = ptr TAtkSelectionIface + TAtkSelectionIface* = object of TGTypeInterface + add_selection*: proc (selection: PAtkSelection, i: gint): gboolean{.cdecl.} + clear_selection*: proc (selection: PAtkSelection): gboolean{.cdecl.} + ref_selection*: proc (selection: PAtkSelection, i: gint): PAtkObject{.cdecl.} + get_selection_count*: proc (selection: PAtkSelection): gint{.cdecl.} + is_child_selected*: proc (selection: PAtkSelection, i: gint): gboolean{. + cdecl.} + remove_selection*: proc (selection: PAtkSelection, i: gint): gboolean{.cdecl.} + select_all_selection*: proc (selection: PAtkSelection): gboolean{.cdecl.} + selection_changed*: proc (selection: PAtkSelection){.cdecl.} + pad1*: TAtkFunction + pad2*: TAtkFunction + + PAtkStateType* = ptr TAtkStateType + TAtkStateType* = enum + ATK_STATE_INVALID, ATK_STATE_ACTIVE, ATK_STATE_ARMED, ATK_STATE_BUSY, + ATK_STATE_CHECKED, ATK_STATE_DEFUNCT, ATK_STATE_EDITABLE, ATK_STATE_ENABLED, + ATK_STATE_EXPANDABLE, ATK_STATE_EXPANDED, ATK_STATE_FOCUSABLE, + ATK_STATE_FOCUSED, ATK_STATE_HORIZONTAL, ATK_STATE_ICONIFIED, + ATK_STATE_MODAL, ATK_STATE_MULTI_LINE, ATK_STATE_MULTISELECTABLE, + ATK_STATE_OPAQUE, ATK_STATE_PRESSED, ATK_STATE_RESIZABLE, + ATK_STATE_SELECTABLE, ATK_STATE_SELECTED, ATK_STATE_SENSITIVE, + ATK_STATE_SHOWING, ATK_STATE_SINGLE_LINE, ATK_STATE_STALE, + ATK_STATE_TRANSIENT, ATK_STATE_VERTICAL, ATK_STATE_VISIBLE, + ATK_STATE_LAST_DEFINED + PAtkState* = ptr TAtkState + TAtkState* = guint64 + TAtkStateSet* = object of TGObject + + PAtkStateSetClass* = ptr TAtkStateSetClass + TAtkStateSetClass* = object of TGObjectClass + + PAtkStreamableContentIface* = ptr TAtkStreamableContentIface + TAtkStreamableContentIface* = object of TGTypeInterface + get_n_mime_types*: proc (streamable: PAtkStreamableContent): gint{.cdecl.} + get_mime_type*: proc (streamable: PAtkStreamableContent, i: gint): cstring{. + cdecl.} + get_stream*: proc (streamable: PAtkStreamableContent, mime_type: cstring): PGIOChannel{. + cdecl.} + pad21*: TAtkFunction + pad22*: TAtkFunction + pad23*: TAtkFunction + pad24*: TAtkFunction + + PAtkTableIface* = ptr TAtkTableIface + TAtkTableIface* = object of TGTypeInterface + ref_at*: proc (table: PAtkTable, row: gint, column: gint): PAtkObject{.cdecl.} + get_index_at*: proc (table: PAtkTable, row: gint, column: gint): gint{.cdecl.} + get_column_at_index*: proc (table: PAtkTable, index: gint): gint{.cdecl.} + get_row_at_index*: proc (table: PAtkTable, index: gint): gint{.cdecl.} + get_n_columns*: proc (table: PAtkTable): gint{.cdecl.} + get_n_rows*: proc (table: PAtkTable): gint{.cdecl.} + get_column_extent_at*: proc (table: PAtkTable, row: gint, column: gint): gint{. + cdecl.} + get_row_extent_at*: proc (table: PAtkTable, row: gint, column: gint): gint{. + cdecl.} + get_caption*: proc (table: PAtkTable): PAtkObject{.cdecl.} + get_column_description*: proc (table: PAtkTable, column: gint): cstring{. + cdecl.} + get_column_header*: proc (table: PAtkTable, column: gint): PAtkObject{.cdecl.} + get_row_description*: proc (table: PAtkTable, row: gint): cstring{.cdecl.} + get_row_header*: proc (table: PAtkTable, row: gint): PAtkObject{.cdecl.} + get_summary*: proc (table: PAtkTable): PAtkObject{.cdecl.} + set_caption*: proc (table: PAtkTable, caption: PAtkObject){.cdecl.} + set_column_description*: proc (table: PAtkTable, column: gint, + description: cstring){.cdecl.} + set_column_header*: proc (table: PAtkTable, column: gint, header: PAtkObject){. + cdecl.} + set_row_description*: proc (table: PAtkTable, row: gint, description: cstring){. + cdecl.} + set_row_header*: proc (table: PAtkTable, row: gint, header: PAtkObject){. + cdecl.} + set_summary*: proc (table: PAtkTable, accessible: PAtkObject){.cdecl.} + get_selected_columns*: proc (table: PAtkTable, selected: PPgint): gint{. + cdecl.} + get_selected_rows*: proc (table: PAtkTable, selected: PPgint): gint{.cdecl.} + is_column_selected*: proc (table: PAtkTable, column: gint): gboolean{.cdecl.} + is_row_selected*: proc (table: PAtkTable, row: gint): gboolean{.cdecl.} + is_selected*: proc (table: PAtkTable, row: gint, column: gint): gboolean{. + cdecl.} + add_row_selection*: proc (table: PAtkTable, row: gint): gboolean{.cdecl.} + remove_row_selection*: proc (table: PAtkTable, row: gint): gboolean{.cdecl.} + add_column_selection*: proc (table: PAtkTable, column: gint): gboolean{. + cdecl.} + remove_column_selection*: proc (table: PAtkTable, column: gint): gboolean{. + cdecl.} + row_inserted*: proc (table: PAtkTable, row: gint, num_inserted: gint){.cdecl.} + column_inserted*: proc (table: PAtkTable, column: gint, num_inserted: gint){. + cdecl.} + row_deleted*: proc (table: PAtkTable, row: gint, num_deleted: gint){.cdecl.} + column_deleted*: proc (table: PAtkTable, column: gint, num_deleted: gint){. + cdecl.} + row_reordered*: proc (table: PAtkTable){.cdecl.} + column_reordered*: proc (table: PAtkTable){.cdecl.} + model_changed*: proc (table: PAtkTable){.cdecl.} + pad25*: TAtkFunction + pad26*: TAtkFunction + pad27*: TAtkFunction + pad28*: TAtkFunction + + TAtkAttributeSet* = TGSList + PAtkAttribute* = ptr TAtkAttribute + TAtkAttribute* = record + name*: cstring + value*: cstring + + PAtkTextAttribute* = ptr TAtkTextAttribute + TAtkTextAttribute* = enum + ATK_TEXT_ATTR_INVALID, ATK_TEXT_ATTR_LEFT_MARGIN, + ATK_TEXT_ATTR_RIGHT_MARGIN, ATK_TEXT_ATTR_INDENT, ATK_TEXT_ATTR_INVISIBLE, + ATK_TEXT_ATTR_EDITABLE, ATK_TEXT_ATTR_PIXELS_ABOVE_LINES, + ATK_TEXT_ATTR_PIXELS_BELOW_LINES, ATK_TEXT_ATTR_PIXELS_INSIDE_WRAP, + ATK_TEXT_ATTR_BG_FULL_HEIGHT, ATK_TEXT_ATTR_RISE, ATK_TEXT_ATTR_UNDERLINE, + ATK_TEXT_ATTR_STRIKETHROUGH, ATK_TEXT_ATTR_SIZE, ATK_TEXT_ATTR_SCALE, + ATK_TEXT_ATTR_WEIGHT, ATK_TEXT_ATTR_LANGUAGE, ATK_TEXT_ATTR_FAMILY_NAME, + ATK_TEXT_ATTR_BG_COLOR, ATK_TEXT_ATTR_FG_COLOR, ATK_TEXT_ATTR_BG_STIPPLE, + ATK_TEXT_ATTR_FG_STIPPLE, ATK_TEXT_ATTR_WRAP_MODE, ATK_TEXT_ATTR_DIRECTION, + ATK_TEXT_ATTR_JUSTIFICATION, ATK_TEXT_ATTR_STRETCH, ATK_TEXT_ATTR_VARIANT, + ATK_TEXT_ATTR_STYLE, ATK_TEXT_ATTR_LAST_DEFINED + PAtkTextBoundary* = ptr TAtkTextBoundary + TAtkTextBoundary* = enum + ATK_TEXT_BOUNDARY_CHAR, ATK_TEXT_BOUNDARY_WORD_START, + ATK_TEXT_BOUNDARY_WORD_END, ATK_TEXT_BOUNDARY_SENTENCE_START, + ATK_TEXT_BOUNDARY_SENTENCE_END, ATK_TEXT_BOUNDARY_LINE_START, + ATK_TEXT_BOUNDARY_LINE_END + PAtkTextIface* = ptr TAtkTextIface + TAtkTextIface* = object of TGTypeInterface + get_text*: proc (text: PAtkText, start_offset: gint, end_offset: gint): cstring{. + cdecl.} + get_text_after_offset*: proc (text: PAtkText, offset: gint, + boundary_type: TAtkTextBoundary, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl.} + get_text_at_offset*: proc (text: PAtkText, offset: gint, + boundary_type: TAtkTextBoundary, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl.} + get_character_at_offset*: proc (text: PAtkText, offset: gint): gunichar{. + cdecl.} + get_text_before_offset*: proc (text: PAtkText, offset: gint, + boundary_type: TAtkTextBoundary, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl.} + get_caret_offset*: proc (text: PAtkText): gint{.cdecl.} + get_run_attributes*: proc (text: PAtkText, offset: gint, + start_offset: Pgint, end_offset: Pgint): PAtkAttributeSet{. + cdecl.} + get_default_attributes*: proc (text: PAtkText): PAtkAttributeSet{.cdecl.} + get_character_extents*: proc (text: PAtkText, offset: gint, x: Pgint, + y: Pgint, width: Pgint, height: Pgint, + coords: TAtkCoordType){.cdecl.} + get_character_count*: proc (text: PAtkText): gint{.cdecl.} + get_offset_at_point*: proc (text: PAtkText, x: gint, y: gint, + coords: TAtkCoordType): gint{.cdecl.} + get_n_selections*: proc (text: PAtkText): gint{.cdecl.} + get_selection*: proc (text: PAtkText, selection_num: gint, + start_offset: Pgint, end_offset: Pgint): cstring{.cdecl.} + add_selection*: proc (text: PAtkText, start_offset: gint, end_offset: gint): gboolean{. + cdecl.} + remove_selection*: proc (text: PAtkText, selection_num: gint): gboolean{. + cdecl.} + set_selection*: proc (text: PAtkText, selection_num: gint, + start_offset: gint, end_offset: gint): gboolean{.cdecl.} + set_caret_offset*: proc (text: PAtkText, offset: gint): gboolean{.cdecl.} + text_changed*: proc (text: PAtkText, position: gint, length: gint){.cdecl.} + text_caret_moved*: proc (text: PAtkText, location: gint){.cdecl.} + text_selection_changed*: proc (text: PAtkText){.cdecl.} + pad29*: TAtkFunction + pad30*: TAtkFunction + pad31*: TAtkFunction + pad32*: TAtkFunction + + TAtkEventListener* = proc (para1: PAtkObject){.cdecl.} + TAtkEventListenerInitProc* = proc () + TAtkEventListenerInit* = proc (para1: TAtkEventListenerInitProc){.cdecl.} + PAtkKeyEventStruct* = ptr TAtkKeyEventStruct + TAtkKeyEventStruct* = record + `type`*: gint + state*: guint + keyval*: guint + length*: gint + string*: cstring + keycode*: guint16 + timestamp*: guint32 + + TAtkKeySnoopFunc* = proc (event: PAtkKeyEventStruct, func_data: gpointer): gint{. + cdecl.} + PAtkKeyEventType* = ptr TAtkKeyEventType + TAtkKeyEventType* = enum + ATK_KEY_EVENT_PRESS, ATK_KEY_EVENT_RELEASE, ATK_KEY_EVENT_LAST_DEFINED + PAtkUtil* = ptr TAtkUtil + TAtkUtil* = object of TGObject + + PAtkUtilClass* = ptr TAtkUtilClass + TAtkUtilClass* = object of TGObjectClass + add_global_event_listener*: proc (listener: TGSignalEmissionHook, + event_type: cstring): guint{.cdecl.} + remove_global_event_listener*: proc (listener_id: guint){.cdecl.} + add_key_event_listener*: proc (listener: TAtkKeySnoopFunc, data: gpointer): guint{. + cdecl.} + remove_key_event_listener*: proc (listener_id: guint){.cdecl.} + get_root*: proc (): PAtkObject{.cdecl.} + get_toolkit_name*: proc (): cstring{.cdecl.} + get_toolkit_version*: proc (): cstring{.cdecl.} + + PAtkValueIface* = ptr TAtkValueIface + TAtkValueIface* = object of TGTypeInterface + get_current_value*: proc (obj: PAtkValue, value: PGValue){.cdecl.} + get_maximum_value*: proc (obj: PAtkValue, value: PGValue){.cdecl.} + get_minimum_value*: proc (obj: PAtkValue, value: PGValue){.cdecl.} + set_current_value*: proc (obj: PAtkValue, value: PGValue): gboolean{.cdecl.} + pad33*: TAtkFunction + pad34*: TAtkFunction + + +proc atk_role_register*(name: cstring): TAtkRole{.cdecl, dynlib: atklib, + importc: "atk_role_register".} +proc atk_object_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_object_get_type".} +proc ATK_TYPE_OBJECT*(): GType +proc ATK_OBJECT*(obj: pointer): PAtkObject +proc ATK_OBJECT_CLASS*(klass: pointer): PAtkObjectClass +proc ATK_IS_OBJECT*(obj: pointer): bool +proc ATK_IS_OBJECT_CLASS*(klass: pointer): bool +proc ATK_OBJECT_GET_CLASS*(obj: pointer): PAtkObjectClass +proc ATK_TYPE_IMPLEMENTOR*(): GType +proc ATK_IS_IMPLEMENTOR*(obj: pointer): bool +proc ATK_IMPLEMENTOR*(obj: pointer): PAtkImplementor +proc ATK_IMPLEMENTOR_GET_IFACE*(obj: pointer): PAtkImplementorIface +proc atk_implementor_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_implementor_get_type".} +proc atk_implementor_ref_accessible*(implementor: PAtkImplementor): PAtkObject{. + cdecl, dynlib: atklib, importc: "atk_implementor_ref_accessible".} +proc atk_object_get_name*(accessible: PAtkObject): cstring{.cdecl, + dynlib: atklib, importc: "atk_object_get_name".} +proc atk_object_get_description*(accessible: PAtkObject): cstring{.cdecl, + dynlib: atklib, importc: "atk_object_get_description".} +proc atk_object_get_parent*(accessible: PAtkObject): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_object_get_parent".} +proc atk_object_get_n_accessible_children*(accessible: PAtkObject): gint{.cdecl, + dynlib: atklib, importc: "atk_object_get_n_accessible_children".} +proc atk_object_ref_accessible_child*(accessible: PAtkObject, i: gint): PAtkObject{. + cdecl, dynlib: atklib, importc: "atk_object_ref_accessible_child".} +proc atk_object_ref_relation_set*(accessible: PAtkObject): PAtkRelationSet{. + cdecl, dynlib: atklib, importc: "atk_object_ref_relation_set".} +proc atk_object_get_role*(accessible: PAtkObject): TAtkRole{.cdecl, + dynlib: atklib, importc: "atk_object_get_role".} +proc atk_object_get_layer*(accessible: PAtkObject): TAtkLayer{.cdecl, + dynlib: atklib, importc: "atk_object_get_layer".} +proc atk_object_get_mdi_zorder*(accessible: PAtkObject): gint{.cdecl, + dynlib: atklib, importc: "atk_object_get_mdi_zorder".} +proc atk_object_ref_state_set*(accessible: PAtkObject): PAtkStateSet{.cdecl, + dynlib: atklib, importc: "atk_object_ref_state_set".} +proc atk_object_get_index_in_parent*(accessible: PAtkObject): gint{.cdecl, + dynlib: atklib, importc: "atk_object_get_index_in_parent".} +proc atk_object_set_name*(accessible: PAtkObject, name: cstring){.cdecl, + dynlib: atklib, importc: "atk_object_set_name".} +proc atk_object_set_description*(accessible: PAtkObject, description: cstring){. + cdecl, dynlib: atklib, importc: "atk_object_set_description".} +proc atk_object_set_parent*(accessible: PAtkObject, parent: PAtkObject){.cdecl, + dynlib: atklib, importc: "atk_object_set_parent".} +proc atk_object_set_role*(accessible: PAtkObject, role: TAtkRole){.cdecl, + dynlib: atklib, importc: "atk_object_set_role".} +proc atk_object_connect_property_change_handler*(accessible: PAtkObject, + handler: TAtkPropertyChangeHandler): guint{.cdecl, dynlib: atklib, + importc: "atk_object_connect_property_change_handler".} +proc atk_object_remove_property_change_handler*(accessible: PAtkObject, + handler_id: guint){.cdecl, dynlib: atklib, + importc: "atk_object_remove_property_change_handler".} +proc atk_object_notify_state_change*(accessible: PAtkObject, state: TAtkState, + value: gboolean){.cdecl, dynlib: atklib, + importc: "atk_object_notify_state_change".} +proc atk_object_initialize*(accessible: PAtkObject, data: gpointer){.cdecl, + dynlib: atklib, importc: "atk_object_initialize".} +proc atk_role_get_name*(role: TAtkRole): cstring{.cdecl, dynlib: atklib, + importc: "atk_role_get_name".} +proc atk_role_for_name*(name: cstring): TAtkRole{.cdecl, dynlib: atklib, + importc: "atk_role_for_name".} +proc ATK_TYPE_ACTION*(): GType +proc ATK_IS_ACTION*(obj: pointer): bool +proc ATK_ACTION*(obj: pointer): PAtkAction +proc ATK_ACTION_GET_IFACE*(obj: pointer): PAtkActionIface +proc atk_action_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_action_get_type".} +proc atk_action_do_action*(action: PAtkAction, i: gint): gboolean{.cdecl, + dynlib: atklib, importc: "atk_action_do_action".} +proc atk_action_get_n_actions*(action: PAtkAction): gint{.cdecl, dynlib: atklib, + importc: "atk_action_get_n_actions".} +proc atk_action_get_description*(action: PAtkAction, i: gint): cstring{.cdecl, + dynlib: atklib, importc: "atk_action_get_description".} +proc atk_action_get_name*(action: PAtkAction, i: gint): cstring{.cdecl, + dynlib: atklib, importc: "atk_action_get_name".} +proc atk_action_get_keybinding*(action: PAtkAction, i: gint): cstring{.cdecl, + dynlib: atklib, importc: "atk_action_get_keybinding".} +proc atk_action_set_description*(action: PAtkAction, i: gint, desc: cstring): gboolean{. + cdecl, dynlib: atklib, importc: "atk_action_set_description".} +proc ATK_TYPE_COMPONENT*(): GType +proc ATK_IS_COMPONENT*(obj: pointer): bool +proc ATK_COMPONENT*(obj: pointer): PAtkComponent +proc ATK_COMPONENT_GET_IFACE*(obj: pointer): PAtkComponentIface +proc atk_component_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_component_get_type".} +proc atk_component_add_focus_handler*(component: PAtkComponent, + handler: TAtkFocusHandler): guint{.cdecl, + dynlib: atklib, importc: "atk_component_add_focus_handler".} +proc atk_component_contains*(component: PAtkComponent, x, y: gint, + coord_type: TAtkCoordType): gboolean{.cdecl, + dynlib: atklib, importc: "atk_component_contains".} +proc atk_component_ref_accessible_at_point*(component: PAtkComponent, + x, y: gint, coord_type: TAtkCoordType): PAtkObject{.cdecl, dynlib: atklib, + importc: "atk_component_ref_accessible_at_point".} +proc atk_component_get_extents*(component: PAtkComponent, + x, y, width, height: Pgint, + coord_type: TAtkCoordType){.cdecl, + dynlib: atklib, importc: "atk_component_get_extents".} +proc atk_component_get_position*(component: PAtkComponent, x: Pgint, y: Pgint, + coord_type: TAtkCoordType){.cdecl, + dynlib: atklib, importc: "atk_component_get_position".} +proc atk_component_get_size*(component: PAtkComponent, width: Pgint, + height: Pgint){.cdecl, dynlib: atklib, + importc: "atk_component_get_size".} +proc atk_component_get_layer*(component: PAtkComponent): TAtkLayer{.cdecl, + dynlib: atklib, importc: "atk_component_get_layer".} +proc atk_component_get_mdi_zorder*(component: PAtkComponent): gint{.cdecl, + dynlib: atklib, importc: "atk_component_get_mdi_zorder".} +proc atk_component_grab_focus*(component: PAtkComponent): gboolean{.cdecl, + dynlib: atklib, importc: "atk_component_grab_focus".} +proc atk_component_remove_focus_handler*(component: PAtkComponent, + handler_id: guint){.cdecl, dynlib: atklib, + importc: "atk_component_remove_focus_handler".} +proc atk_component_set_extents*(component: PAtkComponent, x: gint, y: gint, + width: gint, height: gint, + coord_type: TAtkCoordType): gboolean{.cdecl, + dynlib: atklib, importc: "atk_component_set_extents".} +proc atk_component_set_position*(component: PAtkComponent, x: gint, y: gint, + coord_type: TAtkCoordType): gboolean{.cdecl, + dynlib: atklib, importc: "atk_component_set_position".} +proc atk_component_set_size*(component: PAtkComponent, width: gint, height: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_component_set_size".} +proc ATK_TYPE_DOCUMENT*(): GType +proc ATK_IS_DOCUMENT*(obj: pointer): bool +proc ATK_DOCUMENT*(obj: pointer): PAtkDocument +proc ATK_DOCUMENT_GET_IFACE*(obj: pointer): PAtkDocumentIface +proc atk_document_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_document_get_type".} +proc atk_document_get_document_type*(document: PAtkDocument): cstring{.cdecl, + dynlib: atklib, importc: "atk_document_get_document_type".} +proc atk_document_get_document*(document: PAtkDocument): gpointer{.cdecl, + dynlib: atklib, importc: "atk_document_get_document".} +proc ATK_TYPE_EDITABLE_TEXT*(): GType +proc ATK_IS_EDITABLE_TEXT*(obj: pointer): bool +proc ATK_EDITABLE_TEXT*(obj: pointer): PAtkEditableText +proc ATK_EDITABLE_TEXT_GET_IFACE*(obj: pointer): PAtkEditableTextIface +proc atk_editable_text_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_editable_text_get_type".} +proc atk_editable_text_set_run_attributes*(text: PAtkEditableText, + attrib_set: PAtkAttributeSet, start_offset: gint, end_offset: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_editable_text_set_run_attributes".} +proc atk_editable_text_set_text_contents*(text: PAtkEditableText, string: cstring){. + cdecl, dynlib: atklib, importc: "atk_editable_text_set_text_contents".} +proc atk_editable_text_insert_text*(text: PAtkEditableText, `string`: cstring, + length: gint, position: Pgint){.cdecl, + dynlib: atklib, importc: "atk_editable_text_insert_text".} +proc atk_editable_text_copy_text*(text: PAtkEditableText, start_pos: gint, + end_pos: gint){.cdecl, dynlib: atklib, + importc: "atk_editable_text_copy_text".} +proc atk_editable_text_cut_text*(text: PAtkEditableText, start_pos: gint, + end_pos: gint){.cdecl, dynlib: atklib, + importc: "atk_editable_text_cut_text".} +proc atk_editable_text_delete_text*(text: PAtkEditableText, start_pos: gint, + end_pos: gint){.cdecl, dynlib: atklib, + importc: "atk_editable_text_delete_text".} +proc atk_editable_text_paste_text*(text: PAtkEditableText, position: gint){. + cdecl, dynlib: atklib, importc: "atk_editable_text_paste_text".} +proc ATK_TYPE_GOBJECT_ACCESSIBLE*(): GType +proc ATK_GOBJECT_ACCESSIBLE*(obj: pointer): PAtkGObjectAccessible +proc ATK_GOBJECT_ACCESSIBLE_CLASS*(klass: pointer): PAtkGObjectAccessibleClass +proc ATK_IS_GOBJECT_ACCESSIBLE*(obj: pointer): bool +proc ATK_IS_GOBJECT_ACCESSIBLE_CLASS*(klass: pointer): bool +proc ATK_GOBJECT_ACCESSIBLE_GET_CLASS*(obj: pointer): PAtkGObjectAccessibleClass +proc atk_gobject_accessible_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_gobject_accessible_get_type".} +proc atk_gobject_accessible_for_object*(obj: PGObject): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_gobject_accessible_for_object".} +proc atk_gobject_accessible_get_object*(obj: PAtkGObjectAccessible): PGObject{. + cdecl, dynlib: atklib, importc: "atk_gobject_accessible_get_object".} +proc ATK_TYPE_HYPERLINK*(): GType +proc ATK_HYPERLINK*(obj: pointer): PAtkHyperlink +proc ATK_HYPERLINK_CLASS*(klass: pointer): PAtkHyperlinkClass +proc ATK_IS_HYPERLINK*(obj: pointer): bool +proc ATK_IS_HYPERLINK_CLASS*(klass: pointer): bool +proc ATK_HYPERLINK_GET_CLASS*(obj: pointer): PAtkHyperlinkClass +proc atk_hyperlink_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_hyperlink_get_type".} +proc atk_hyperlink_get_uri*(link: PAtkHyperlink, i: gint): cstring{.cdecl, + dynlib: atklib, importc: "atk_hyperlink_get_uri".} +proc atk_hyperlink_get_object*(link: PAtkHyperlink, i: gint): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_hyperlink_get_object".} +proc atk_hyperlink_get_end_index*(link: PAtkHyperlink): gint{.cdecl, + dynlib: atklib, importc: "atk_hyperlink_get_end_index".} +proc atk_hyperlink_get_start_index*(link: PAtkHyperlink): gint{.cdecl, + dynlib: atklib, importc: "atk_hyperlink_get_start_index".} +proc atk_hyperlink_is_valid*(link: PAtkHyperlink): gboolean{.cdecl, + dynlib: atklib, importc: "atk_hyperlink_is_valid".} +proc atk_hyperlink_get_n_anchors*(link: PAtkHyperlink): gint{.cdecl, + dynlib: atklib, importc: "atk_hyperlink_get_n_anchors".} +proc ATK_TYPE_HYPERTEXT*(): GType +proc ATK_IS_HYPERTEXT*(obj: pointer): bool +proc ATK_HYPERTEXT*(obj: pointer): PAtkHypertext +proc ATK_HYPERTEXT_GET_IFACE*(obj: pointer): PAtkHypertextIface +proc atk_hypertext_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_hypertext_get_type".} +proc atk_hypertext_get_link*(hypertext: PAtkHypertext, link_index: gint): PAtkHyperlink{. + cdecl, dynlib: atklib, importc: "atk_hypertext_get_link".} +proc atk_hypertext_get_n_links*(hypertext: PAtkHypertext): gint{.cdecl, + dynlib: atklib, importc: "atk_hypertext_get_n_links".} +proc atk_hypertext_get_link_index*(hypertext: PAtkHypertext, char_index: gint): gint{. + cdecl, dynlib: atklib, importc: "atk_hypertext_get_link_index".} +proc ATK_TYPE_IMAGE*(): GType +proc ATK_IS_IMAGE*(obj: pointer): bool +proc ATK_IMAGE*(obj: pointer): PAtkImage +proc ATK_IMAGE_GET_IFACE*(obj: pointer): PAtkImageIface +proc atk_image_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_image_get_type".} +proc atk_image_get_image_description*(image: PAtkImage): cstring{.cdecl, + dynlib: atklib, importc: "atk_image_get_image_description".} +proc atk_image_get_image_size*(image: PAtkImage, width: Pgint, height: Pgint){. + cdecl, dynlib: atklib, importc: "atk_image_get_image_size".} +proc atk_image_set_image_description*(image: PAtkImage, description: cstring): gboolean{. + cdecl, dynlib: atklib, importc: "atk_image_set_image_description".} +proc atk_image_get_image_position*(image: PAtkImage, x: Pgint, y: Pgint, + coord_type: TAtkCoordType){.cdecl, + dynlib: atklib, importc: "atk_image_get_image_position".} +proc ATK_TYPE_OBJECT_FACTORY*(): GType +proc ATK_OBJECT_FACTORY*(obj: pointer): PAtkObjectFactory +proc ATK_OBJECT_FACTORY_CLASS*(klass: pointer): PAtkObjectFactoryClass +proc ATK_IS_OBJECT_FACTORY*(obj: pointer): bool +proc ATK_IS_OBJECT_FACTORY_CLASS*(klass: pointer): bool +proc ATK_OBJECT_FACTORY_GET_CLASS*(obj: pointer): PAtkObjectFactoryClass +proc atk_object_factory_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_object_factory_get_type".} +proc atk_object_factory_create_accessible*(factory: PAtkObjectFactory, + obj: PGObject): PAtkObject{.cdecl, dynlib: atklib, + importc: "atk_object_factory_create_accessible".} +proc atk_object_factory_invalidate*(factory: PAtkObjectFactory){.cdecl, + dynlib: atklib, importc: "atk_object_factory_invalidate".} +proc atk_object_factory_get_accessible_type*(factory: PAtkObjectFactory): GType{. + cdecl, dynlib: atklib, importc: "atk_object_factory_get_accessible_type".} +proc ATK_TYPE_REGISTRY*(): GType +proc ATK_REGISTRY*(obj: pointer): PAtkRegistry +proc ATK_REGISTRY_CLASS*(klass: pointer): PAtkRegistryClass +proc ATK_IS_REGISTRY*(obj: pointer): bool +proc ATK_IS_REGISTRY_CLASS*(klass: pointer): bool +proc ATK_REGISTRY_GET_CLASS*(obj: pointer): PAtkRegistryClass +proc atk_registry_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_registry_get_type".} +proc atk_registry_set_factory_type*(registry: PAtkRegistry, `type`: GType, + factory_type: GType){.cdecl, dynlib: atklib, + importc: "atk_registry_set_factory_type".} +proc atk_registry_get_factory_type*(registry: PAtkRegistry, `type`: GType): GType{. + cdecl, dynlib: atklib, importc: "atk_registry_get_factory_type".} +proc atk_registry_get_factory*(registry: PAtkRegistry, `type`: GType): PAtkObjectFactory{. + cdecl, dynlib: atklib, importc: "atk_registry_get_factory".} +proc atk_get_default_registry*(): PAtkRegistry{.cdecl, dynlib: atklib, + importc: "atk_get_default_registry".} +proc ATK_TYPE_RELATION*(): GType +proc ATK_RELATION*(obj: pointer): PAtkRelation +proc ATK_RELATION_CLASS*(klass: pointer): PAtkRelationClass +proc ATK_IS_RELATION*(obj: pointer): bool +proc ATK_IS_RELATION_CLASS*(klass: pointer): bool +proc ATK_RELATION_GET_CLASS*(obj: pointer): PAtkRelationClass +proc atk_relation_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_relation_get_type".} +proc atk_relation_type_register*(name: cstring): TAtkRelationType{.cdecl, + dynlib: atklib, importc: "atk_relation_type_register".} +proc atk_relation_type_get_name*(`type`: TAtkRelationType): cstring{.cdecl, + dynlib: atklib, importc: "atk_relation_type_get_name".} +proc atk_relation_type_for_name*(name: cstring): TAtkRelationType{.cdecl, + dynlib: atklib, importc: "atk_relation_type_for_name".} +proc atk_relation_new*(targets: PPAtkObject, n_targets: gint, + relationship: TAtkRelationType): PAtkRelation{.cdecl, + dynlib: atklib, importc: "atk_relation_new".} +proc atk_relation_get_relation_type*(relation: PAtkRelation): TAtkRelationType{. + cdecl, dynlib: atklib, importc: "atk_relation_get_relation_type".} +proc atk_relation_get_target*(relation: PAtkRelation): PGPtrArray{.cdecl, + dynlib: atklib, importc: "atk_relation_get_target".} +proc ATK_TYPE_RELATION_SET*(): GType +proc ATK_RELATION_SET*(obj: pointer): PAtkRelationSet +proc ATK_RELATION_SET_CLASS*(klass: pointer): PAtkRelationSetClass +proc ATK_IS_RELATION_SET*(obj: pointer): bool +proc ATK_IS_RELATION_SET_CLASS*(klass: pointer): bool +proc ATK_RELATION_SET_GET_CLASS*(obj: pointer): PAtkRelationSetClass +proc atk_relation_set_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_relation_set_get_type".} +proc atk_relation_set_new*(): PAtkRelationSet{.cdecl, dynlib: atklib, + importc: "atk_relation_set_new".} +proc atk_relation_set_contains*(RelationSet: PAtkRelationSet, + relationship: TAtkRelationType): gboolean{. + cdecl, dynlib: atklib, importc: "atk_relation_set_contains".} +proc atk_relation_set_remove*(RelationSet: PAtkRelationSet, + relation: PAtkRelation){.cdecl, dynlib: atklib, + importc: "atk_relation_set_remove".} +proc atk_relation_set_add*(RelationSet: PAtkRelationSet, relation: PAtkRelation){. + cdecl, dynlib: atklib, importc: "atk_relation_set_add".} +proc atk_relation_set_get_n_relations*(RelationSet: PAtkRelationSet): gint{. + cdecl, dynlib: atklib, importc: "atk_relation_set_get_n_relations".} +proc atk_relation_set_get_relation*(RelationSet: PAtkRelationSet, i: gint): PAtkRelation{. + cdecl, dynlib: atklib, importc: "atk_relation_set_get_relation".} +proc atk_relation_set_get_relation_by_type*(RelationSet: PAtkRelationSet, + relationship: TAtkRelationType): PAtkRelation{.cdecl, dynlib: atklib, + importc: "atk_relation_set_get_relation_by_type".} +proc ATK_TYPE_SELECTION*(): GType +proc ATK_IS_SELECTION*(obj: pointer): bool +proc ATK_SELECTION*(obj: pointer): PAtkSelection +proc ATK_SELECTION_GET_IFACE*(obj: pointer): PAtkSelectionIface +proc atk_selection_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_selection_get_type".} +proc atk_selection_add_selection*(selection: PAtkSelection, i: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_selection_add_selection".} +proc atk_selection_clear_selection*(selection: PAtkSelection): gboolean{.cdecl, + dynlib: atklib, importc: "atk_selection_clear_selection".} +proc atk_selection_ref_selection*(selection: PAtkSelection, i: gint): PAtkObject{. + cdecl, dynlib: atklib, importc: "atk_selection_ref_selection".} +proc atk_selection_get_selection_count*(selection: PAtkSelection): gint{.cdecl, + dynlib: atklib, importc: "atk_selection_get_selection_count".} +proc atk_selection_is_child_selected*(selection: PAtkSelection, i: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_selection_is_child_selected".} +proc atk_selection_remove_selection*(selection: PAtkSelection, i: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_selection_remove_selection".} +proc atk_selection_select_all_selection*(selection: PAtkSelection): gboolean{. + cdecl, dynlib: atklib, importc: "atk_selection_select_all_selection".} +proc atk_state_type_register*(name: cstring): TAtkStateType{.cdecl, + dynlib: atklib, importc: "atk_state_type_register".} +proc atk_state_type_get_name*(`type`: TAtkStateType): cstring{.cdecl, + dynlib: atklib, importc: "atk_state_type_get_name".} +proc atk_state_type_for_name*(name: cstring): TAtkStateType{.cdecl, + dynlib: atklib, importc: "atk_state_type_for_name".} +proc ATK_TYPE_STATE_SET*(): GType +proc ATK_STATE_SET*(obj: pointer): PAtkStateSet +proc ATK_STATE_SET_CLASS*(klass: pointer): PAtkStateSetClass +proc ATK_IS_STATE_SET*(obj: pointer): bool +proc ATK_IS_STATE_SET_CLASS*(klass: pointer): bool +proc ATK_STATE_SET_GET_CLASS*(obj: pointer): PAtkStateSetClass +proc atk_state_set_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_state_set_get_type".} +proc atk_state_set_new*(): PAtkStateSet{.cdecl, dynlib: atklib, + importc: "atk_state_set_new".} +proc atk_state_set_is_empty*(StateSet: PAtkStateSet): gboolean{.cdecl, + dynlib: atklib, importc: "atk_state_set_is_empty".} +proc atk_state_set_add_state*(StateSet: PAtkStateSet, `type`: TAtkStateType): gboolean{. + cdecl, dynlib: atklib, importc: "atk_state_set_add_state".} +proc atk_state_set_add_states*(StateSet: PAtkStateSet, types: PAtkStateType, + n_types: gint){.cdecl, dynlib: atklib, + importc: "atk_state_set_add_states".} +proc atk_state_set_clear_states*(StateSet: PAtkStateSet){.cdecl, dynlib: atklib, + importc: "atk_state_set_clear_states".} +proc atk_state_set_contains_state*(StateSet: PAtkStateSet, `type`: TAtkStateType): gboolean{. + cdecl, dynlib: atklib, importc: "atk_state_set_contains_state".} +proc atk_state_set_contains_states*(StateSet: PAtkStateSet, + types: PAtkStateType, n_types: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_state_set_contains_states".} +proc atk_state_set_remove_state*(StateSet: PAtkStateSet, `type`: TAtkStateType): gboolean{. + cdecl, dynlib: atklib, importc: "atk_state_set_remove_state".} +proc atk_state_set_and_sets*(StateSet: PAtkStateSet, compare_set: PAtkStateSet): PAtkStateSet{. + cdecl, dynlib: atklib, importc: "atk_state_set_and_sets".} +proc atk_state_set_or_sets*(StateSet: PAtkStateSet, compare_set: PAtkStateSet): PAtkStateSet{. + cdecl, dynlib: atklib, importc: "atk_state_set_or_sets".} +proc atk_state_set_xor_sets*(StateSet: PAtkStateSet, compare_set: PAtkStateSet): PAtkStateSet{. + cdecl, dynlib: atklib, importc: "atk_state_set_xor_sets".} +proc ATK_TYPE_STREAMABLE_CONTENT*(): GType +proc ATK_IS_STREAMABLE_CONTENT*(obj: pointer): bool +proc ATK_STREAMABLE_CONTENT*(obj: pointer): PAtkStreamableContent +proc ATK_STREAMABLE_CONTENT_GET_IFACE*(obj: pointer): PAtkStreamableContentIface +proc atk_streamable_content_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_streamable_content_get_type".} +proc atk_streamable_content_get_n_mime_types*(streamable: PAtkStreamableContent): gint{. + cdecl, dynlib: atklib, importc: "atk_streamable_content_get_n_mime_types".} +proc atk_streamable_content_get_mime_type*(streamable: PAtkStreamableContent, + i: gint): cstring{.cdecl, dynlib: atklib, + importc: "atk_streamable_content_get_mime_type".} +proc atk_streamable_content_get_stream*(streamable: PAtkStreamableContent, + mime_type: cstring): PGIOChannel{.cdecl, + dynlib: atklib, importc: "atk_streamable_content_get_stream".} +proc ATK_TYPE_TABLE*(): GType +proc ATK_IS_TABLE*(obj: pointer): bool +proc ATK_TABLE*(obj: pointer): PAtkTable +proc ATK_TABLE_GET_IFACE*(obj: pointer): PAtkTableIface +proc atk_table_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_table_get_type".} +proc atk_table_ref_at*(table: PAtkTable, row, column: gint): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_table_ref_at".} +proc atk_table_get_index_at*(table: PAtkTable, row, column: gint): gint{.cdecl, + dynlib: atklib, importc: "atk_table_get_index_at".} +proc atk_table_get_column_at_index*(table: PAtkTable, index: gint): gint{.cdecl, + dynlib: atklib, importc: "atk_table_get_column_at_index".} +proc atk_table_get_row_at_index*(table: PAtkTable, index: gint): gint{.cdecl, + dynlib: atklib, importc: "atk_table_get_row_at_index".} +proc atk_table_get_n_columns*(table: PAtkTable): gint{.cdecl, dynlib: atklib, + importc: "atk_table_get_n_columns".} +proc atk_table_get_n_rows*(table: PAtkTable): gint{.cdecl, dynlib: atklib, + importc: "atk_table_get_n_rows".} +proc atk_table_get_column_extent_at*(table: PAtkTable, row: gint, column: gint): gint{. + cdecl, dynlib: atklib, importc: "atk_table_get_column_extent_at".} +proc atk_table_get_row_extent_at*(table: PAtkTable, row: gint, column: gint): gint{. + cdecl, dynlib: atklib, importc: "atk_table_get_row_extent_at".} +proc atk_table_get_caption*(table: PAtkTable): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_table_get_caption".} +proc atk_table_get_column_description*(table: PAtkTable, column: gint): cstring{. + cdecl, dynlib: atklib, importc: "atk_table_get_column_description".} +proc atk_table_get_column_header*(table: PAtkTable, column: gint): PAtkObject{. + cdecl, dynlib: atklib, importc: "atk_table_get_column_header".} +proc atk_table_get_row_description*(table: PAtkTable, row: gint): cstring{.cdecl, + dynlib: atklib, importc: "atk_table_get_row_description".} +proc atk_table_get_row_header*(table: PAtkTable, row: gint): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_table_get_row_header".} +proc atk_table_get_summary*(table: PAtkTable): PAtkObject{.cdecl, + dynlib: atklib, importc: "atk_table_get_summary".} +proc atk_table_set_caption*(table: PAtkTable, caption: PAtkObject){.cdecl, + dynlib: atklib, importc: "atk_table_set_caption".} +proc atk_table_set_column_description*(table: PAtkTable, column: gint, + description: cstring){.cdecl, + dynlib: atklib, importc: "atk_table_set_column_description".} +proc atk_table_set_column_header*(table: PAtkTable, column: gint, + header: PAtkObject){.cdecl, dynlib: atklib, + importc: "atk_table_set_column_header".} +proc atk_table_set_row_description*(table: PAtkTable, row: gint, + description: cstring){.cdecl, dynlib: atklib, + importc: "atk_table_set_row_description".} +proc atk_table_set_row_header*(table: PAtkTable, row: gint, header: PAtkObject){. + cdecl, dynlib: atklib, importc: "atk_table_set_row_header".} +proc atk_table_set_summary*(table: PAtkTable, accessible: PAtkObject){.cdecl, + dynlib: atklib, importc: "atk_table_set_summary".} +proc atk_table_get_selected_columns*(table: PAtkTable, selected: PPgint): gint{. + cdecl, dynlib: atklib, importc: "atk_table_get_selected_columns".} +proc atk_table_get_selected_rows*(table: PAtkTable, selected: PPgint): gint{. + cdecl, dynlib: atklib, importc: "atk_table_get_selected_rows".} +proc atk_table_is_column_selected*(table: PAtkTable, column: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_table_is_column_selected".} +proc atk_table_is_row_selected*(table: PAtkTable, row: gint): gboolean{.cdecl, + dynlib: atklib, importc: "atk_table_is_row_selected".} +proc atk_table_is_selected*(table: PAtkTable, row: gint, column: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_table_is_selected".} +proc atk_table_add_row_selection*(table: PAtkTable, row: gint): gboolean{.cdecl, + dynlib: atklib, importc: "atk_table_add_row_selection".} +proc atk_table_remove_row_selection*(table: PAtkTable, row: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_table_remove_row_selection".} +proc atk_table_add_column_selection*(table: PAtkTable, column: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_table_add_column_selection".} +proc atk_table_remove_column_selection*(table: PAtkTable, column: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_table_remove_column_selection".} +proc atk_text_attribute_register*(name: cstring): TAtkTextAttribute{.cdecl, + dynlib: atklib, importc: "atk_text_attribute_register".} +proc ATK_TYPE_TEXT*(): GType +proc ATK_IS_TEXT*(obj: pointer): bool +proc ATK_TEXT*(obj: pointer): PAtkText +proc ATK_TEXT_GET_IFACE*(obj: pointer): PAtkTextIface +proc atk_text_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_text_get_type".} +proc atk_text_get_text*(text: PAtkText, start_offset: gint, end_offset: gint): cstring{. + cdecl, dynlib: atklib, importc: "atk_text_get_text".} +proc atk_text_get_character_at_offset*(text: PAtkText, offset: gint): gunichar{. + cdecl, dynlib: atklib, importc: "atk_text_get_character_at_offset".} +proc atk_text_get_text_after_offset*(text: PAtkText, offset: gint, + boundary_type: TAtkTextBoundary, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl, dynlib: atklib, importc: "atk_text_get_text_after_offset".} +proc atk_text_get_text_at_offset*(text: PAtkText, offset: gint, + boundary_type: TAtkTextBoundary, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl, dynlib: atklib, importc: "atk_text_get_text_at_offset".} +proc atk_text_get_text_before_offset*(text: PAtkText, offset: gint, + boundary_type: TAtkTextBoundary, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl, dynlib: atklib, importc: "atk_text_get_text_before_offset".} +proc atk_text_get_caret_offset*(text: PAtkText): gint{.cdecl, dynlib: atklib, + importc: "atk_text_get_caret_offset".} +proc atk_text_get_character_extents*(text: PAtkText, offset: gint, x: Pgint, + y: Pgint, width: Pgint, height: Pgint, + coords: TAtkCoordType){.cdecl, + dynlib: atklib, importc: "atk_text_get_character_extents".} +proc atk_text_get_run_attributes*(text: PAtkText, offset: gint, + start_offset: Pgint, end_offset: Pgint): PAtkAttributeSet{. + cdecl, dynlib: atklib, importc: "atk_text_get_run_attributes".} +proc atk_text_get_default_attributes*(text: PAtkText): PAtkAttributeSet{.cdecl, + dynlib: atklib, importc: "atk_text_get_default_attributes".} +proc atk_text_get_character_count*(text: PAtkText): gint{.cdecl, dynlib: atklib, + importc: "atk_text_get_character_count".} +proc atk_text_get_offset_at_point*(text: PAtkText, x: gint, y: gint, + coords: TAtkCoordType): gint{.cdecl, + dynlib: atklib, importc: "atk_text_get_offset_at_point".} +proc atk_text_get_n_selections*(text: PAtkText): gint{.cdecl, dynlib: atklib, + importc: "atk_text_get_n_selections".} +proc atk_text_get_selection*(text: PAtkText, selection_num: gint, + start_offset: Pgint, end_offset: Pgint): cstring{. + cdecl, dynlib: atklib, importc: "atk_text_get_selection".} +proc atk_text_add_selection*(text: PAtkText, start_offset: gint, + end_offset: gint): gboolean{.cdecl, dynlib: atklib, + importc: "atk_text_add_selection".} +proc atk_text_remove_selection*(text: PAtkText, selection_num: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_text_remove_selection".} +proc atk_text_set_selection*(text: PAtkText, selection_num: gint, + start_offset: gint, end_offset: gint): gboolean{. + cdecl, dynlib: atklib, importc: "atk_text_set_selection".} +proc atk_text_set_caret_offset*(text: PAtkText, offset: gint): gboolean{.cdecl, + dynlib: atklib, importc: "atk_text_set_caret_offset".} +proc atk_attribute_set_free*(attrib_set: PAtkAttributeSet){.cdecl, + dynlib: atklib, importc: "atk_attribute_set_free".} +proc atk_text_attribute_get_name*(attr: TAtkTextAttribute): cstring{.cdecl, + dynlib: atklib, importc: "atk_text_attribute_get_name".} +proc atk_text_attribute_for_name*(name: cstring): TAtkTextAttribute{.cdecl, + dynlib: atklib, importc: "atk_text_attribute_for_name".} +proc atk_text_attribute_get_value*(attr: TAtkTextAttribute, index: gint): cstring{. + cdecl, dynlib: atklib, importc: "atk_text_attribute_get_value".} +proc ATK_TYPE_UTIL*(): GType +proc ATK_IS_UTIL*(obj: pointer): bool +proc ATK_UTIL*(obj: pointer): PAtkUtil +proc ATK_UTIL_CLASS*(klass: pointer): PAtkUtilClass +proc ATK_IS_UTIL_CLASS*(klass: pointer): bool +proc ATK_UTIL_GET_CLASS*(obj: pointer): PAtkUtilClass +proc atk_util_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_util_get_type".} +proc atk_add_focus_tracker*(focus_tracker: TAtkEventListener): guint{.cdecl, + dynlib: atklib, importc: "atk_add_focus_tracker".} +proc atk_remove_focus_tracker*(tracker_id: guint){.cdecl, dynlib: atklib, + importc: "atk_remove_focus_tracker".} +proc atk_focus_tracker_init*(add_function: TAtkEventListenerInit){.cdecl, + dynlib: atklib, importc: "atk_focus_tracker_init".} +proc atk_focus_tracker_notify*(anObject: PAtkObject){.cdecl, dynlib: atklib, + importc: "atk_focus_tracker_notify".} +proc atk_add_global_event_listener*(listener: TGSignalEmissionHook, + event_type: cstring): guint{.cdecl, + dynlib: atklib, importc: "atk_add_global_event_listener".} +proc atk_remove_global_event_listener*(listener_id: guint){.cdecl, + dynlib: atklib, importc: "atk_remove_global_event_listener".} +proc atk_add_key_event_listener*(listener: TAtkKeySnoopFunc, data: gpointer): guint{. + cdecl, dynlib: atklib, importc: "atk_add_key_event_listener".} +proc atk_remove_key_event_listener*(listener_id: guint){.cdecl, dynlib: atklib, + importc: "atk_remove_key_event_listener".} +proc atk_get_root*(): PAtkObject{.cdecl, dynlib: atklib, importc: "atk_get_root".} +proc atk_get_toolkit_name*(): cstring{.cdecl, dynlib: atklib, + importc: "atk_get_toolkit_name".} +proc atk_get_toolkit_version*(): cstring{.cdecl, dynlib: atklib, + importc: "atk_get_toolkit_version".} +proc ATK_TYPE_VALUE*(): GType +proc ATK_IS_VALUE*(obj: pointer): bool +proc ATK_VALUE*(obj: pointer): PAtkValue +proc ATK_VALUE_GET_IFACE*(obj: pointer): PAtkValueIface +proc atk_value_get_type*(): GType{.cdecl, dynlib: atklib, + importc: "atk_value_get_type".} +proc atk_value_get_current_value*(obj: PAtkValue, value: PGValue){.cdecl, + dynlib: atklib, importc: "atk_value_get_current_value".} +proc atk_value_get_maximum_value*(obj: PAtkValue, value: PGValue){.cdecl, + dynlib: atklib, importc: "atk_value_get_maximum_value".} +proc atk_value_get_minimum_value*(obj: PAtkValue, value: PGValue){.cdecl, + dynlib: atklib, importc: "atk_value_get_minimum_value".} +proc atk_value_set_current_value*(obj: PAtkValue, value: PGValue): gboolean{. + cdecl, dynlib: atklib, importc: "atk_value_set_current_value".} +proc ATK_TYPE_OBJECT*(): GType = + result = atk_object_get_type() + +proc ATK_OBJECT*(obj: pointer): PAtkObject = + result = cast[PAtkObject](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_OBJECT())) + +proc ATK_OBJECT_CLASS*(klass: pointer): PAtkObjectClass = + result = cast[PAtkObjectClass](G_TYPE_CHECK_CLASS_CAST(klass, ATK_TYPE_OBJECT())) + +proc ATK_IS_OBJECT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_OBJECT()) + +proc ATK_IS_OBJECT_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_OBJECT()) + +proc ATK_OBJECT_GET_CLASS*(obj: pointer): PAtkObjectClass = + result = cast[PAtkObjectClass](G_TYPE_INSTANCE_GET_CLASS(obj, ATK_TYPE_OBJECT())) + +proc ATK_TYPE_IMPLEMENTOR*(): GType = + result = atk_implementor_get_type() + +proc ATK_IS_IMPLEMENTOR*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_IMPLEMENTOR()) + +proc ATK_IMPLEMENTOR*(obj: pointer): PAtkImplementor = + result = PAtkImplementor(G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_IMPLEMENTOR())) + +proc ATK_IMPLEMENTOR_GET_IFACE*(obj: pointer): PAtkImplementorIface = + result = cast[PAtkImplementorIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_IMPLEMENTOR())) + +proc ATK_TYPE_ACTION*(): GType = + result = atk_action_get_type() + +proc ATK_IS_ACTION*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_ACTION()) + +proc ATK_ACTION*(obj: pointer): PAtkAction = + result = PAtkAction(G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_ACTION())) + +proc ATK_ACTION_GET_IFACE*(obj: pointer): PAtkActionIface = + result = cast[PAtkActionIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_ACTION())) + +proc ATK_TYPE_COMPONENT*(): GType = + result = atk_component_get_type() + +proc ATK_IS_COMPONENT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_COMPONENT()) + +proc ATK_COMPONENT*(obj: pointer): PAtkComponent = + result = PAtkComponent(G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_COMPONENT())) + +proc ATK_COMPONENT_GET_IFACE*(obj: pointer): PAtkComponentIface = + result = cast[PAtkComponentIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_COMPONENT())) + +proc ATK_TYPE_DOCUMENT*(): GType = + result = atk_document_get_type() + +proc ATK_IS_DOCUMENT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_DOCUMENT()) + +proc ATK_DOCUMENT*(obj: pointer): PAtkDocument = + result = cast[PAtkDocument](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_DOCUMENT())) + +proc ATK_DOCUMENT_GET_IFACE*(obj: pointer): PAtkDocumentIface = + result = cast[PAtkDocumentIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_DOCUMENT())) + +proc ATK_TYPE_EDITABLE_TEXT*(): GType = + result = atk_editable_text_get_type() + +proc ATK_IS_EDITABLE_TEXT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_EDITABLE_TEXT()) + +proc ATK_EDITABLE_TEXT*(obj: pointer): PAtkEditableText = + result = cast[PAtkEditableText](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_EDITABLE_TEXT())) + +proc ATK_EDITABLE_TEXT_GET_IFACE*(obj: pointer): PAtkEditableTextIface = + result = cast[PAtkEditableTextIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_EDITABLE_TEXT())) + +proc ATK_TYPE_GOBJECT_ACCESSIBLE*(): GType = + result = atk_gobject_accessible_get_type() + +proc ATK_GOBJECT_ACCESSIBLE*(obj: pointer): PAtkGObjectAccessible = + result = cast[PAtkGObjectAccessible](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_GOBJECT_ACCESSIBLE())) + +proc ATK_GOBJECT_ACCESSIBLE_CLASS*(klass: pointer): PAtkGObjectAccessibleClass = + result = cast[PAtkGObjectAccessibleClass](G_TYPE_CHECK_CLASS_CAST(klass, + ATK_TYPE_GOBJECT_ACCESSIBLE())) + +proc ATK_IS_GOBJECT_ACCESSIBLE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_GOBJECT_ACCESSIBLE()) + +proc ATK_IS_GOBJECT_ACCESSIBLE_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_GOBJECT_ACCESSIBLE()) + +proc ATK_GOBJECT_ACCESSIBLE_GET_CLASS*(obj: pointer): PAtkGObjectAccessibleClass = + result = cast[PAtkGObjectAccessibleClass](G_TYPE_INSTANCE_GET_CLASS(obj, + ATK_TYPE_GOBJECT_ACCESSIBLE())) + +proc ATK_TYPE_HYPERLINK*(): GType = + result = atk_hyperlink_get_type() + +proc ATK_HYPERLINK*(obj: pointer): PAtkHyperlink = + result = cast[PAtkHyperlink](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_HYPERLINK())) + +proc ATK_HYPERLINK_CLASS*(klass: pointer): PAtkHyperlinkClass = + result = cast[PAtkHyperlinkClass](G_TYPE_CHECK_CLASS_CAST(klass, + ATK_TYPE_HYPERLINK())) + +proc ATK_IS_HYPERLINK*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_HYPERLINK()) + +proc ATK_IS_HYPERLINK_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_HYPERLINK()) + +proc ATK_HYPERLINK_GET_CLASS*(obj: pointer): PAtkHyperlinkClass = + result = cast[PAtkHyperlinkClass](G_TYPE_INSTANCE_GET_CLASS(obj, ATK_TYPE_HYPERLINK())) + +proc ATK_TYPE_HYPERTEXT*(): GType = + result = atk_hypertext_get_type() + +proc ATK_IS_HYPERTEXT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_HYPERTEXT()) + +proc ATK_HYPERTEXT*(obj: pointer): PAtkHypertext = + result = cast[PAtkHypertext](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_HYPERTEXT())) + +proc ATK_HYPERTEXT_GET_IFACE*(obj: pointer): PAtkHypertextIface = + result = cast[PAtkHypertextIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_HYPERTEXT())) + +proc ATK_TYPE_IMAGE*(): GType = + result = atk_image_get_type() + +proc ATK_IS_IMAGE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_IMAGE()) + +proc ATK_IMAGE*(obj: pointer): PAtkImage = + result = cast[PAtkImage](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_IMAGE())) + +proc ATK_IMAGE_GET_IFACE*(obj: pointer): PAtkImageIface = + result = cast[PAtkImageIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, ATK_TYPE_IMAGE())) + +proc ATK_TYPE_OBJECT_FACTORY*(): GType = + result = atk_object_factory_get_type() + +proc ATK_OBJECT_FACTORY*(obj: pointer): PAtkObjectFactory = + result = cast[PAtkObjectFactory](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_OBJECT_FACTORY())) + +proc ATK_OBJECT_FACTORY_CLASS*(klass: pointer): PAtkObjectFactoryClass = + result = cast[PAtkObjectFactoryClass](G_TYPE_CHECK_CLASS_CAST(klass, + ATK_TYPE_OBJECT_FACTORY())) + +proc ATK_IS_OBJECT_FACTORY*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_OBJECT_FACTORY()) + +proc ATK_IS_OBJECT_FACTORY_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_OBJECT_FACTORY()) + +proc ATK_OBJECT_FACTORY_GET_CLASS*(obj: pointer): PAtkObjectFactoryClass = + result = cast[PAtkObjectFactoryClass](G_TYPE_INSTANCE_GET_CLASS(obj, + ATK_TYPE_OBJECT_FACTORY())) + +proc ATK_TYPE_REGISTRY*(): GType = + result = atk_registry_get_type() + +proc ATK_REGISTRY*(obj: pointer): PAtkRegistry = + result = cast[PAtkRegistry](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_REGISTRY())) + +proc ATK_REGISTRY_CLASS*(klass: pointer): PAtkRegistryClass = + result = cast[PAtkRegistryClass](G_TYPE_CHECK_CLASS_CAST(klass, + ATK_TYPE_REGISTRY())) + +proc ATK_IS_REGISTRY*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_REGISTRY()) + +proc ATK_IS_REGISTRY_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_REGISTRY()) + +proc ATK_REGISTRY_GET_CLASS*(obj: pointer): PAtkRegistryClass = + result = cast[PAtkRegistryClass](G_TYPE_INSTANCE_GET_CLASS(obj, ATK_TYPE_REGISTRY())) + +proc ATK_TYPE_RELATION*(): GType = + result = atk_relation_get_type() + +proc ATK_RELATION*(obj: pointer): PAtkRelation = + result = cast[PAtkRelation](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_RELATION())) + +proc ATK_RELATION_CLASS*(klass: pointer): PAtkRelationClass = + result = cast[PAtkRelationClass](G_TYPE_CHECK_CLASS_CAST(klass, ATK_TYPE_RELATION())) + +proc ATK_IS_RELATION*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_RELATION()) + +proc ATK_IS_RELATION_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_RELATION()) + +proc ATK_RELATION_GET_CLASS*(obj: pointer): PAtkRelationClass = + result = cast[PAtkRelationClass](G_TYPE_INSTANCE_GET_CLASS(obj, + ATK_TYPE_RELATION())) + +proc ATK_TYPE_RELATION_SET*(): GType = + result = atk_relation_set_get_type() + +proc ATK_RELATION_SET*(obj: pointer): PAtkRelationSet = + result = cast[PAtkRelationSet](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_RELATION_SET())) + +proc ATK_RELATION_SET_CLASS*(klass: pointer): PAtkRelationSetClass = + result = cast[PAtkRelationSetClass](G_TYPE_CHECK_CLASS_CAST(klass, + ATK_TYPE_RELATION_SET())) + +proc ATK_IS_RELATION_SET*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_RELATION_SET()) + +proc ATK_IS_RELATION_SET_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_RELATION_SET()) + +proc ATK_RELATION_SET_GET_CLASS*(obj: pointer): PAtkRelationSetClass = + result = cast[PAtkRelationSetClass](G_TYPE_INSTANCE_GET_CLASS(obj, + ATK_TYPE_RELATION_SET())) + +proc ATK_TYPE_SELECTION*(): GType = + result = atk_selection_get_type() + +proc ATK_IS_SELECTION*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_SELECTION()) + +proc ATK_SELECTION*(obj: pointer): PAtkSelection = + result = cast[PAtkSelection](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_SELECTION())) + +proc ATK_SELECTION_GET_IFACE*(obj: pointer): PAtkSelectionIface = + result = cast[PAtkSelectionIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_SELECTION())) + +proc ATK_TYPE_STATE_SET*(): GType = + result = atk_state_set_get_type() + +proc ATK_STATE_SET*(obj: pointer): PAtkStateSet = + result = cast[PAtkStateSet](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_STATE_SET())) + +proc ATK_STATE_SET_CLASS*(klass: pointer): PAtkStateSetClass = + result = cast[PAtkStateSetClass](G_TYPE_CHECK_CLASS_CAST(klass, + ATK_TYPE_STATE_SET())) + +proc ATK_IS_STATE_SET*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_STATE_SET()) + +proc ATK_IS_STATE_SET_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_STATE_SET()) + +proc ATK_STATE_SET_GET_CLASS*(obj: pointer): PAtkStateSetClass = + result = cast[PAtkStateSetClass](G_TYPE_INSTANCE_GET_CLASS(obj, + ATK_TYPE_STATE_SET())) + +proc ATK_TYPE_STREAMABLE_CONTENT*(): GType = + result = atk_streamable_content_get_type() + +proc ATK_IS_STREAMABLE_CONTENT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_STREAMABLE_CONTENT()) + +proc ATK_STREAMABLE_CONTENT*(obj: pointer): PAtkStreamableContent = + result = cast[PAtkStreamableContent](G_TYPE_CHECK_INSTANCE_CAST(obj, + ATK_TYPE_STREAMABLE_CONTENT())) + +proc ATK_STREAMABLE_CONTENT_GET_IFACE*(obj: pointer): PAtkStreamableContentIface = + result = cast[PAtkStreamableContentIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + ATK_TYPE_STREAMABLE_CONTENT())) + +proc ATK_TYPE_TABLE*(): GType = + result = atk_table_get_type() + +proc ATK_IS_TABLE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_TABLE()) + +proc ATK_TABLE*(obj: pointer): PAtkTable = + result = cast[PAtkTable](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_TABLE())) + +proc ATK_TABLE_GET_IFACE*(obj: pointer): PAtkTableIface = + result = cast[PAtkTableIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, ATK_TYPE_TABLE())) + +proc ATK_TYPE_TEXT*(): GType = + result = atk_text_get_type() + +proc ATK_IS_TEXT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_TEXT()) + +proc ATK_TEXT*(obj: pointer): PAtkText = + result = cast[PAtkText](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_TEXT())) + +proc ATK_TEXT_GET_IFACE*(obj: pointer): PAtkTextIface = + result = cast[PAtkTextIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, ATK_TYPE_TEXT())) + +proc ATK_TYPE_UTIL*(): GType = + result = atk_util_get_type() + +proc ATK_IS_UTIL*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_UTIL()) + +proc ATK_UTIL*(obj: pointer): PAtkUtil = + result = cast[PAtkUtil](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_UTIL())) + +proc ATK_UTIL_CLASS*(klass: pointer): PAtkUtilClass = + result = cast[PAtkUtilClass](G_TYPE_CHECK_CLASS_CAST(klass, ATK_TYPE_UTIL())) + +proc ATK_IS_UTIL_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, ATK_TYPE_UTIL()) + +proc ATK_UTIL_GET_CLASS*(obj: pointer): PAtkUtilClass = + result = cast[PAtkUtilClass](G_TYPE_INSTANCE_GET_CLASS(obj, ATK_TYPE_UTIL())) + +proc ATK_TYPE_VALUE*(): GType = + result = atk_value_get_type() + +proc ATK_IS_VALUE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, ATK_TYPE_VALUE()) + +proc ATK_VALUE*(obj: pointer): PAtkValue = + result = cast[PAtkValue](G_TYPE_CHECK_INSTANCE_CAST(obj, ATK_TYPE_VALUE())) + +proc ATK_VALUE_GET_IFACE*(obj: pointer): PAtkValueIface = + result = cast[PAtkValueIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, ATK_TYPE_VALUE())) diff --git a/lib/base/gtk/gdk2.nim b/lib/base/gtk/gdk2.nim new file mode 100755 index 000000000..11179525a --- /dev/null +++ b/lib/base/gtk/gdk2.nim @@ -0,0 +1,3957 @@ +import + glib2, gdk2pixbuf, pango + +when defined(win32): + {.define: GDK_WINDOWING_WIN32.} + const + gdklib = "libgdk-win32-2.0-0.dll" + GDK_HAVE_WCHAR_H = 1 + GDK_HAVE_WCTYPE_H = 1 +elif defined(darwin): + # linklib gtk-x11-2.0 + # linklib gdk-x11-2.0 + # linklib pango-1.0.0 + # linklib glib-2.0.0 + # linklib gobject-2.0.0 + # linklib gdk_pixbuf-2.0.0 + # linklib atk-1.0.0 + const + gdklib = "gdk-x11-2.0" +else: + const + gdklib = "libgdk-x11-2.0.so" +const + NUMPTSTOBUFFER* = 200 + GDK_MAX_TIMECOORD_AXES* = 128 + +type + PGdkDeviceClass* = ptr TGdkDeviceClass + TGdkDeviceClass* = object of TGObjectClass + + PGdkVisualClass* = ptr TGdkVisualClass + TGdkVisualClass* = object of TGObjectClass + + PGdkColor* = ptr TGdkColor + TGdkColor* = record + pixel*: guint32 + red*: guint16 + green*: guint16 + blue*: guint16 + + PGdkColormap* = ptr TGdkColormap + PGdkDrawable* = ptr TGdkDrawable + TGdkDrawable* = object of TGObject + + PGdkWindow* = ptr TGdkWindow + TGdkWindow* = TGdkDrawable + PGdkPixmap* = ptr TGdkPixmap + TGdkPixmap* = TGdkDrawable + PGdkBitmap* = ptr TGdkBitmap + TGdkBitmap* = TGdkDrawable + PGdkFontType* = ptr TGdkFontType + TGdkFontType* = enum + GDK_FONT_FONT, GDK_FONT_FONTSET + PGdkFont* = ptr TGdkFont + TGdkFont* = record + `type`*: TGdkFontType + ascent*: gint + descent*: gint + + PGdkFunction* = ptr TGdkFunction + TGdkFunction* = enum + GDK_COPY, GDK_INVERT, GDK_XOR, GDK_CLEAR, GDK_AND, GDK_AND_REVERSE, + GDK_AND_INVERT, GDK_NOOP, GDK_OR, GDK_EQUIV, GDK_OR_REVERSE, + GDK_COPY_INVERT, GDK_OR_INVERT, GDK_NAND, GDK_NOR, GDK_SET + PGdkCapStyle* = ptr TGdkCapStyle + TGdkCapStyle* = enum + GDK_CAP_NOT_LAST, GDK_CAP_BUTT, GDK_CAP_ROUND, GDK_CAP_PROJECTING + PGdkFill* = ptr TGdkFill + TGdkFill* = enum + GDK_SOLID, GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED + PGdkJoinStyle* = ptr TGdkJoinStyle + TGdkJoinStyle* = enum + GDK_JOIN_MITER, GDK_JOIN_ROUND, GDK_JOIN_BEVEL + PGdkLineStyle* = ptr TGdkLineStyle + TGdkLineStyle* = enum + GDK_LINE_SOLID, GDK_LINE_ON_OFF_DASH, GDK_LINE_DOUBLE_DASH + PGdkSubwindowMode* = ptr TGdkSubwindowMode + TGdkSubwindowMode* = int + PGdkGCValuesMask* = ptr TGdkGCValuesMask + TGdkGCValuesMask* = int32 + PGdkGCValues* = ptr TGdkGCValues + TGdkGCValues* = record + foreground*: TGdkColor + background*: TGdkColor + font*: PGdkFont + `function`*: TGdkFunction + fill*: TGdkFill + tile*: PGdkPixmap + stipple*: PGdkPixmap + clip_mask*: PGdkPixmap + subwindow_mode*: TGdkSubwindowMode + ts_x_origin*: gint + ts_y_origin*: gint + clip_x_origin*: gint + clip_y_origin*: gint + graphics_exposures*: gint + line_width*: gint + line_style*: TGdkLineStyle + cap_style*: TGdkCapStyle + join_style*: TGdkJoinStyle + + PGdkGC* = ptr TGdkGC + TGdkGC* = object of TGObject + clip_x_origin*: gint + clip_y_origin*: gint + ts_x_origin*: gint + ts_y_origin*: gint + colormap*: PGdkColormap + + PGdkImageType* = ptr TGdkImageType + TGdkImageType* = enum + GDK_IMAGE_NORMAL, GDK_IMAGE_SHARED, GDK_IMAGE_FASTEST + PGdkImage* = ptr TGdkImage + PGdkDevice* = ptr TGdkDevice + PGdkTimeCoord* = ptr TGdkTimeCoord + PPGdkTimeCoord* = ptr PGdkTimeCoord + PGdkRgbDither* = ptr TGdkRgbDither + TGdkRgbDither* = enum + GDK_RGB_DITHER_NONE, GDK_RGB_DITHER_NORMAL, GDK_RGB_DITHER_MAX + PGdkDisplay* = ptr TGdkDisplay + PGdkScreen* = ptr TGdkScreen + TGdkScreen* = object of TGObject + + PGdkInputCondition* = ptr TGdkInputCondition + TGdkInputCondition* = int32 + PGdkStatus* = ptr TGdkStatus + TGdkStatus* = int32 + TGdkPoint* = record + x*: gint + y*: gint + + PGdkPoint* = ptr TGdkPoint + PPGdkPoint* = ptr PGdkPoint + PGdkSpan* = ptr TGdkSpan + PGdkWChar* = ptr TGdkWChar + TGdkWChar* = guint32 + PGdkSegment* = ptr TGdkSegment + TGdkSegment* = record + x1*: gint + y1*: gint + x2*: gint + y2*: gint + + PGdkRectangle* = ptr TGdkRectangle + TGdkRectangle* = record + x*: gint + y*: gint + width*: gint + height*: gint + + PGdkAtom* = ptr TGdkAtom + TGdkAtom* = gulong + PGdkByteOrder* = ptr TGdkByteOrder + TGdkByteOrder* = enum + GDK_LSB_FIRST, GDK_MSB_FIRST + PGdkModifierType* = ptr TGdkModifierType + TGdkModifierType* = gint + PGdkVisualType* = ptr TGdkVisualType + TGdkVisualType* = enum + GDK_VISUAL_STATIC_GRAY, GDK_VISUAL_GRAYSCALE, GDK_VISUAL_STATIC_COLOR, + GDK_VISUAL_PSEUDO_COLOR, GDK_VISUAL_TRUE_COLOR, GDK_VISUAL_DIRECT_COLOR + PGdkVisual* = ptr TGdkVisual + TGdkVisual* = object of TGObject + TheType*: TGdkVisualType + depth*: gint + byte_order*: TGdkByteOrder + colormap_size*: gint + bits_per_rgb*: gint + red_mask*: guint32 + red_shift*: gint + red_prec*: gint + green_mask*: guint32 + green_shift*: gint + green_prec*: gint + blue_mask*: guint32 + blue_shift*: gint + blue_prec*: gint + screen*: PGdkScreen + + PGdkColormapClass* = ptr TGdkColormapClass + TGdkColormapClass* = object of TGObjectClass + + TGdkColormap* = object of TGObject + size*: gint + colors*: PGdkColor + visual*: PGdkVisual + windowing_data*: gpointer + screen*: PGdkScreen + + PGdkCursorType* = ptr TGdkCursorType + TGdkCursorType* = gint + PGdkCursor* = ptr TGdkCursor + TGdkCursor* = record + `type`*: TGdkCursorType + ref_count*: guint + + PGdkDragAction* = ptr TGdkDragAction + TGdkDragAction* = int32 + PGdkDragProtocol* = ptr TGdkDragProtocol + TGdkDragProtocol* = enum + GDK_DRAG_PROTO_MOTIF, GDK_DRAG_PROTO_XDND, GDK_DRAG_PROTO_ROOTWIN, + GDK_DRAG_PROTO_NONE, GDK_DRAG_PROTO_WIN32_DROPFILES, GDK_DRAG_PROTO_OLE2, + GDK_DRAG_PROTO_LOCAL + PGdkDragContext* = ptr TGdkDragContext + TGdkDragContext* = object of TGObject + protocol*: TGdkDragProtocol + is_source*: gboolean + source_window*: PGdkWindow + dest_window*: PGdkWindow + targets*: PGList + actions*: TGdkDragAction + suggested_action*: TGdkDragAction + action*: TGdkDragAction + start_time*: guint32 + windowing_data*: gpointer + + PGdkDragContextClass* = ptr TGdkDragContextClass + TGdkDragContextClass* = object of TGObjectClass + + PGdkRegionBox* = ptr TGdkRegionBox + TGdkRegionBox* = TGdkSegment + PGdkRegion* = ptr TGdkRegion + TGdkRegion* = record + size*: int32 + numRects*: int32 + rects*: PGdkRegionBox + extents*: TGdkRegionBox + + PPOINTBLOCK* = ptr TPOINTBLOCK + TPOINTBLOCK* = record + pts*: array[0..(NUMPTSTOBUFFER) - 1, TGdkPoint] + next*: PPOINTBLOCK + + PGdkDrawableClass* = ptr TGdkDrawableClass + TGdkDrawableClass* = object of TGObjectClass + create_gc*: proc (drawable: PGdkDrawable, values: PGdkGCValues, + mask: TGdkGCValuesMask): PGdkGC{.cdecl.} + draw_rectangle*: proc (drawable: PGdkDrawable, gc: PGdkGC, filled: gint, + x: gint, y: gint, width: gint, height: gint){.cdecl.} + draw_arc*: proc (drawable: PGdkDrawable, gc: PGdkGC, filled: gint, x: gint, + y: gint, width: gint, height: gint, angle1: gint, + angle2: gint){.cdecl.} + draw_polygon*: proc (drawable: PGdkDrawable, gc: PGdkGC, filled: gint, + points: PGdkPoint, npoints: gint){.cdecl.} + draw_text*: proc (drawable: PGdkDrawable, font: PGdkFont, gc: PGdkGC, + x: gint, y: gint, text: cstring, text_length: gint){.cdecl.} + draw_text_wc*: proc (drawable: PGdkDrawable, font: PGdkFont, gc: PGdkGC, + x: gint, y: gint, text: PGdkWChar, text_length: gint){. + cdecl.} + draw_drawable*: proc (drawable: PGdkDrawable, gc: PGdkGC, src: PGdkDrawable, + xsrc: gint, ysrc: gint, xdest: gint, ydest: gint, + width: gint, height: gint){.cdecl.} + draw_points*: proc (drawable: PGdkDrawable, gc: PGdkGC, points: PGdkPoint, + npoints: gint){.cdecl.} + draw_segments*: proc (drawable: PGdkDrawable, gc: PGdkGC, segs: PGdkSegment, + nsegs: gint){.cdecl.} + draw_lines*: proc (drawable: PGdkDrawable, gc: PGdkGC, points: PGdkPoint, + npoints: gint){.cdecl.} + draw_glyphs*: proc (drawable: PGdkDrawable, gc: PGdkGC, font: PPangoFont, + x: gint, y: gint, glyphs: PPangoGlyphString){.cdecl.} + draw_image*: proc (drawable: PGdkDrawable, gc: PGdkGC, image: PGdkImage, + xsrc: gint, ysrc: gint, xdest: gint, ydest: gint, + width: gint, height: gint){.cdecl.} + get_depth*: proc (drawable: PGdkDrawable): gint{.cdecl.} + get_size*: proc (drawable: PGdkDrawable, width: Pgint, height: Pgint){.cdecl.} + set_colormap*: proc (drawable: PGdkDrawable, cmap: PGdkColormap){.cdecl.} + get_colormap*: proc (drawable: PGdkDrawable): PGdkColormap{.cdecl.} + get_visual*: proc (drawable: PGdkDrawable): PGdkVisual{.cdecl.} + get_screen*: proc (drawable: PGdkDrawable): PGdkScreen{.cdecl.} + get_image*: proc (drawable: PGdkDrawable, x: gint, y: gint, width: gint, + height: gint): PGdkImage{.cdecl.} + get_clip_region*: proc (drawable: PGdkDrawable): PGdkRegion{.cdecl.} + get_visible_region*: proc (drawable: PGdkDrawable): PGdkRegion{.cdecl.} + get_composite_drawable*: proc (drawable: PGdkDrawable, x: gint, y: gint, + width: gint, height: gint, + composite_x_offset: Pgint, + composite_y_offset: Pgint): PGdkDrawable{. + cdecl.} + `draw_pixbuf`*: proc (drawable: PGdkDrawable, gc: PGdkGC, + pixbuf: PGdkPixbuf, src_x: gint, src_y: gint, + dest_x: gint, dest_y: gint, width: gint, height: gint, + dither: TGdkRgbDither, x_dither: gint, y_dither: gint){. + cdecl.} + `copy_to_image`*: proc (drawable: PGdkDrawable, image: PGdkImage, + src_x: gint, src_y: gint, dest_x: gint, + dest_y: gint, width: gint, height: gint): PGdkImage{. + cdecl.} + `gdk_reserved1`: proc (){.cdecl.} + `gdk_reserved2`: proc (){.cdecl.} + `gdk_reserved3`: proc (){.cdecl.} + `gdk_reserved4`: proc (){.cdecl.} + `gdk_reserved5`: proc (){.cdecl.} + `gdk_reserved6`: proc (){.cdecl.} + `gdk_reserved7`: proc (){.cdecl.} + `gdk_reserved9`: proc (){.cdecl.} + `gdk_reserved10`: proc (){.cdecl.} + `gdk_reserved11`: proc (){.cdecl.} + `gdk_reserved12`: proc (){.cdecl.} + `gdk_reserved13`: proc (){.cdecl.} + `gdk_reserved14`: proc (){.cdecl.} + `gdk_reserved15`: proc (){.cdecl.} + `gdk_reserved16`: proc (){.cdecl.} + + PGdkEvent* = ptr TGdkEvent + TGdkEventFunc* = proc (event: PGdkEvent, data: gpointer){.cdecl.} + PGdkXEvent* = ptr TGdkXEvent + TGdkXEvent* = proc () + PGdkFilterReturn* = ptr TGdkFilterReturn + TGdkFilterReturn* = enum + GDK_FILTER_CONTINUE, GDK_FILTER_TRANSLATE, GDK_FILTER_REMOVE + TGdkFilterFunc* = proc (xevent: PGdkXEvent, event: PGdkEvent, data: gpointer): TGdkFilterReturn{. + cdecl.} + PGdkEventType* = ptr TGdkEventType + TGdkEventType* = gint + PGdkEventMask* = ptr TGdkEventMask + TGdkEventMask* = gint32 + PGdkVisibilityState* = ptr TGdkVisibilityState + TGdkVisibilityState* = enum + GDK_VISIBILITY_UNOBSCURED, GDK_VISIBILITY_PARTIAL, + GDK_VISIBILITY_FULLY_OBSCURED + PGdkScrollDirection* = ptr TGdkScrollDirection + TGdkScrollDirection* = enum + GDK_SCROLL_UP, GDK_SCROLL_DOWN, GDK_SCROLL_LEFT, GDK_SCROLL_RIGHT + PGdkNotifyType* = ptr TGdkNotifyType + TGdkNotifyType* = int + PGdkCrossingMode* = ptr TGdkCrossingMode + TGdkCrossingMode* = enum + GDK_CROSSING_NORMAL, GDK_CROSSING_GRAB, GDK_CROSSING_UNGRAB + PGdkPropertyState* = ptr TGdkPropertyState + TGdkPropertyState* = enum + GDK_PROPERTY_NEW_VALUE, GDK_PROPERTY_STATE_DELETE + PGdkWindowState* = ptr TGdkWindowState + TGdkWindowState* = gint + PGdkSettingAction* = ptr TGdkSettingAction + TGdkSettingAction* = enum + GDK_SETTING_ACTION_NEW, GDK_SETTING_ACTION_CHANGED, + GDK_SETTING_ACTION_DELETED + PGdkEventAny* = ptr TGdkEventAny + TGdkEventAny* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + + PGdkEventExpose* = ptr TGdkEventExpose + TGdkEventExpose* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + area*: TGdkRectangle + region*: PGdkRegion + count*: gint + + PGdkEventNoExpose* = ptr TGdkEventNoExpose + TGdkEventNoExpose* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + + PGdkEventVisibility* = ptr TGdkEventVisibility + TGdkEventVisibility* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + state*: TGdkVisibilityState + + PGdkEventMotion* = ptr TGdkEventMotion + TGdkEventMotion* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + time*: guint32 + x*: gdouble + y*: gdouble + axes*: Pgdouble + state*: guint + is_hint*: gint16 + device*: PGdkDevice + x_root*: gdouble + y_root*: gdouble + + PGdkEventButton* = ptr TGdkEventButton + TGdkEventButton* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + time*: guint32 + x*: gdouble + y*: gdouble + axes*: Pgdouble + state*: guint + button*: guint + device*: PGdkDevice + x_root*: gdouble + y_root*: gdouble + + PGdkEventScroll* = ptr TGdkEventScroll + TGdkEventScroll* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + time*: guint32 + x*: gdouble + y*: gdouble + state*: guint + direction*: TGdkScrollDirection + device*: PGdkDevice + x_root*: gdouble + y_root*: gdouble + + PGdkEventKey* = ptr TGdkEventKey + TGdkEventKey* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + time*: guint32 + state*: guint + keyval*: guint + length*: gint + `string`*: cstring + hardware_keycode*: guint16 + group*: guint8 + + PGdkEventCrossing* = ptr TGdkEventCrossing + TGdkEventCrossing* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + subwindow*: PGdkWindow + time*: guint32 + x*: gdouble + y*: gdouble + x_root*: gdouble + y_root*: gdouble + mode*: TGdkCrossingMode + detail*: TGdkNotifyType + focus*: gboolean + state*: guint + + PGdkEventFocus* = ptr TGdkEventFocus + TGdkEventFocus* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + `in`*: gint16 + + PGdkEventConfigure* = ptr TGdkEventConfigure + TGdkEventConfigure* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + x*: gint + y*: gint + width*: gint + height*: gint + + PGdkEventProperty* = ptr TGdkEventProperty + TGdkEventProperty* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + atom*: TGdkAtom + time*: guint32 + state*: guint + + TGdkNativeWindow* = pointer + PGdkEventSelection* = ptr TGdkEventSelection + TGdkEventSelection* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + selection*: TGdkAtom + target*: TGdkAtom + `property`*: TGdkAtom + time*: guint32 + requestor*: TGdkNativeWindow + + PGdkEventProximity* = ptr TGdkEventProximity + TGdkEventProximity* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + time*: guint32 + device*: PGdkDevice + + PmatDUMMY* = ptr TmatDUMMY + TmatDUMMY* = record + b*: array[0..19, char] + + PGdkEventClient* = ptr TGdkEventClient + TGdkEventClient* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + message_type*: TGdkAtom + data_format*: gushort + b*: array[0..19, char] + + PGdkEventSetting* = ptr TGdkEventSetting + TGdkEventSetting* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + action*: TGdkSettingAction + name*: cstring + + PGdkEventWindowState* = ptr TGdkEventWindowState + TGdkEventWindowState* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + changed_mask*: TGdkWindowState + new_window_state*: TGdkWindowState + + PGdkEventDND* = ptr TGdkEventDND + TGdkEventDND* = record + `type`*: TGdkEventType + window*: PGdkWindow + send_event*: gint8 + context*: PGdkDragContext + time*: guint32 + x_root*: gshort + y_root*: gshort + + TGdkEvent* = record + data*: array[0..255, char] # union of + # `type`: TGdkEventType + # any: TGdkEventAny + # expose: TGdkEventExpose + # no_expose: TGdkEventNoExpose + # visibility: TGdkEventVisibility + # motion: TGdkEventMotion + # button: TGdkEventButton + # scroll: TGdkEventScroll + # key: TGdkEventKey + # crossing: TGdkEventCrossing + # focus_change: TGdkEventFocus + # configure: TGdkEventConfigure + # `property`: TGdkEventProperty + # selection: TGdkEventSelection + # proximity: TGdkEventProximity + # client: TGdkEventClient + # dnd: TGdkEventDND + # window_state: TGdkEventWindowState + # setting: TGdkEventSetting + + PGdkGCClass* = ptr TGdkGCClass + TGdkGCClass* = object of TGObjectClass + get_values*: proc (gc: PGdkGC, values: PGdkGCValues){.cdecl.} + set_values*: proc (gc: PGdkGC, values: PGdkGCValues, mask: TGdkGCValuesMask){. + cdecl.} + set_dashes*: proc (gc: PGdkGC, dash_offset: gint, + dash_list: openarray[gint8]){.cdecl.} + `gdk_reserved1`*: proc (){.cdecl.} + `gdk_reserved2`*: proc (){.cdecl.} + `gdk_reserved3`*: proc (){.cdecl.} + `gdk_reserved4`*: proc (){.cdecl.} + + PGdkImageClass* = ptr TGdkImageClass + TGdkImageClass* = object of TGObjectClass + + TGdkImage* = object of TGObject + `type`*: TGdkImageType + visual*: PGdkVisual + byte_order*: TGdkByteOrder + width*: gint + height*: gint + depth*: guint16 + bpp*: guint16 + bpl*: guint16 + bits_per_pixel*: guint16 + mem*: gpointer + colormap*: PGdkColormap + windowing_data*: gpointer + + PGdkExtensionMode* = ptr TGdkExtensionMode + TGdkExtensionMode* = enum + GDK_EXTENSION_EVENTS_NONE, GDK_EXTENSION_EVENTS_ALL, + GDK_EXTENSION_EVENTS_CURSOR + PGdkInputSource* = ptr TGdkInputSource + TGdkInputSource* = enum + GDK_SOURCE_MOUSE, GDK_SOURCE_PEN, GDK_SOURCE_ERASER, GDK_SOURCE_CURSOR + PGdkInputMode* = ptr TGdkInputMode + TGdkInputMode* = enum + GDK_MODE_DISABLED, GDK_MODE_SCREEN, GDK_MODE_WINDOW + PGdkAxisUse* = ptr TGdkAxisUse + TGdkAxisUse* = int32 + PGdkDeviceKey* = ptr TGdkDeviceKey + TGdkDeviceKey* = record + keyval*: guint + modifiers*: TGdkModifierType + + PGdkDeviceAxis* = ptr TGdkDeviceAxis + TGdkDeviceAxis* = record + use*: TGdkAxisUse + min*: gdouble + max*: gdouble + + TGdkDevice* = object of TGObject + name*: cstring + source*: TGdkInputSource + mode*: TGdkInputMode + has_cursor*: gboolean + num_axes*: gint + axes*: PGdkDeviceAxis + num_keys*: gint + keys*: PGdkDeviceKey + + TGdkTimeCoord* = record + time*: guint32 + axes*: array[0..(GDK_MAX_TIMECOORD_AXES) - 1, gdouble] + + PGdkKeymapKey* = ptr TGdkKeymapKey + TGdkKeymapKey* = record + keycode*: guint + group*: gint + level*: gint + + PGdkKeymap* = ptr TGdkKeymap + TGdkKeymap* = object of TGObject + display*: PGdkDisplay + + PGdkKeymapClass* = ptr TGdkKeymapClass + TGdkKeymapClass* = object of TGObjectClass + direction_changed*: proc (keymap: PGdkKeymap){.cdecl.} + + PGdkPangoAttrStipple* = ptr TGdkPangoAttrStipple + TGdkPangoAttrStipple* = record + attr*: TPangoAttribute + stipple*: PGdkBitmap + + PGdkPangoAttrEmbossed* = ptr TGdkPangoAttrEmbossed + TGdkPangoAttrEmbossed* = record + attr*: TPangoAttribute + embossed*: gboolean + + PGdkPixmapObject* = ptr TGdkPixmapObject + TGdkPixmapObject* = object of TGdkDrawable + impl*: PGdkDrawable + depth*: gint + + PGdkPixmapObjectClass* = ptr TGdkPixmapObjectClass + TGdkPixmapObjectClass* = object of TGdkDrawableClass + + PGdkPropMode* = ptr TGdkPropMode + TGdkPropMode* = enum + GDK_PROP_MODE_REPLACE, GDK_PROP_MODE_PREPEND, GDK_PROP_MODE_APPEND + PGdkFillRule* = ptr TGdkFillRule + TGdkFillRule* = enum + GDK_EVEN_ODD_RULE, GDK_WINDING_RULE + PGdkOverlapType* = ptr TGdkOverlapType + TGdkOverlapType* = enum + GDK_OVERLAP_RECTANGLE_IN, GDK_OVERLAP_RECTANGLE_OUT, + GDK_OVERLAP_RECTANGLE_PART + TGdkSpanFunc* = proc (span: PGdkSpan, data: gpointer){.cdecl.} + PGdkRgbCmap* = ptr TGdkRgbCmap + TGdkRgbCmap* = record + colors*: array[0..255, guint32] + n_colors*: gint + info_list*: PGSList + + TGdkDisplay* = object of TGObject + queued_events*: PGList + queued_tail*: PGList + button_click_time*: array[0..1, guint32] + button_window*: array[0..1, PGdkWindow] + button_number*: array[0..1, guint] + double_click_time*: guint + + PGdkDisplayClass* = ptr TGdkDisplayClass + TGdkDisplayClass* = object of TGObjectClass + get_display_name*: proc (display: PGdkDisplay): cstring{.cdecl.} + get_n_screens*: proc (display: PGdkDisplay): gint{.cdecl.} + get_screen*: proc (display: PGdkDisplay, screen_num: gint): PGdkScreen{. + cdecl.} + get_default_screen*: proc (display: PGdkDisplay): PGdkScreen{.cdecl.} + + PGdkScreenClass* = ptr TGdkScreenClass + TGdkScreenClass* = object of TGObjectClass + get_display*: proc (screen: PGdkScreen): PGdkDisplay{.cdecl.} + get_width*: proc (screen: PGdkScreen): gint{.cdecl.} + get_height*: proc (screen: PGdkScreen): gint{.cdecl.} + get_width_mm*: proc (screen: PGdkScreen): gint{.cdecl.} + get_height_mm*: proc (screen: PGdkScreen): gint{.cdecl.} + get_root_depth*: proc (screen: PGdkScreen): gint{.cdecl.} + get_screen_num*: proc (screen: PGdkScreen): gint{.cdecl.} + get_root_window*: proc (screen: PGdkScreen): PGdkWindow{.cdecl.} + get_default_colormap*: proc (screen: PGdkScreen): PGdkColormap{.cdecl.} + set_default_colormap*: proc (screen: PGdkScreen, colormap: PGdkColormap){. + cdecl.} + get_window_at_pointer*: proc (screen: PGdkScreen, win_x: Pgint, win_y: Pgint): PGdkWindow{. + cdecl.} + get_n_monitors*: proc (screen: PGdkScreen): gint{.cdecl.} + get_monitor_geometry*: proc (screen: PGdkScreen, monitor_num: gint, + dest: PGdkRectangle){.cdecl.} + + PGdkGrabStatus* = ptr TGdkGrabStatus + TGdkGrabStatus* = int + TGdkInputFunction* = proc (data: gpointer, source: gint, + condition: TGdkInputCondition){.cdecl.} + TGdkDestroyNotify* = proc (data: gpointer){.cdecl.} + TGdkSpan* = record + x*: gint + y*: gint + width*: gint + + PGdkWindowClass* = ptr TGdkWindowClass + TGdkWindowClass* = enum + GDK_INPUT_OUTPUT, GDK_INPUT_ONLY + PGdkWindowType* = ptr TGdkWindowType + TGdkWindowType* = enum + GDK_WINDOW_ROOT, GDK_WINDOW_TOPLEVEL, GDK_WINDOW_CHILD, GDK_WINDOW_DIALOG, + GDK_WINDOW_TEMP, GDK_WINDOW_FOREIGN + PGdkWindowAttributesType* = ptr TGdkWindowAttributesType + TGdkWindowAttributesType* = int32 + PGdkWindowHints* = ptr TGdkWindowHints + TGdkWindowHints* = int32 + PGdkWindowTypeHint* = ptr TGdkWindowTypeHint + TGdkWindowTypeHint* = enum + GDK_WINDOW_TYPE_HINT_NORMAL, GDK_WINDOW_TYPE_HINT_DIALOG, + GDK_WINDOW_TYPE_HINT_MENU, GDK_WINDOW_TYPE_HINT_TOOLBAR + PGdkWMDecoration* = ptr TGdkWMDecoration + TGdkWMDecoration* = int32 + PGdkWMFunction* = ptr TGdkWMFunction + TGdkWMFunction* = int32 + PGdkGravity* = ptr TGdkGravity + TGdkGravity* = int + PGdkWindowEdge* = ptr TGdkWindowEdge + TGdkWindowEdge* = enum + GDK_WINDOW_EDGE_NORTH_WEST, GDK_WINDOW_EDGE_NORTH, + GDK_WINDOW_EDGE_NORTH_EAST, GDK_WINDOW_EDGE_WEST, GDK_WINDOW_EDGE_EAST, + GDK_WINDOW_EDGE_SOUTH_WEST, GDK_WINDOW_EDGE_SOUTH, + GDK_WINDOW_EDGE_SOUTH_EAST + PGdkWindowAttr* = ptr TGdkWindowAttr + TGdkWindowAttr* = record + title*: cstring + event_mask*: gint + x*: gint + y*: gint + width*: gint + height*: gint + wclass*: TGdkWindowClass + visual*: PGdkVisual + colormap*: PGdkColormap + window_type*: TGdkWindowType + cursor*: PGdkCursor + wmclass_name*: cstring + wmclass_class*: cstring + override_redirect*: gboolean + + PGdkGeometry* = ptr TGdkGeometry + TGdkGeometry* = record + min_width*: gint + min_height*: gint + max_width*: gint + max_height*: gint + base_width*: gint + base_height*: gint + width_inc*: gint + height_inc*: gint + min_aspect*: gdouble + max_aspect*: gdouble + win_gravity*: TGdkGravity + + PGdkPointerHooks* = ptr TGdkPointerHooks + TGdkPointerHooks* = record + get_pointer*: proc (window: PGdkWindow, x: Pgint, y: Pgint, + mask: PGdkModifierType): PGdkWindow{.cdecl.} + window_at_pointer*: proc (screen: PGdkScreen, win_x: Pgint, win_y: Pgint): PGdkWindow{. + cdecl.} + + PGdkWindowObject* = ptr TGdkWindowObject + TGdkWindowObject* = object of TGdkDrawable + impl*: PGdkDrawable + parent*: PGdkWindowObject + user_data*: gpointer + x*: gint + y*: gint + extension_events*: gint + filters*: PGList + children*: PGList + bg_color*: TGdkColor + bg_pixmap*: PGdkPixmap + paint_stack*: PGSList + update_area*: PGdkRegion + update_freeze_count*: guint + window_type*: guint8 + depth*: guint8 + resize_count*: guint8 + state*: TGdkWindowState + flag0*: guint16 + event_mask*: TGdkEventMask + + PGdkWindowObjectClass* = ptr TGdkWindowObjectClass + TGdkWindowObjectClass* = object of TGdkDrawableClass + + gdk_window_invalidate_maybe_recurse_child_func* = proc (para1: PGdkWindow, + para2: gpointer): gboolean + +proc GDK_TYPE_COLORMAP*(): GType +proc GDK_COLORMAP*(anObject: pointer): PGdkColormap +proc GDK_COLORMAP_CLASS*(klass: pointer): PGdkColormapClass +proc GDK_IS_COLORMAP*(anObject: pointer): bool +proc GDK_IS_COLORMAP_CLASS*(klass: pointer): bool +proc GDK_COLORMAP_GET_CLASS*(obj: pointer): PGdkColormapClass +proc GDK_TYPE_COLOR*(): GType +proc gdk_colormap_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_colormap_get_type".} +proc gdk_colormap_new*(visual: PGdkVisual, allocate: gboolean): PGdkColormap{. + cdecl, dynlib: gdklib, importc: "gdk_colormap_new".} +proc gdk_colormap_alloc_colors*(colormap: PGdkColormap, colors: PGdkColor, + ncolors: gint, writeable: gboolean, + best_match: gboolean, success: Pgboolean): gint{. + cdecl, dynlib: gdklib, importc: "gdk_colormap_alloc_colors".} +proc gdk_colormap_alloc_color*(colormap: PGdkColormap, color: PGdkColor, + writeable: gboolean, best_match: gboolean): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_colormap_alloc_color".} +proc gdk_colormap_free_colors*(colormap: PGdkColormap, colors: PGdkColor, + ncolors: gint){.cdecl, dynlib: gdklib, + importc: "gdk_colormap_free_colors".} +proc gdk_colormap_query_color*(colormap: PGdkColormap, pixel: gulong, + result: PGdkColor){.cdecl, dynlib: gdklib, + importc: "gdk_colormap_query_color".} +proc gdk_colormap_get_visual*(colormap: PGdkColormap): PGdkVisual{.cdecl, + dynlib: gdklib, importc: "gdk_colormap_get_visual".} +proc gdk_color_copy*(color: PGdkColor): PGdkColor{.cdecl, dynlib: gdklib, + importc: "gdk_color_copy".} +proc gdk_color_free*(color: PGdkColor){.cdecl, dynlib: gdklib, + importc: "gdk_color_free".} +proc gdk_color_parse*(spec: cstring, color: PGdkColor): gint{.cdecl, + dynlib: gdklib, importc: "gdk_color_parse".} +proc gdk_color_hash*(colora: PGdkColor): guint{.cdecl, dynlib: gdklib, + importc: "gdk_color_hash".} +proc gdk_color_equal*(colora: PGdkColor, colorb: PGdkColor): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_color_equal".} +proc gdk_color_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_color_get_type".} +const + GDK_CURSOR_IS_PIXMAP* = - (1) + GDK_X_CURSOR* = 0 + GDK_ARROW* = 2 + GDK_BASED_ARROW_DOWN* = 4 + GDK_BASED_ARROW_UP* = 6 + GDK_BOAT* = 8 + GDK_BOGOSITY* = 10 + GDK_BOTTOM_LEFT_CORNER* = 12 + GDK_BOTTOM_RIGHT_CORNER* = 14 + GDK_BOTTOM_SIDE* = 16 + GDK_BOTTOM_TEE* = 18 + GDK_BOX_SPIRAL* = 20 + GDK_CENTER_PTR* = 22 + GDK_CIRCLE* = 24 + GDK_CLOCK* = 26 + GDK_COFFEE_MUG* = 28 + GDK_CROSS* = 30 + GDK_CROSS_REVERSE* = 32 + GDK_CROSSHAIR* = 34 + GDK_DIAMOND_CROSS* = 36 + GDK_DOT* = 38 + GDK_DOTBOX* = 40 + GDK_DOUBLE_ARROW* = 42 + GDK_DRAFT_LARGE* = 44 + GDK_DRAFT_SMALL* = 46 + GDK_DRAPED_BOX* = 48 + GDK_EXCHANGE* = 50 + GDK_FLEUR* = 52 + GDK_GOBBLER* = 54 + GDK_GUMBY* = 56 + GDK_HAND1* = 58 + GDK_HAND2* = 60 + GDK_HEART* = 62 + GDK_ICON* = 64 + GDK_IRON_CROSS* = 66 + GDK_LEFT_PTR* = 68 + GDK_LEFT_SIDE* = 70 + GDK_LEFT_TEE* = 72 + GDK_LEFTBUTTON* = 74 + GDK_LL_ANGLE* = 76 + GDK_LR_ANGLE* = 78 + GDK_MAN* = 80 + GDK_MIDDLEBUTTON* = 82 + GDK_MOUSE* = 84 + GDK_PENCIL* = 86 + GDK_PIRATE* = 88 + GDK_PLUS* = 90 + GDK_QUESTION_ARROW* = 92 + GDK_RIGHT_PTR* = 94 + GDK_RIGHT_SIDE* = 96 + GDK_RIGHT_TEE* = 98 + GDK_RIGHTBUTTON* = 100 + GDK_RTL_LOGO* = 102 + GDK_SAILBOAT* = 104 + GDK_SB_DOWN_ARROW* = 106 + GDK_SB_H_DOUBLE_ARROW* = 108 + GDK_SB_LEFT_ARROW* = 110 + GDK_SB_RIGHT_ARROW* = 112 + GDK_SB_UP_ARROW* = 114 + GDK_SB_V_DOUBLE_ARROW* = 116 + GDK_SHUTTLE* = 118 + GDK_SIZING* = 120 + GDK_SPIDER* = 122 + GDK_SPRAYCAN* = 124 + GDK_STAR* = 126 + GDK_TARGET* = 128 + GDK_TCROSS* = 130 + GDK_TOP_LEFT_ARROW* = 132 + GDK_TOP_LEFT_CORNER* = 134 + GDK_TOP_RIGHT_CORNER* = 136 + GDK_TOP_SIDE* = 138 + GDK_TOP_TEE* = 140 + GDK_TREK* = 142 + GDK_UL_ANGLE* = 144 + GDK_UMBRELLA* = 146 + GDK_UR_ANGLE* = 148 + GDK_WATCH* = 150 + GDK_XTERM* = 152 + GDK_LAST_CURSOR* = GDK_XTERM + 1 + +proc GDK_TYPE_CURSOR*(): GType +proc gdk_cursor_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_cursor_get_type".} +proc gdk_cursor_new_for_screen*(screen: PGdkScreen, cursor_type: TGdkCursorType): PGdkCursor{. + cdecl, dynlib: gdklib, importc: "gdk_cursor_new_for_screen".} +proc gdk_cursor_new_from_pixmap*(source: PGdkPixmap, mask: PGdkPixmap, + fg: PGdkColor, bg: PGdkColor, x: gint, y: gint): PGdkCursor{. + cdecl, dynlib: gdklib, importc: "gdk_cursor_new_from_pixmap".} +proc gdk_cursor_get_screen*(cursor: PGdkCursor): PGdkScreen{.cdecl, + dynlib: gdklib, importc: "gdk_cursor_get_screen".} +proc gdk_cursor_ref*(cursor: PGdkCursor): PGdkCursor{.cdecl, dynlib: gdklib, + importc: "gdk_cursor_ref".} +proc gdk_cursor_unref*(cursor: PGdkCursor){.cdecl, dynlib: gdklib, + importc: "gdk_cursor_unref".} +const + GDK_ACTION_DEFAULT* = 1 shl 0 + GDK_ACTION_COPY* = 1 shl 1 + GDK_ACTION_MOVE* = 1 shl 2 + GDK_ACTION_LINK* = 1 shl 3 + GDK_ACTION_PRIVATE* = 1 shl 4 + GDK_ACTION_ASK* = 1 shl 5 + +proc GDK_TYPE_DRAG_CONTEXT*(): GType +proc GDK_DRAG_CONTEXT*(anObject: Pointer): PGdkDragContext +proc GDK_DRAG_CONTEXT_CLASS*(klass: Pointer): PGdkDragContextClass +proc GDK_IS_DRAG_CONTEXT*(anObject: Pointer): bool +proc GDK_IS_DRAG_CONTEXT_CLASS*(klass: Pointer): bool +proc GDK_DRAG_CONTEXT_GET_CLASS*(obj: Pointer): PGdkDragContextClass +proc gdk_drag_context_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_drag_context_get_type".} +proc gdk_drag_context_new*(): PGdkDragContext{.cdecl, dynlib: gdklib, + importc: "gdk_drag_context_new".} +proc gdk_drag_status*(context: PGdkDragContext, action: TGdkDragAction, + time: guint32){.cdecl, dynlib: gdklib, + importc: "gdk_drag_status".} +proc gdk_drop_reply*(context: PGdkDragContext, ok: gboolean, time: guint32){. + cdecl, dynlib: gdklib, importc: "gdk_drop_reply".} +proc gdk_drop_finish*(context: PGdkDragContext, success: gboolean, time: guint32){. + cdecl, dynlib: gdklib, importc: "gdk_drop_finish".} +proc gdk_drag_get_selection*(context: PGdkDragContext): TGdkAtom{.cdecl, + dynlib: gdklib, importc: "gdk_drag_get_selection".} +proc gdk_drag_begin*(window: PGdkWindow, targets: PGList): PGdkDragContext{. + cdecl, dynlib: gdklib, importc: "gdk_drag_begin".} +proc gdk_drag_get_protocol_for_display*(display: PGdkDisplay, xid: guint32, + protocol: PGdkDragProtocol): guint32{. + cdecl, dynlib: gdklib, importc: "gdk_drag_get_protocol_for_display".} +proc gdk_drag_find_window*(context: PGdkDragContext, drag_window: PGdkWindow, + x_root: gint, y_root: gint, w: var PGdkWindow, + protocol: PGdkDragProtocol){.cdecl, dynlib: gdklib, + importc: "gdk_drag_find_window".} +proc gdk_drag_motion*(context: PGdkDragContext, dest_window: PGdkWindow, + protocol: TGdkDragProtocol, x_root: gint, y_root: gint, + suggested_action: TGdkDragAction, + possible_actions: TGdkDragAction, time: guint32): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_drag_motion".} +proc gdk_drag_drop*(context: PGdkDragContext, time: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_drag_drop".} +proc gdk_drag_abort*(context: PGdkDragContext, time: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_drag_abort".} +proc gdkregion_EXTENTCHECK*(r1, r2: PGdkRegionBox): bool +proc gdkregion_EXTENTS*(r: PGdkRegionBox, idRect: PGdkRegion) +proc gdkregion_MEMCHECK*(reg: PGdkRegion, ARect, firstrect: var PGdkRegionBox): bool +proc gdkregion_CHECK_PREVIOUS*(Reg: PGdkRegion, R: PGdkRegionBox, + Rx1, Ry1, Rx2, Ry2: gint): bool +proc gdkregion_ADDRECT*(reg: PGdkRegion, r: PGdkRegionBox, + rx1, ry1, rx2, ry2: gint) +proc gdkregion_ADDRECTNOX*(reg: PGdkRegion, r: PGdkRegionBox, + rx1, ry1, rx2, ry2: gint) +proc gdkregion_EMPTY_REGION*(pReg: PGdkRegion): bool +proc gdkregion_REGION_NOT_EMPTY*(pReg: PGdkRegion): bool +proc gdkregion_INBOX*(r: TGdkRegionBox, x, y: gint): bool +proc GDK_TYPE_DRAWABLE*(): GType +proc GDK_DRAWABLE*(anObject: Pointer): PGdkDrawable +proc GDK_DRAWABLE_CLASS*(klass: Pointer): PGdkDrawableClass +proc GDK_IS_DRAWABLE*(anObject: Pointer): bool +proc GDK_IS_DRAWABLE_CLASS*(klass: Pointer): bool +proc GDK_DRAWABLE_GET_CLASS*(obj: Pointer): PGdkDrawableClass +proc gdk_drawable_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_drawable_get_type".} +proc gdk_drawable_get_size*(drawable: PGdkDrawable, width: Pgint, height: Pgint){. + cdecl, dynlib: gdklib, importc: "gdk_drawable_get_size".} +proc gdk_drawable_set_colormap*(drawable: PGdkDrawable, colormap: PGdkColormap){. + cdecl, dynlib: gdklib, importc: "gdk_drawable_set_colormap".} +proc gdk_drawable_get_colormap*(drawable: PGdkDrawable): PGdkColormap{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_colormap".} +proc gdk_drawable_get_visual*(drawable: PGdkDrawable): PGdkVisual{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_visual".} +proc gdk_drawable_get_depth*(drawable: PGdkDrawable): gint{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_depth".} +proc gdk_drawable_get_screen*(drawable: PGdkDrawable): PGdkScreen{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_screen".} +proc gdk_drawable_get_display*(drawable: PGdkDrawable): PGdkDisplay{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_display".} +proc gdk_draw_point*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, y: gint){. + cdecl, dynlib: gdklib, importc: "gdk_draw_point".} +proc gdk_draw_line*(drawable: PGdkDrawable, gc: PGdkGC, x1: gint, y1: gint, + x2: gint, y2: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_line".} +proc gdk_draw_rectangle*(drawable: PGdkDrawable, gc: PGdkGC, filled: gint, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gdklib, importc: "gdk_draw_rectangle".} +proc gdk_draw_arc*(drawable: PGdkDrawable, gc: PGdkGC, filled: gint, x: gint, + y: gint, width: gint, height: gint, angle1: gint, + angle2: gint){.cdecl, dynlib: gdklib, importc: "gdk_draw_arc".} +proc gdk_draw_polygon*(drawable: PGdkDrawable, gc: PGdkGC, filled: gint, + points: PGdkPoint, npoints: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_polygon".} +proc gdk_draw_drawable*(drawable: PGdkDrawable, gc: PGdkGC, src: PGdkDrawable, + xsrc: gint, ysrc: gint, xdest: gint, ydest: gint, + width: gint, height: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_drawable".} +proc gdk_draw_image*(drawable: PGdkDrawable, gc: PGdkGC, image: PGdkImage, + xsrc: gint, ysrc: gint, xdest: gint, ydest: gint, + width: gint, height: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_image".} +proc gdk_draw_points*(drawable: PGdkDrawable, gc: PGdkGC, points: PGdkPoint, + npoints: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_points".} +proc gdk_draw_segments*(drawable: PGdkDrawable, gc: PGdkGC, segs: PGdkSegment, + nsegs: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_segments".} +proc gdk_draw_lines*(drawable: PGdkDrawable, gc: PGdkGC, points: PGdkPoint, + npoints: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_lines".} +proc gdk_draw_glyphs*(drawable: PGdkDrawable, gc: PGdkGC, font: PPangoFont, + x: gint, y: gint, glyphs: PPangoGlyphString){.cdecl, + dynlib: gdklib, importc: "gdk_draw_glyphs".} +proc gdk_draw_layout_line*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, y: gint, + line: PPangoLayoutLine){.cdecl, dynlib: gdklib, + importc: "gdk_draw_layout_line".} +proc gdk_draw_layout*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, y: gint, + layout: PPangoLayout){.cdecl, dynlib: gdklib, + importc: "gdk_draw_layout".} +proc gdk_draw_layout_line_with_colors*(drawable: PGdkDrawable, gc: PGdkGC, + x: gint, y: gint, line: PPangoLayoutLine, + foreground: PGdkColor, + background: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_draw_layout_line_with_colors".} +proc gdk_draw_layout_with_colors*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, + y: gint, layout: PPangoLayout, + foreground: PGdkColor, background: PGdkColor){. + cdecl, dynlib: gdklib, importc: "gdk_draw_layout_with_colors".} +proc gdk_drawable_get_image*(drawable: PGdkDrawable, x: gint, y: gint, + width: gint, height: gint): PGdkImage{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_image".} +proc gdk_drawable_get_clip_region*(drawable: PGdkDrawable): PGdkRegion{.cdecl, + dynlib: gdklib, importc: "gdk_drawable_get_clip_region".} +proc gdk_drawable_get_visible_region*(drawable: PGdkDrawable): PGdkRegion{. + cdecl, dynlib: gdklib, importc: "gdk_drawable_get_visible_region".} +const + GDK_NOTHING* = - (1) + GDK_DELETE* = 0 + GDK_DESTROY* = 1 + GDK_EXPOSE* = 2 + GDK_MOTION_NOTIFY* = 3 + GDK_BUTTON_PRESS* = 4 + GDK_2BUTTON_PRESS* = 5 + GDK_3BUTTON_PRESS* = 6 + GDK_BUTTON_RELEASE* = 7 + GDK_KEY_PRESS* = 8 + GDK_KEY_RELEASE* = 9 + GDK_ENTER_NOTIFY* = 10 + GDK_LEAVE_NOTIFY* = 11 + GDK_FOCUS_CHANGE* = 12 + GDK_CONFIGURE* = 13 + GDK_MAP* = 14 + GDK_UNMAP* = 15 + GDK_PROPERTY_NOTIFY* = 16 + GDK_SELECTION_CLEAR* = 17 + GDK_SELECTION_REQUEST* = 18 + GDK_SELECTION_NOTIFY* = 19 + GDK_PROXIMITY_IN* = 20 + GDK_PROXIMITY_OUT* = 21 + GDK_DRAG_ENTER* = 22 + GDK_DRAG_LEAVE* = 23 + GDK_DRAG_MOTION_EVENT* = 24 + GDK_DRAG_STATUS_EVENT* = 25 + GDK_DROP_START* = 26 + GDK_DROP_FINISHED* = 27 + GDK_CLIENT_EVENT* = 28 + GDK_VISIBILITY_NOTIFY* = 29 + GDK_NO_EXPOSE* = 30 + GDK_SCROLL* = 31 + GDK_WINDOW_STATE* = 32 + GDK_SETTING* = 33 + GDK_NOTIFY_ANCESTOR* = 0 + GDK_NOTIFY_VIRTUAL* = 1 + GDK_NOTIFY_INFERIOR* = 2 + GDK_NOTIFY_NONLINEAR* = 3 + GDK_NOTIFY_NONLINEAR_VIRTUAL* = 4 + GDK_NOTIFY_UNKNOWN* = 5 + +proc GDK_TYPE_EVENT*(): GType +const + G_PRIORITY_DEFAULT* = 0 + GDK_PRIORITY_EVENTS* = G_PRIORITY_DEFAULT + #GDK_PRIORITY_REDRAW* = G_PRIORITY_HIGH_IDLE + 20 + GDK_EXPOSURE_MASK* = 1 shl 1 + GDK_POINTER_MOTION_MASK* = 1 shl 2 + GDK_POINTER_MOTION_HINT_MASK* = 1 shl 3 + GDK_BUTTON_MOTION_MASK* = 1 shl 4 + GDK_BUTTON1_MOTION_MASK* = 1 shl 5 + GDK_BUTTON2_MOTION_MASK* = 1 shl 6 + GDK_BUTTON3_MOTION_MASK* = 1 shl 7 + GDK_BUTTON_PRESS_MASK* = 1 shl 8 + GDK_BUTTON_RELEASE_MASK* = 1 shl 9 + GDK_KEY_PRESS_MASK* = 1 shl 10 + GDK_KEY_RELEASE_MASK* = 1 shl 11 + GDK_ENTER_NOTIFY_MASK* = 1 shl 12 + GDK_LEAVE_NOTIFY_MASK* = 1 shl 13 + GDK_FOCUS_CHANGE_MASK* = 1 shl 14 + GDK_STRUCTURE_MASK* = 1 shl 15 + GDK_PROPERTY_CHANGE_MASK* = 1 shl 16 + GDK_VISIBILITY_NOTIFY_MASK* = 1 shl 17 + GDK_PROXIMITY_IN_MASK* = 1 shl 18 + GDK_PROXIMITY_OUT_MASK* = 1 shl 19 + GDK_SUBSTRUCTURE_MASK* = 1 shl 20 + GDK_SCROLL_MASK* = 1 shl 21 + GDK_ALL_EVENTS_MASK* = 0x003FFFFE + GDK_WINDOW_STATE_WITHDRAWN* = 1 shl 0 + GDK_WINDOW_STATE_ICONIFIED* = 1 shl 1 + GDK_WINDOW_STATE_MAXIMIZED* = 1 shl 2 + GDK_WINDOW_STATE_STICKY* = 1 shl 3 + +proc gdk_event_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_event_get_type".} +proc gdk_events_pending*(): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_events_pending".} +proc gdk_event_get*(): PGdkEvent{.cdecl, dynlib: gdklib, + importc: "gdk_event_get".} +proc gdk_event_peek*(): PGdkEvent{.cdecl, dynlib: gdklib, + importc: "gdk_event_peek".} +proc gdk_event_get_graphics_expose*(window: PGdkWindow): PGdkEvent{.cdecl, + dynlib: gdklib, importc: "gdk_event_get_graphics_expose".} +proc gdk_event_put*(event: PGdkEvent){.cdecl, dynlib: gdklib, + importc: "gdk_event_put".} +proc gdk_event_copy*(event: PGdkEvent): PGdkEvent{.cdecl, dynlib: gdklib, + importc: "gdk_event_copy".} +proc gdk_event_free*(event: PGdkEvent){.cdecl, dynlib: gdklib, + importc: "gdk_event_free".} +proc gdk_event_get_time*(event: PGdkEvent): guint32{.cdecl, dynlib: gdklib, + importc: "gdk_event_get_time".} +proc gdk_event_get_state*(event: PGdkEvent, state: PGdkModifierType): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_event_get_state".} +proc gdk_event_get_coords*(event: PGdkEvent, x_win: Pgdouble, y_win: Pgdouble): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_event_get_coords".} +proc gdk_event_get_root_coords*(event: PGdkEvent, x_root: Pgdouble, + y_root: Pgdouble): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_event_get_root_coords".} +proc gdk_event_get_axis*(event: PGdkEvent, axis_use: TGdkAxisUse, + value: Pgdouble): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_event_get_axis".} +proc gdk_event_handler_set*(func: TGdkEventFunc, data: gpointer, + notify: TGDestroyNotify){.cdecl, dynlib: gdklib, + importc: "gdk_event_handler_set".} +proc gdk_set_show_events*(show_events: gboolean){.cdecl, dynlib: gdklib, + importc: "gdk_set_show_events".} +proc gdk_get_show_events*(): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_get_show_events".} +proc GDK_TYPE_FONT*(): GType +proc gdk_font_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_font_get_type".} +proc gdk_font_load_for_display*(display: PGdkDisplay, font_name: cstring): PGdkFont{. + cdecl, dynlib: gdklib, importc: "gdk_font_load_for_display".} +proc gdk_fontset_load_for_display*(display: PGdkDisplay, fontset_name: cstring): PGdkFont{. + cdecl, dynlib: gdklib, importc: "gdk_fontset_load_for_display".} +proc gdk_font_from_description_for_display*(display: PGdkDisplay, + font_desc: PPangoFontDescription): PGdkFont{.cdecl, dynlib: gdklib, + importc: "gdk_font_from_description_for_display".} +proc gdk_font_ref*(font: PGdkFont): PGdkFont{.cdecl, dynlib: gdklib, + importc: "gdk_font_ref".} +proc gdk_font_unref*(font: PGdkFont){.cdecl, dynlib: gdklib, + importc: "gdk_font_unref".} +proc gdk_font_id*(font: PGdkFont): gint{.cdecl, dynlib: gdklib, + importc: "gdk_font_id".} +proc gdk_font_equal*(fonta: PGdkFont, fontb: PGdkFont): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_font_equal".} +proc gdk_string_width*(font: PGdkFont, `string`: cstring): gint{.cdecl, + dynlib: gdklib, importc: "gdk_string_width".} +proc gdk_text_width*(font: PGdkFont, text: cstring, text_length: gint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_text_width".} +proc gdk_text_width_wc*(font: PGdkFont, text: PGdkWChar, text_length: gint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_text_width_wc".} +proc gdk_char_width*(font: PGdkFont, character: gchar): gint{.cdecl, + dynlib: gdklib, importc: "gdk_char_width".} +proc gdk_char_width_wc*(font: PGdkFont, character: TGdkWChar): gint{.cdecl, + dynlib: gdklib, importc: "gdk_char_width_wc".} +proc gdk_string_measure*(font: PGdkFont, `string`: cstring): gint{.cdecl, + dynlib: gdklib, importc: "gdk_string_measure".} +proc gdk_text_measure*(font: PGdkFont, text: cstring, text_length: gint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_text_measure".} +proc gdk_char_measure*(font: PGdkFont, character: gchar): gint{.cdecl, + dynlib: gdklib, importc: "gdk_char_measure".} +proc gdk_string_height*(font: PGdkFont, `string`: cstring): gint{.cdecl, + dynlib: gdklib, importc: "gdk_string_height".} +proc gdk_text_height*(font: PGdkFont, text: cstring, text_length: gint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_text_height".} +proc gdk_char_height*(font: PGdkFont, character: gchar): gint{.cdecl, + dynlib: gdklib, importc: "gdk_char_height".} +proc gdk_text_extents*(font: PGdkFont, text: cstring, text_length: gint, + lbearing: Pgint, rbearing: Pgint, width: Pgint, + ascent: Pgint, descent: Pgint){.cdecl, dynlib: gdklib, + importc: "gdk_text_extents".} +proc gdk_text_extents_wc*(font: PGdkFont, text: PGdkWChar, text_length: gint, + lbearing: Pgint, rbearing: Pgint, width: Pgint, + ascent: Pgint, descent: Pgint){.cdecl, dynlib: gdklib, + importc: "gdk_text_extents_wc".} +proc gdk_string_extents*(font: PGdkFont, `string`: cstring, lbearing: Pgint, + rbearing: Pgint, width: Pgint, ascent: Pgint, + descent: Pgint){.cdecl, dynlib: gdklib, + importc: "gdk_string_extents".} +proc gdk_font_get_display*(font: PGdkFont): PGdkDisplay{.cdecl, dynlib: gdklib, + importc: "gdk_font_get_display".} +const + GDK_GC_FOREGROUND* = 1 shl 0 + GDK_GC_BACKGROUND* = 1 shl 1 + GDK_GC_FONT* = 1 shl 2 + GDK_GC_FUNCTION* = 1 shl 3 + GDK_GC_FILL* = 1 shl 4 + GDK_GC_TILE* = 1 shl 5 + GDK_GC_STIPPLE* = 1 shl 6 + GDK_GC_CLIP_MASK* = 1 shl 7 + GDK_GC_SUBWINDOW* = 1 shl 8 + GDK_GC_TS_X_ORIGIN* = 1 shl 9 + GDK_GC_TS_Y_ORIGIN* = 1 shl 10 + GDK_GC_CLIP_X_ORIGIN* = 1 shl 11 + GDK_GC_CLIP_Y_ORIGIN* = 1 shl 12 + GDK_GC_EXPOSURES* = 1 shl 13 + GDK_GC_LINE_WIDTH* = 1 shl 14 + GDK_GC_LINE_STYLE* = 1 shl 15 + GDK_GC_CAP_STYLE* = 1 shl 16 + GDK_GC_JOIN_STYLE* = 1 shl 17 + GDK_CLIP_BY_CHILDREN* = 0 + GDK_INCLUDE_INFERIORS* = 1 + +proc GDK_TYPE_GC*(): GType +proc GDK_GC*(anObject: Pointer): PGdkGC +proc GDK_GC_CLASS*(klass: Pointer): PGdkGCClass +proc GDK_IS_GC*(anObject: Pointer): bool +proc GDK_IS_GC_CLASS*(klass: Pointer): bool +proc GDK_GC_GET_CLASS*(obj: Pointer): PGdkGCClass +proc gdk_gc_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_gc_get_type".} +proc gdk_gc_new*(drawable: PGdkDrawable): PGdkGC{.cdecl, dynlib: gdklib, + importc: "gdk_gc_new".} +proc gdk_gc_new_with_values*(drawable: PGdkDrawable, values: PGdkGCValues, + values_mask: TGdkGCValuesMask): PGdkGC{.cdecl, + dynlib: gdklib, importc: "gdk_gc_new_with_values".} +proc gdk_gc_get_values*(gc: PGdkGC, values: PGdkGCValues){.cdecl, + dynlib: gdklib, importc: "gdk_gc_get_values".} +proc gdk_gc_set_values*(gc: PGdkGC, values: PGdkGCValues, + values_mask: TGdkGCValuesMask){.cdecl, dynlib: gdklib, + importc: "gdk_gc_set_values".} +proc gdk_gc_set_foreground*(gc: PGdkGC, color: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_foreground".} +proc gdk_gc_set_background*(gc: PGdkGC, color: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_background".} +proc gdk_gc_set_function*(gc: PGdkGC, `function`: TGdkFunction){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_function".} +proc gdk_gc_set_fill*(gc: PGdkGC, fill: TGdkFill){.cdecl, dynlib: gdklib, + importc: "gdk_gc_set_fill".} +proc gdk_gc_set_tile*(gc: PGdkGC, tile: PGdkPixmap){.cdecl, dynlib: gdklib, + importc: "gdk_gc_set_tile".} +proc gdk_gc_set_stipple*(gc: PGdkGC, stipple: PGdkPixmap){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_stipple".} +proc gdk_gc_set_ts_origin*(gc: PGdkGC, x: gint, y: gint){.cdecl, dynlib: gdklib, + importc: "gdk_gc_set_ts_origin".} +proc gdk_gc_set_clip_origin*(gc: PGdkGC, x: gint, y: gint){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_clip_origin".} +proc gdk_gc_set_clip_mask*(gc: PGdkGC, mask: PGdkBitmap){.cdecl, dynlib: gdklib, + importc: "gdk_gc_set_clip_mask".} +proc gdk_gc_set_clip_rectangle*(gc: PGdkGC, rectangle: PGdkRectangle){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_clip_rectangle".} +proc gdk_gc_set_clip_region*(gc: PGdkGC, region: PGdkRegion){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_clip_region".} +proc gdk_gc_set_subwindow*(gc: PGdkGC, mode: TGdkSubwindowMode){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_subwindow".} +proc gdk_gc_set_exposures*(gc: PGdkGC, exposures: gboolean){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_exposures".} +proc gdk_gc_set_line_attributes*(gc: PGdkGC, line_width: gint, + line_style: TGdkLineStyle, + cap_style: TGdkCapStyle, + join_style: TGdkJoinStyle){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_line_attributes".} +proc gdk_gc_set_dashes*(gc: PGdkGC, dash_offset: gint, + dash_list: openarray[gint8]){.cdecl, dynlib: gdklib, + importc: "gdk_gc_set_dashes".} +proc gdk_gc_offset*(gc: PGdkGC, x_offset: gint, y_offset: gint){.cdecl, + dynlib: gdklib, importc: "gdk_gc_offset".} +proc gdk_gc_copy*(dst_gc: PGdkGC, src_gc: PGdkGC){.cdecl, dynlib: gdklib, + importc: "gdk_gc_copy".} +proc gdk_gc_set_colormap*(gc: PGdkGC, colormap: PGdkColormap){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_colormap".} +proc gdk_gc_get_colormap*(gc: PGdkGC): PGdkColormap{.cdecl, dynlib: gdklib, + importc: "gdk_gc_get_colormap".} +proc gdk_gc_set_rgb_fg_color*(gc: PGdkGC, color: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_rgb_fg_color".} +proc gdk_gc_set_rgb_bg_color*(gc: PGdkGC, color: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_gc_set_rgb_bg_color".} +proc gdk_gc_get_screen*(gc: PGdkGC): PGdkScreen{.cdecl, dynlib: gdklib, + importc: "gdk_gc_get_screen".} +proc GDK_TYPE_IMAGE*(): GType +proc GDK_IMAGE*(anObject: Pointer): PGdkImage +proc GDK_IMAGE_CLASS*(klass: Pointer): PGdkImageClass +proc GDK_IS_IMAGE*(anObject: Pointer): bool +proc GDK_IS_IMAGE_CLASS*(klass: Pointer): bool +proc GDK_IMAGE_GET_CLASS*(obj: Pointer): PGdkImageClass +proc gdk_image_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_image_get_type".} +proc gdk_image_new*(`type`: TGdkImageType, visual: PGdkVisual, width: gint, + height: gint): PGdkImage{.cdecl, dynlib: gdklib, + importc: "gdk_image_new".} +proc gdk_image_put_pixel*(image: PGdkImage, x: gint, y: gint, pixel: guint32){. + cdecl, dynlib: gdklib, importc: "gdk_image_put_pixel".} +proc gdk_image_get_pixel*(image: PGdkImage, x: gint, y: gint): guint32{.cdecl, + dynlib: gdklib, importc: "gdk_image_get_pixel".} +proc gdk_image_set_colormap*(image: PGdkImage, colormap: PGdkColormap){.cdecl, + dynlib: gdklib, importc: "gdk_image_set_colormap".} +proc gdk_image_get_colormap*(image: PGdkImage): PGdkColormap{.cdecl, + dynlib: gdklib, importc: "gdk_image_get_colormap".} +const + GDK_AXIS_IGNORE* = 0 + GDK_AXIS_X* = 1 + GDK_AXIS_Y* = 2 + GDK_AXIS_PRESSURE* = 3 + GDK_AXIS_XTILT* = 4 + GDK_AXIS_YTILT* = 5 + GDK_AXIS_WHEEL* = 6 + GDK_AXIS_LAST* = 7 + +proc GDK_TYPE_DEVICE*(): GType +proc GDK_DEVICE*(anObject: Pointer): PGdkDevice +proc GDK_DEVICE_CLASS*(klass: Pointer): PGdkDeviceClass +proc GDK_IS_DEVICE*(anObject: Pointer): bool +proc GDK_IS_DEVICE_CLASS*(klass: Pointer): bool +proc GDK_DEVICE_GET_CLASS*(obj: Pointer): PGdkDeviceClass +proc gdk_device_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_device_get_type".} +proc gdk_device_set_source*(device: PGdkDevice, source: TGdkInputSource){.cdecl, + dynlib: gdklib, importc: "gdk_device_set_source".} +proc gdk_device_set_mode*(device: PGdkDevice, mode: TGdkInputMode): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_device_set_mode".} +proc gdk_device_set_key*(device: PGdkDevice, index: guint, keyval: guint, + modifiers: TGdkModifierType){.cdecl, dynlib: gdklib, + importc: "gdk_device_set_key".} +proc gdk_device_set_axis_use*(device: PGdkDevice, index: guint, use: TGdkAxisUse){. + cdecl, dynlib: gdklib, importc: "gdk_device_set_axis_use".} +proc gdk_device_get_state*(device: PGdkDevice, window: PGdkWindow, + axes: Pgdouble, mask: PGdkModifierType){.cdecl, + dynlib: gdklib, importc: "gdk_device_get_state".} +proc gdk_device_get_history*(device: PGdkDevice, window: PGdkWindow, + start: guint32, stop: guint32, + s: var PPGdkTimeCoord, n_events: Pgint): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_device_get_history".} +proc gdk_device_free_history*(events: PPGdkTimeCoord, n_events: gint){.cdecl, + dynlib: gdklib, importc: "gdk_device_free_history".} +proc gdk_device_get_axis*(device: PGdkDevice, axes: Pgdouble, use: TGdkAxisUse, + value: Pgdouble): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_device_get_axis".} +proc gdk_input_set_extension_events*(window: PGdkWindow, mask: gint, + mode: TGdkExtensionMode){.cdecl, + dynlib: gdklib, importc: "gdk_input_set_extension_events".} +proc gdk_device_get_core_pointer*(): PGdkDevice{.cdecl, dynlib: gdklib, + importc: "gdk_device_get_core_pointer".} +proc GDK_TYPE_KEYMAP*(): GType +proc GDK_KEYMAP*(anObject: Pointer): PGdkKeymap +proc GDK_KEYMAP_CLASS*(klass: Pointer): PGdkKeymapClass +proc GDK_IS_KEYMAP*(anObject: Pointer): bool +proc GDK_IS_KEYMAP_CLASS*(klass: Pointer): bool +proc GDK_KEYMAP_GET_CLASS*(obj: Pointer): PGdkKeymapClass +proc gdk_keymap_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_keymap_get_type".} +proc gdk_keymap_get_for_display*(display: PGdkDisplay): PGdkKeymap{.cdecl, + dynlib: gdklib, importc: "gdk_keymap_get_for_display".} +proc gdk_keymap_lookup_key*(keymap: PGdkKeymap, key: PGdkKeymapKey): guint{. + cdecl, dynlib: gdklib, importc: "gdk_keymap_lookup_key".} +proc gdk_keymap_translate_keyboard_state*(keymap: PGdkKeymap, + hardware_keycode: guint, state: TGdkModifierType, group: gint, + keyval: Pguint, effective_group: Pgint, level: Pgint, + consumed_modifiers: PGdkModifierType): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_keymap_translate_keyboard_state".} +proc gdk_keymap_get_entries_for_keyval*(keymap: PGdkKeymap, keyval: guint, + s: var PGdkKeymapKey, n_keys: Pgint): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_keymap_get_entries_for_keyval".} +proc gdk_keymap_get_entries_for_keycode*(keymap: PGdkKeymap, + hardware_keycode: guint, s: var PGdkKeymapKey, sasdf: var Pguint, + n_entries: Pgint): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_keymap_get_entries_for_keycode".} +proc gdk_keymap_get_direction*(keymap: PGdkKeymap): TPangoDirection{.cdecl, + dynlib: gdklib, importc: "gdk_keymap_get_direction".} +proc gdk_keyval_name*(keyval: guint): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_name".} +proc gdk_keyval_from_name*(keyval_name: cstring): guint{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_from_name".} +proc gdk_keyval_convert_case*(symbol: guint, lower: Pguint, upper: Pguint){. + cdecl, dynlib: gdklib, importc: "gdk_keyval_convert_case".} +proc gdk_keyval_to_upper*(keyval: guint): guint{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_to_upper".} +proc gdk_keyval_to_lower*(keyval: guint): guint{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_to_lower".} +proc gdk_keyval_is_upper*(keyval: guint): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_is_upper".} +proc gdk_keyval_is_lower*(keyval: guint): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_is_lower".} +proc gdk_keyval_to_unicode*(keyval: guint): guint32{.cdecl, dynlib: gdklib, + importc: "gdk_keyval_to_unicode".} +proc gdk_unicode_to_keyval*(wc: guint32): guint{.cdecl, dynlib: gdklib, + importc: "gdk_unicode_to_keyval".} +const + GDK_KEY_VoidSymbol* = 0x00FFFFFF + GDK_KEY_BackSpace* = 0x0000FF08 + GDK_KEY_Tab* = 0x0000FF09 + GDK_KEY_Linefeed* = 0x0000FF0A + GDK_KEY_Clear* = 0x0000FF0B + GDK_KEY_Return* = 0x0000FF0D + GDK_KEY_Pause* = 0x0000FF13 + GDK_KEY_Scroll_Lock* = 0x0000FF14 + GDK_KEY_Sys_Req* = 0x0000FF15 + GDK_KEY_Escape* = 0x0000FF1B + GDK_KEY_Delete* = 0x0000FFFF + GDK_KEY_Multi_key* = 0x0000FF20 + GDK_KEY_Codeinput* = 0x0000FF37 + GDK_KEY_SingleCandidate* = 0x0000FF3C + GDK_KEY_MultipleCandidate* = 0x0000FF3D + GDK_KEY_PreviousCandidate* = 0x0000FF3E + GDK_KEY_Kanji* = 0x0000FF21 + GDK_KEY_Muhenkan* = 0x0000FF22 + GDK_KEY_Henkan_Mode* = 0x0000FF23 + GDK_KEY_Henkan* = 0x0000FF23 + GDK_KEY_Romaji* = 0x0000FF24 + GDK_KEY_Hiragana* = 0x0000FF25 + GDK_KEY_Katakana* = 0x0000FF26 + GDK_KEY_Hiragana_Katakana* = 0x0000FF27 + GDK_KEY_Zenkaku* = 0x0000FF28 + GDK_KEY_Hankaku* = 0x0000FF29 + GDK_KEY_Zenkaku_Hankaku* = 0x0000FF2A + GDK_KEY_Touroku* = 0x0000FF2B + GDK_KEY_Massyo* = 0x0000FF2C + GDK_KEY_Kana_Lock* = 0x0000FF2D + GDK_KEY_Kana_Shift* = 0x0000FF2E + GDK_KEY_Eisu_Shift* = 0x0000FF2F + GDK_KEY_Eisu_toggle* = 0x0000FF30 + GDK_KEY_Kanji_Bangou* = 0x0000FF37 + GDK_KEY_Zen_Koho* = 0x0000FF3D + GDK_KEY_Mae_Koho* = 0x0000FF3E + GDK_KEY_Home* = 0x0000FF50 + GDK_KEY_Left* = 0x0000FF51 + GDK_KEY_Up* = 0x0000FF52 + GDK_KEY_Right* = 0x0000FF53 + GDK_KEY_Down* = 0x0000FF54 + GDK_KEY_Prior* = 0x0000FF55 + GDK_KEY_Page_Up* = 0x0000FF55 + GDK_KEY_Next* = 0x0000FF56 + GDK_KEY_Page_Down* = 0x0000FF56 + GDK_KEY_End* = 0x0000FF57 + GDK_KEY_Begin* = 0x0000FF58 + GDK_KEY_Select* = 0x0000FF60 + GDK_KEY_Print* = 0x0000FF61 + GDK_KEY_Execute* = 0x0000FF62 + GDK_KEY_Insert* = 0x0000FF63 + GDK_KEY_Undo* = 0x0000FF65 + GDK_KEY_Redo* = 0x0000FF66 + GDK_KEY_Menu* = 0x0000FF67 + GDK_KEY_Find* = 0x0000FF68 + GDK_KEY_Cancel* = 0x0000FF69 + GDK_KEY_Help* = 0x0000FF6A + GDK_KEY_Break* = 0x0000FF6B + GDK_KEY_Mode_switch* = 0x0000FF7E + GDK_KEY_script_switch* = 0x0000FF7E + GDK_KEY_Num_Lock* = 0x0000FF7F + GDK_KEY_KP_Space* = 0x0000FF80 + GDK_KEY_KP_Tab* = 0x0000FF89 + GDK_KEY_KP_Enter* = 0x0000FF8D + GDK_KEY_KP_F1* = 0x0000FF91 + GDK_KEY_KP_F2* = 0x0000FF92 + GDK_KEY_KP_F3* = 0x0000FF93 + GDK_KEY_KP_F4* = 0x0000FF94 + GDK_KEY_KP_Home* = 0x0000FF95 + GDK_KEY_KP_Left* = 0x0000FF96 + GDK_KEY_KP_Up* = 0x0000FF97 + GDK_KEY_KP_Right* = 0x0000FF98 + GDK_KEY_KP_Down* = 0x0000FF99 + GDK_KEY_KP_Prior* = 0x0000FF9A + GDK_KEY_KP_Page_Up* = 0x0000FF9A + GDK_KEY_KP_Next* = 0x0000FF9B + GDK_KEY_KP_Page_Down* = 0x0000FF9B + GDK_KEY_KP_End* = 0x0000FF9C + GDK_KEY_KP_Begin* = 0x0000FF9D + GDK_KEY_KP_Insert* = 0x0000FF9E + GDK_KEY_KP_Delete* = 0x0000FF9F + GDK_KEY_KP_Equal* = 0x0000FFBD + GDK_KEY_KP_Multiply* = 0x0000FFAA + GDK_KEY_KP_Add* = 0x0000FFAB + GDK_KEY_KP_Separator* = 0x0000FFAC + GDK_KEY_KP_Subtract* = 0x0000FFAD + GDK_KEY_KP_Decimal* = 0x0000FFAE + GDK_KEY_KP_Divide* = 0x0000FFAF + GDK_KEY_KP_0* = 0x0000FFB0 + GDK_KEY_KP_1* = 0x0000FFB1 + GDK_KEY_KP_2* = 0x0000FFB2 + GDK_KEY_KP_3* = 0x0000FFB3 + GDK_KEY_KP_4* = 0x0000FFB4 + GDK_KEY_KP_5* = 0x0000FFB5 + GDK_KEY_KP_6* = 0x0000FFB6 + GDK_KEY_KP_7* = 0x0000FFB7 + GDK_KEY_KP_8* = 0x0000FFB8 + GDK_KEY_KP_9* = 0x0000FFB9 + GDK_KEY_F1* = 0x0000FFBE + GDK_KEY_F2* = 0x0000FFBF + GDK_KEY_F3* = 0x0000FFC0 + GDK_KEY_F4* = 0x0000FFC1 + GDK_KEY_F5* = 0x0000FFC2 + GDK_KEY_F6* = 0x0000FFC3 + GDK_KEY_F7* = 0x0000FFC4 + GDK_KEY_F8* = 0x0000FFC5 + GDK_KEY_F9* = 0x0000FFC6 + GDK_KEY_F10* = 0x0000FFC7 + GDK_KEY_F11* = 0x0000FFC8 + GDK_KEY_L1* = 0x0000FFC8 + GDK_KEY_F12* = 0x0000FFC9 + GDK_KEY_L2* = 0x0000FFC9 + GDK_KEY_F13* = 0x0000FFCA + GDK_KEY_L3* = 0x0000FFCA + GDK_KEY_F14* = 0x0000FFCB + GDK_KEY_L4* = 0x0000FFCB + GDK_KEY_F15* = 0x0000FFCC + GDK_KEY_L5* = 0x0000FFCC + GDK_KEY_F16* = 0x0000FFCD + GDK_KEY_L6* = 0x0000FFCD + GDK_KEY_F17* = 0x0000FFCE + GDK_KEY_L7* = 0x0000FFCE + GDK_KEY_F18* = 0x0000FFCF + GDK_KEY_L8* = 0x0000FFCF + GDK_KEY_F19* = 0x0000FFD0 + GDK_KEY_L9* = 0x0000FFD0 + GDK_KEY_F20* = 0x0000FFD1 + GDK_KEY_L10* = 0x0000FFD1 + GDK_KEY_F21* = 0x0000FFD2 + GDK_KEY_R1* = 0x0000FFD2 + GDK_KEY_F22* = 0x0000FFD3 + GDK_KEY_R2* = 0x0000FFD3 + GDK_KEY_F23* = 0x0000FFD4 + GDK_KEY_R3* = 0x0000FFD4 + GDK_KEY_F24* = 0x0000FFD5 + GDK_KEY_R4* = 0x0000FFD5 + GDK_KEY_F25* = 0x0000FFD6 + GDK_KEY_R5* = 0x0000FFD6 + GDK_KEY_F26* = 0x0000FFD7 + GDK_KEY_R6* = 0x0000FFD7 + GDK_KEY_F27* = 0x0000FFD8 + GDK_KEY_R7* = 0x0000FFD8 + GDK_KEY_F28* = 0x0000FFD9 + GDK_KEY_R8* = 0x0000FFD9 + GDK_KEY_F29* = 0x0000FFDA + GDK_KEY_R9* = 0x0000FFDA + GDK_KEY_F30* = 0x0000FFDB + GDK_KEY_R10* = 0x0000FFDB + GDK_KEY_F31* = 0x0000FFDC + GDK_KEY_R11* = 0x0000FFDC + GDK_KEY_F32* = 0x0000FFDD + GDK_KEY_R12* = 0x0000FFDD + GDK_KEY_F33* = 0x0000FFDE + GDK_KEY_R13* = 0x0000FFDE + GDK_KEY_F34* = 0x0000FFDF + GDK_KEY_R14* = 0x0000FFDF + GDK_KEY_F35* = 0x0000FFE0 + GDK_KEY_R15* = 0x0000FFE0 + GDK_KEY_Shift_L* = 0x0000FFE1 + GDK_KEY_Shift_R* = 0x0000FFE2 + GDK_KEY_Control_L* = 0x0000FFE3 + GDK_KEY_Control_R* = 0x0000FFE4 + GDK_KEY_Caps_Lock* = 0x0000FFE5 + GDK_KEY_Shift_Lock* = 0x0000FFE6 + GDK_KEY_Meta_L* = 0x0000FFE7 + GDK_KEY_Meta_R* = 0x0000FFE8 + GDK_KEY_Alt_L* = 0x0000FFE9 + GDK_KEY_Alt_R* = 0x0000FFEA + GDK_KEY_Super_L* = 0x0000FFEB + GDK_KEY_Super_R* = 0x0000FFEC + GDK_KEY_Hyper_L* = 0x0000FFED + GDK_KEY_Hyper_R* = 0x0000FFEE + GDK_KEY_ISO_Lock* = 0x0000FE01 + GDK_KEY_ISO_Level2_Latch* = 0x0000FE02 + GDK_KEY_ISO_Level3_Shift* = 0x0000FE03 + GDK_KEY_ISO_Level3_Latch* = 0x0000FE04 + GDK_KEY_ISO_Level3_Lock* = 0x0000FE05 + GDK_KEY_ISO_Group_Shift* = 0x0000FF7E + GDK_KEY_ISO_Group_Latch* = 0x0000FE06 + GDK_KEY_ISO_Group_Lock* = 0x0000FE07 + GDK_KEY_ISO_Next_Group* = 0x0000FE08 + GDK_KEY_ISO_Next_Group_Lock* = 0x0000FE09 + GDK_KEY_ISO_Prev_Group* = 0x0000FE0A + GDK_KEY_ISO_Prev_Group_Lock* = 0x0000FE0B + GDK_KEY_ISO_First_Group* = 0x0000FE0C + GDK_KEY_ISO_First_Group_Lock* = 0x0000FE0D + GDK_KEY_ISO_Last_Group* = 0x0000FE0E + GDK_KEY_ISO_Last_Group_Lock* = 0x0000FE0F + GDK_KEY_ISO_Left_Tab* = 0x0000FE20 + GDK_KEY_ISO_Move_Line_Up* = 0x0000FE21 + GDK_KEY_ISO_Move_Line_Down* = 0x0000FE22 + GDK_KEY_ISO_Partial_Line_Up* = 0x0000FE23 + GDK_KEY_ISO_Partial_Line_Down* = 0x0000FE24 + GDK_KEY_ISO_Partial_Space_Left* = 0x0000FE25 + GDK_KEY_ISO_Partial_Space_Right* = 0x0000FE26 + GDK_KEY_ISO_Set_Margin_Left* = 0x0000FE27 + GDK_KEY_ISO_Set_Margin_Right* = 0x0000FE28 + GDK_KEY_ISO_Release_Margin_Left* = 0x0000FE29 + GDK_KEY_ISO_Release_Margin_Right* = 0x0000FE2A + GDK_KEY_ISO_Release_Both_Margins* = 0x0000FE2B + GDK_KEY_ISO_Fast_Cursor_Left* = 0x0000FE2C + GDK_KEY_ISO_Fast_Cursor_Right* = 0x0000FE2D + GDK_KEY_ISO_Fast_Cursor_Up* = 0x0000FE2E + GDK_KEY_ISO_Fast_Cursor_Down* = 0x0000FE2F + GDK_KEY_ISO_Continuous_Underline* = 0x0000FE30 + GDK_KEY_ISO_Discontinuous_Underline* = 0x0000FE31 + GDK_KEY_ISO_Emphasize* = 0x0000FE32 + GDK_KEY_ISO_Center_Object* = 0x0000FE33 + GDK_KEY_ISO_Enter* = 0x0000FE34 + GDK_KEY_dead_grave* = 0x0000FE50 + GDK_KEY_dead_acute* = 0x0000FE51 + GDK_KEY_dead_circumflex* = 0x0000FE52 + GDK_KEY_dead_tilde* = 0x0000FE53 + GDK_KEY_dead_macron* = 0x0000FE54 + GDK_KEY_dead_breve* = 0x0000FE55 + GDK_KEY_dead_abovedot* = 0x0000FE56 + GDK_KEY_dead_diaeresis* = 0x0000FE57 + GDK_KEY_dead_abovering* = 0x0000FE58 + GDK_KEY_dead_doubleacute* = 0x0000FE59 + GDK_KEY_dead_caron* = 0x0000FE5A + GDK_KEY_dead_cedilla* = 0x0000FE5B + GDK_KEY_dead_ogonek* = 0x0000FE5C + GDK_KEY_dead_iota* = 0x0000FE5D + GDK_KEY_dead_voiced_sound* = 0x0000FE5E + GDK_KEY_dead_semivoiced_sound* = 0x0000FE5F + GDK_KEY_dead_belowdot* = 0x0000FE60 + GDK_KEY_First_Virtual_Screen* = 0x0000FED0 + GDK_KEY_Prev_Virtual_Screen* = 0x0000FED1 + GDK_KEY_Next_Virtual_Screen* = 0x0000FED2 + GDK_KEY_Last_Virtual_Screen* = 0x0000FED4 + GDK_KEY_Terminate_Server* = 0x0000FED5 + GDK_KEY_AccessX_Enable* = 0x0000FE70 + GDK_KEY_AccessX_Feedback_Enable* = 0x0000FE71 + GDK_KEY_RepeatKeys_Enable* = 0x0000FE72 + GDK_KEY_SlowKeys_Enable* = 0x0000FE73 + GDK_KEY_BounceKeys_Enable* = 0x0000FE74 + GDK_KEY_StickyKeys_Enable* = 0x0000FE75 + GDK_KEY_MouseKeys_Enable* = 0x0000FE76 + GDK_KEY_MouseKeys_Accel_Enable* = 0x0000FE77 + GDK_KEY_Overlay1_Enable* = 0x0000FE78 + GDK_KEY_Overlay2_Enable* = 0x0000FE79 + GDK_KEY_AudibleBell_Enable* = 0x0000FE7A + GDK_KEY_Pointer_Left* = 0x0000FEE0 + GDK_KEY_Pointer_Right* = 0x0000FEE1 + GDK_KEY_Pointer_Up* = 0x0000FEE2 + GDK_KEY_Pointer_Down* = 0x0000FEE3 + GDK_KEY_Pointer_UpLeft* = 0x0000FEE4 + GDK_KEY_Pointer_UpRight* = 0x0000FEE5 + GDK_KEY_Pointer_DownLeft* = 0x0000FEE6 + GDK_KEY_Pointer_DownRight* = 0x0000FEE7 + GDK_KEY_Pointer_Button_Dflt* = 0x0000FEE8 + GDK_KEY_Pointer_Button1* = 0x0000FEE9 + GDK_KEY_Pointer_Button2* = 0x0000FEEA + GDK_KEY_Pointer_Button3* = 0x0000FEEB + GDK_KEY_Pointer_Button4* = 0x0000FEEC + GDK_KEY_Pointer_Button5* = 0x0000FEED + GDK_KEY_Pointer_DblClick_Dflt* = 0x0000FEEE + GDK_KEY_Pointer_DblClick1* = 0x0000FEEF + GDK_KEY_Pointer_DblClick2* = 0x0000FEF0 + GDK_KEY_Pointer_DblClick3* = 0x0000FEF1 + GDK_KEY_Pointer_DblClick4* = 0x0000FEF2 + GDK_KEY_Pointer_DblClick5* = 0x0000FEF3 + GDK_KEY_Pointer_Drag_Dflt* = 0x0000FEF4 + GDK_KEY_Pointer_Drag1* = 0x0000FEF5 + GDK_KEY_Pointer_Drag2* = 0x0000FEF6 + GDK_KEY_Pointer_Drag3* = 0x0000FEF7 + GDK_KEY_Pointer_Drag4* = 0x0000FEF8 + GDK_KEY_Pointer_Drag5* = 0x0000FEFD + GDK_KEY_Pointer_EnableKeys* = 0x0000FEF9 + GDK_KEY_Pointer_Accelerate* = 0x0000FEFA + GDK_KEY_Pointer_DfltBtnNext* = 0x0000FEFB + GDK_KEY_Pointer_DfltBtnPrev* = 0x0000FEFC + GDK_KEY_3270_Duplicate* = 0x0000FD01 + GDK_KEY_3270_FieldMark* = 0x0000FD02 + GDK_KEY_3270_Right2* = 0x0000FD03 + GDK_KEY_3270_Left2* = 0x0000FD04 + GDK_KEY_3270_BackTab* = 0x0000FD05 + GDK_KEY_3270_EraseEOF* = 0x0000FD06 + GDK_KEY_3270_EraseInput* = 0x0000FD07 + GDK_KEY_3270_Reset* = 0x0000FD08 + GDK_KEY_3270_Quit* = 0x0000FD09 + GDK_KEY_3270_PA1* = 0x0000FD0A + GDK_KEY_3270_PA2* = 0x0000FD0B + GDK_KEY_3270_PA3* = 0x0000FD0C + GDK_KEY_3270_Test* = 0x0000FD0D + GDK_KEY_3270_Attn* = 0x0000FD0E + GDK_KEY_3270_CursorBlink* = 0x0000FD0F + GDK_KEY_3270_AltCursor* = 0x0000FD10 + GDK_KEY_3270_KeyClick* = 0x0000FD11 + GDK_KEY_3270_Jump* = 0x0000FD12 + GDK_KEY_3270_Ident* = 0x0000FD13 + GDK_KEY_3270_Rule* = 0x0000FD14 + GDK_KEY_3270_Copy* = 0x0000FD15 + GDK_KEY_3270_Play* = 0x0000FD16 + GDK_KEY_3270_Setup* = 0x0000FD17 + GDK_KEY_3270_Record* = 0x0000FD18 + GDK_KEY_3270_ChangeScreen* = 0x0000FD19 + GDK_KEY_3270_DeleteWord* = 0x0000FD1A + GDK_KEY_3270_ExSelect* = 0x0000FD1B + GDK_KEY_3270_CursorSelect* = 0x0000FD1C + GDK_KEY_3270_PrintScreen* = 0x0000FD1D + GDK_KEY_3270_Enter* = 0x0000FD1E + GDK_KEY_space* = 0x00000020 + GDK_KEY_exclam* = 0x00000021 + GDK_KEY_quotedbl* = 0x00000022 + GDK_KEY_numbersign* = 0x00000023 + GDK_KEY_dollar* = 0x00000024 + GDK_KEY_percent* = 0x00000025 + GDK_KEY_ampersand* = 0x00000026 + GDK_KEY_apostrophe* = 0x00000027 + GDK_KEY_quoteright* = 0x00000027 + GDK_KEY_parenleft* = 0x00000028 + GDK_KEY_parenright* = 0x00000029 + GDK_KEY_asterisk* = 0x0000002A + GDK_KEY_plus* = 0x0000002B + GDK_KEY_comma* = 0x0000002C + GDK_KEY_minus* = 0x0000002D + GDK_KEY_period* = 0x0000002E + GDK_KEY_slash* = 0x0000002F + GDK_KEY_0* = 0x00000030 + GDK_KEY_1* = 0x00000031 + GDK_KEY_2* = 0x00000032 + GDK_KEY_3* = 0x00000033 + GDK_KEY_4* = 0x00000034 + GDK_KEY_5* = 0x00000035 + GDK_KEY_6* = 0x00000036 + GDK_KEY_7* = 0x00000037 + GDK_KEY_8* = 0x00000038 + GDK_KEY_9* = 0x00000039 + GDK_KEY_colon* = 0x0000003A + GDK_KEY_semicolon* = 0x0000003B + GDK_KEY_less* = 0x0000003C + GDK_KEY_equal* = 0x0000003D + GDK_KEY_greater* = 0x0000003E + GDK_KEY_question* = 0x0000003F + GDK_KEY_at* = 0x00000040 + GDK_KEY_CAPITAL_A* = 0x00000041 + GDK_KEY_CAPITAL_B* = 0x00000042 + GDK_KEY_CAPITAL_C* = 0x00000043 + GDK_KEY_CAPITAL_D* = 0x00000044 + GDK_KEY_CAPITAL_E* = 0x00000045 + GDK_KEY_CAPITAL_F* = 0x00000046 + GDK_KEY_CAPITAL_G* = 0x00000047 + GDK_KEY_CAPITAL_H* = 0x00000048 + GDK_KEY_CAPITAL_I* = 0x00000049 + GDK_KEY_CAPITAL_J* = 0x0000004A + GDK_KEY_CAPITAL_K* = 0x0000004B + GDK_KEY_CAPITAL_L* = 0x0000004C + GDK_KEY_CAPITAL_M* = 0x0000004D + GDK_KEY_CAPITAL_N* = 0x0000004E + GDK_KEY_CAPITAL_O* = 0x0000004F + GDK_KEY_CAPITAL_P* = 0x00000050 + GDK_KEY_CAPITAL_Q* = 0x00000051 + GDK_KEY_CAPITAL_R* = 0x00000052 + GDK_KEY_CAPITAL_S* = 0x00000053 + GDK_KEY_CAPITAL_T* = 0x00000054 + GDK_KEY_CAPITAL_U* = 0x00000055 + GDK_KEY_CAPITAL_V* = 0x00000056 + GDK_KEY_CAPITAL_W* = 0x00000057 + GDK_KEY_CAPITAL_X* = 0x00000058 + GDK_KEY_CAPITAL_Y* = 0x00000059 + GDK_KEY_CAPITAL_Z* = 0x0000005A + GDK_KEY_bracketleft* = 0x0000005B + GDK_KEY_backslash* = 0x0000005C + GDK_KEY_bracketright* = 0x0000005D + GDK_KEY_asciicircum* = 0x0000005E + GDK_KEY_underscore* = 0x0000005F + GDK_KEY_grave* = 0x00000060 + GDK_KEY_quoteleft* = 0x00000060 + GDK_KEY_a* = 0x00000061 + GDK_KEY_b* = 0x00000062 + GDK_KEY_c* = 0x00000063 + GDK_KEY_d* = 0x00000064 + GDK_KEY_e* = 0x00000065 + GDK_KEY_f* = 0x00000066 + GDK_KEY_g* = 0x00000067 + GDK_KEY_h* = 0x00000068 + GDK_KEY_i* = 0x00000069 + GDK_KEY_j* = 0x0000006A + GDK_KEY_k* = 0x0000006B + GDK_KEY_l* = 0x0000006C + GDK_KEY_m* = 0x0000006D + GDK_KEY_n* = 0x0000006E + GDK_KEY_o* = 0x0000006F + GDK_KEY_p* = 0x00000070 + GDK_KEY_q* = 0x00000071 + GDK_KEY_r* = 0x00000072 + GDK_KEY_s* = 0x00000073 + GDK_KEY_t* = 0x00000074 + GDK_KEY_u* = 0x00000075 + GDK_KEY_v* = 0x00000076 + GDK_KEY_w* = 0x00000077 + GDK_KEY_x* = 0x00000078 + GDK_KEY_y* = 0x00000079 + GDK_KEY_z* = 0x0000007A + GDK_KEY_braceleft* = 0x0000007B + GDK_KEY_bar* = 0x0000007C + GDK_KEY_braceright* = 0x0000007D + GDK_KEY_asciitilde* = 0x0000007E + GDK_KEY_nobreakspace* = 0x000000A0 + GDK_KEY_exclamdown* = 0x000000A1 + GDK_KEY_cent* = 0x000000A2 + GDK_KEY_sterling* = 0x000000A3 + GDK_KEY_currency* = 0x000000A4 + GDK_KEY_yen* = 0x000000A5 + GDK_KEY_brokenbar* = 0x000000A6 + GDK_KEY_section* = 0x000000A7 + GDK_KEY_diaeresis* = 0x000000A8 + GDK_KEY_copyright* = 0x000000A9 + GDK_KEY_ordfeminine* = 0x000000AA + GDK_KEY_guillemotleft* = 0x000000AB + GDK_KEY_notsign* = 0x000000AC + GDK_KEY_hyphen* = 0x000000AD + GDK_KEY_registered* = 0x000000AE + GDK_KEY_macron* = 0x000000AF + GDK_KEY_degree* = 0x000000B0 + GDK_KEY_plusminus* = 0x000000B1 + GDK_KEY_twosuperior* = 0x000000B2 + GDK_KEY_threesuperior* = 0x000000B3 + GDK_KEY_acute* = 0x000000B4 + GDK_KEY_mu* = 0x000000B5 + GDK_KEY_paragraph* = 0x000000B6 + GDK_KEY_periodcentered* = 0x000000B7 + GDK_KEY_cedilla* = 0x000000B8 + GDK_KEY_onesuperior* = 0x000000B9 + GDK_KEY_masculine* = 0x000000BA + GDK_KEY_guillemotright* = 0x000000BB + GDK_KEY_onequarter* = 0x000000BC + GDK_KEY_onehalf* = 0x000000BD + GDK_KEY_threequarters* = 0x000000BE + GDK_KEY_questiondown* = 0x000000BF + GDK_KEY_CAPITAL_Agrave* = 0x000000C0 + GDK_KEY_CAPITAL_Aacute* = 0x000000C1 + GDK_KEY_CAPITAL_Acircumflex* = 0x000000C2 + GDK_KEY_CAPITAL_Atilde* = 0x000000C3 + GDK_KEY_CAPITAL_Adiaeresis* = 0x000000C4 + GDK_KEY_CAPITAL_Aring* = 0x000000C5 + GDK_KEY_CAPITAL_AE* = 0x000000C6 + GDK_KEY_CAPITAL_Ccedilla* = 0x000000C7 + GDK_KEY_CAPITAL_Egrave* = 0x000000C8 + GDK_KEY_CAPITAL_Eacute* = 0x000000C9 + GDK_KEY_CAPITAL_Ecircumflex* = 0x000000CA + GDK_KEY_CAPITAL_Ediaeresis* = 0x000000CB + GDK_KEY_CAPITAL_Igrave* = 0x000000CC + GDK_KEY_CAPITAL_Iacute* = 0x000000CD + GDK_KEY_CAPITAL_Icircumflex* = 0x000000CE + GDK_KEY_CAPITAL_Idiaeresis* = 0x000000CF + GDK_KEY_CAPITAL_ETH* = 0x000000D0 + GDK_KEY_CAPITAL_Ntilde* = 0x000000D1 + GDK_KEY_CAPITAL_Ograve* = 0x000000D2 + GDK_KEY_CAPITAL_Oacute* = 0x000000D3 + GDK_KEY_CAPITAL_Ocircumflex* = 0x000000D4 + GDK_KEY_CAPITAL_Otilde* = 0x000000D5 + GDK_KEY_CAPITAL_Odiaeresis* = 0x000000D6 + GDK_KEY_multiply* = 0x000000D7 + GDK_KEY_Ooblique* = 0x000000D8 + GDK_KEY_CAPITAL_Ugrave* = 0x000000D9 + GDK_KEY_CAPITAL_Uacute* = 0x000000DA + GDK_KEY_CAPITAL_Ucircumflex* = 0x000000DB + GDK_KEY_CAPITAL_Udiaeresis* = 0x000000DC + GDK_KEY_CAPITAL_Yacute* = 0x000000DD + GDK_KEY_CAPITAL_THORN* = 0x000000DE + GDK_KEY_ssharp* = 0x000000DF + GDK_KEY_agrave* = 0x000000E0 + GDK_KEY_aacute* = 0x000000E1 + GDK_KEY_acircumflex* = 0x000000E2 + GDK_KEY_atilde* = 0x000000E3 + GDK_KEY_adiaeresis* = 0x000000E4 + GDK_KEY_aring* = 0x000000E5 + GDK_KEY_ae* = 0x000000E6 + GDK_KEY_ccedilla* = 0x000000E7 + GDK_KEY_egrave* = 0x000000E8 + GDK_KEY_eacute* = 0x000000E9 + GDK_KEY_ecircumflex* = 0x000000EA + GDK_KEY_ediaeresis* = 0x000000EB + GDK_KEY_igrave* = 0x000000EC + GDK_KEY_iacute* = 0x000000ED + GDK_KEY_icircumflex* = 0x000000EE + GDK_KEY_idiaeresis* = 0x000000EF + GDK_KEY_eth* = 0x000000F0 + GDK_KEY_ntilde* = 0x000000F1 + GDK_KEY_ograve* = 0x000000F2 + GDK_KEY_oacute* = 0x000000F3 + GDK_KEY_ocircumflex* = 0x000000F4 + GDK_KEY_otilde* = 0x000000F5 + GDK_KEY_odiaeresis* = 0x000000F6 + GDK_KEY_division* = 0x000000F7 + GDK_KEY_oslash* = 0x000000F8 + GDK_KEY_ugrave* = 0x000000F9 + GDK_KEY_uacute* = 0x000000FA + GDK_KEY_ucircumflex* = 0x000000FB + GDK_KEY_udiaeresis* = 0x000000FC + GDK_KEY_yacute* = 0x000000FD + GDK_KEY_thorn* = 0x000000FE + GDK_KEY_ydiaeresis* = 0x000000FF + GDK_KEY_CAPITAL_Aogonek* = 0x000001A1 + GDK_KEY_breve* = 0x000001A2 + GDK_KEY_CAPITAL_Lstroke* = 0x000001A3 + GDK_KEY_CAPITAL_Lcaron* = 0x000001A5 + GDK_KEY_CAPITAL_Sacute* = 0x000001A6 + GDK_KEY_CAPITAL_Scaron* = 0x000001A9 + GDK_KEY_CAPITAL_Scedilla* = 0x000001AA + GDK_KEY_CAPITAL_Tcaron* = 0x000001AB + GDK_KEY_CAPITAL_Zacute* = 0x000001AC + GDK_KEY_CAPITAL_Zcaron* = 0x000001AE + GDK_KEY_CAPITAL_Zabovedot* = 0x000001AF + GDK_KEY_aogonek* = 0x000001B1 + GDK_KEY_ogonek* = 0x000001B2 + GDK_KEY_lstroke* = 0x000001B3 + GDK_KEY_lcaron* = 0x000001B5 + GDK_KEY_sacute* = 0x000001B6 + GDK_KEY_caron* = 0x000001B7 + GDK_KEY_scaron* = 0x000001B9 + GDK_KEY_scedilla* = 0x000001BA + GDK_KEY_tcaron* = 0x000001BB + GDK_KEY_zacute* = 0x000001BC + GDK_KEY_doubleacute* = 0x000001BD + GDK_KEY_zcaron* = 0x000001BE + GDK_KEY_zabovedot* = 0x000001BF + GDK_KEY_CAPITAL_Racute* = 0x000001C0 + GDK_KEY_CAPITAL_Abreve* = 0x000001C3 + GDK_KEY_CAPITAL_Lacute* = 0x000001C5 + GDK_KEY_CAPITAL_Cacute* = 0x000001C6 + GDK_KEY_CAPITAL_Ccaron* = 0x000001C8 + GDK_KEY_CAPITAL_Eogonek* = 0x000001CA + GDK_KEY_CAPITAL_Ecaron* = 0x000001CC + GDK_KEY_CAPITAL_Dcaron* = 0x000001CF + GDK_KEY_CAPITAL_Dstroke* = 0x000001D0 + GDK_KEY_CAPITAL_Nacute* = 0x000001D1 + GDK_KEY_CAPITAL_Ncaron* = 0x000001D2 + GDK_KEY_CAPITAL_Odoubleacute* = 0x000001D5 + GDK_KEY_CAPITAL_Rcaron* = 0x000001D8 + GDK_KEY_CAPITAL_Uring* = 0x000001D9 + GDK_KEY_CAPITAL_Udoubleacute* = 0x000001DB + GDK_KEY_CAPITAL_Tcedilla* = 0x000001DE + GDK_KEY_racute* = 0x000001E0 + GDK_KEY_abreve* = 0x000001E3 + GDK_KEY_lacute* = 0x000001E5 + GDK_KEY_cacute* = 0x000001E6 + GDK_KEY_ccaron* = 0x000001E8 + GDK_KEY_eogonek* = 0x000001EA + GDK_KEY_ecaron* = 0x000001EC + GDK_KEY_dcaron* = 0x000001EF + GDK_KEY_dstroke* = 0x000001F0 + GDK_KEY_nacute* = 0x000001F1 + GDK_KEY_ncaron* = 0x000001F2 + GDK_KEY_odoubleacute* = 0x000001F5 + GDK_KEY_udoubleacute* = 0x000001FB + GDK_KEY_rcaron* = 0x000001F8 + GDK_KEY_uring* = 0x000001F9 + GDK_KEY_tcedilla* = 0x000001FE + GDK_KEY_abovedot* = 0x000001FF + GDK_KEY_CAPITAL_Hstroke* = 0x000002A1 + GDK_KEY_CAPITAL_Hcircumflex* = 0x000002A6 + GDK_KEY_CAPITAL_Iabovedot* = 0x000002A9 + GDK_KEY_CAPITAL_Gbreve* = 0x000002AB + GDK_KEY_CAPITAL_Jcircumflex* = 0x000002AC + GDK_KEY_hstroke* = 0x000002B1 + GDK_KEY_hcircumflex* = 0x000002B6 + GDK_KEY_idotless* = 0x000002B9 + GDK_KEY_gbreve* = 0x000002BB + GDK_KEY_jcircumflex* = 0x000002BC + GDK_KEY_CAPITAL_Cabovedot* = 0x000002C5 + GDK_KEY_CAPITAL_Ccircumflex* = 0x000002C6 + GDK_KEY_CAPITAL_Gabovedot* = 0x000002D5 + GDK_KEY_CAPITAL_Gcircumflex* = 0x000002D8 + GDK_KEY_CAPITAL_Ubreve* = 0x000002DD + GDK_KEY_CAPITAL_Scircumflex* = 0x000002DE + GDK_KEY_cabovedot* = 0x000002E5 + GDK_KEY_ccircumflex* = 0x000002E6 + GDK_KEY_gabovedot* = 0x000002F5 + GDK_KEY_gcircumflex* = 0x000002F8 + GDK_KEY_ubreve* = 0x000002FD + GDK_KEY_scircumflex* = 0x000002FE + GDK_KEY_kra* = 0x000003A2 + GDK_KEY_kappa* = 0x000003A2 + GDK_KEY_CAPITAL_Rcedilla* = 0x000003A3 + GDK_KEY_CAPITAL_Itilde* = 0x000003A5 + GDK_KEY_CAPITAL_Lcedilla* = 0x000003A6 + GDK_KEY_CAPITAL_Emacron* = 0x000003AA + GDK_KEY_CAPITAL_Gcedilla* = 0x000003AB + GDK_KEY_CAPITAL_Tslash* = 0x000003AC + GDK_KEY_rcedilla* = 0x000003B3 + GDK_KEY_itilde* = 0x000003B5 + GDK_KEY_lcedilla* = 0x000003B6 + GDK_KEY_emacron* = 0x000003BA + GDK_KEY_gcedilla* = 0x000003BB + GDK_KEY_tslash* = 0x000003BC + GDK_KEY_CAPITAL_ENG* = 0x000003BD + GDK_KEY_eng* = 0x000003BF + GDK_KEY_CAPITAL_Amacron* = 0x000003C0 + GDK_KEY_CAPITAL_Iogonek* = 0x000003C7 + GDK_KEY_CAPITAL_Eabovedot* = 0x000003CC + GDK_KEY_CAPITAL_Imacron* = 0x000003CF + GDK_KEY_CAPITAL_Ncedilla* = 0x000003D1 + GDK_KEY_CAPITAL_Omacron* = 0x000003D2 + GDK_KEY_CAPITAL_Kcedilla* = 0x000003D3 + GDK_KEY_CAPITAL_Uogonek* = 0x000003D9 + GDK_KEY_CAPITAL_Utilde* = 0x000003DD + GDK_KEY_CAPITAL_Umacron* = 0x000003DE + GDK_KEY_amacron* = 0x000003E0 + GDK_KEY_iogonek* = 0x000003E7 + GDK_KEY_eabovedot* = 0x000003EC + GDK_KEY_imacron* = 0x000003EF + GDK_KEY_ncedilla* = 0x000003F1 + GDK_KEY_omacron* = 0x000003F2 + GDK_KEY_kcedilla* = 0x000003F3 + GDK_KEY_uogonek* = 0x000003F9 + GDK_KEY_utilde* = 0x000003FD + GDK_KEY_umacron* = 0x000003FE + GDK_KEY_CAPITAL_OE* = 0x000013BC + GDK_KEY_oe* = 0x000013BD + GDK_KEY_CAPITAL_Ydiaeresis* = 0x000013BE + GDK_KEY_overline* = 0x0000047E + GDK_KEY_kana_fullstop* = 0x000004A1 + GDK_KEY_kana_openingbracket* = 0x000004A2 + GDK_KEY_kana_closingbracket* = 0x000004A3 + GDK_KEY_kana_comma* = 0x000004A4 + GDK_KEY_kana_conjunctive* = 0x000004A5 + GDK_KEY_kana_middledot* = 0x000004A5 + GDK_KEY_kana_WO* = 0x000004A6 + GDK_KEY_kana_a* = 0x000004A7 + GDK_KEY_kana_i* = 0x000004A8 + GDK_KEY_kana_u* = 0x000004A9 + GDK_KEY_kana_e* = 0x000004AA + GDK_KEY_kana_o* = 0x000004AB + GDK_KEY_kana_ya* = 0x000004AC + GDK_KEY_kana_yu* = 0x000004AD + GDK_KEY_kana_yo* = 0x000004AE + GDK_KEY_kana_tsu* = 0x000004AF + GDK_KEY_kana_tu* = 0x000004AF + GDK_KEY_prolongedsound* = 0x000004B0 + GDK_KEY_kana_CAPITAL_A* = 0x000004B1 + GDK_KEY_kana_CAPITAL_I* = 0x000004B2 + GDK_KEY_kana_CAPITAL_U* = 0x000004B3 + GDK_KEY_kana_CAPITAL_E* = 0x000004B4 + GDK_KEY_kana_CAPITAL_O* = 0x000004B5 + GDK_KEY_kana_KA* = 0x000004B6 + GDK_KEY_kana_KI* = 0x000004B7 + GDK_KEY_kana_KU* = 0x000004B8 + GDK_KEY_kana_KE* = 0x000004B9 + GDK_KEY_kana_KO* = 0x000004BA + GDK_KEY_kana_SA* = 0x000004BB + GDK_KEY_kana_SHI* = 0x000004BC + GDK_KEY_kana_SU* = 0x000004BD + GDK_KEY_kana_SE* = 0x000004BE + GDK_KEY_kana_SO* = 0x000004BF + GDK_KEY_kana_TA* = 0x000004C0 + GDK_KEY_kana_CHI* = 0x000004C1 + GDK_KEY_kana_TI* = 0x000004C1 + GDK_KEY_kana_CAPITAL_TSU* = 0x000004C2 + GDK_KEY_kana_CAPITAL_TU* = 0x000004C2 + GDK_KEY_kana_TE* = 0x000004C3 + GDK_KEY_kana_TO* = 0x000004C4 + GDK_KEY_kana_NA* = 0x000004C5 + GDK_KEY_kana_NI* = 0x000004C6 + GDK_KEY_kana_NU* = 0x000004C7 + GDK_KEY_kana_NE* = 0x000004C8 + GDK_KEY_kana_NO* = 0x000004C9 + GDK_KEY_kana_HA* = 0x000004CA + GDK_KEY_kana_HI* = 0x000004CB + GDK_KEY_kana_FU* = 0x000004CC + GDK_KEY_kana_HU* = 0x000004CC + GDK_KEY_kana_HE* = 0x000004CD + GDK_KEY_kana_HO* = 0x000004CE + GDK_KEY_kana_MA* = 0x000004CF + GDK_KEY_kana_MI* = 0x000004D0 + GDK_KEY_kana_MU* = 0x000004D1 + GDK_KEY_kana_ME* = 0x000004D2 + GDK_KEY_kana_MO* = 0x000004D3 + GDK_KEY_kana_CAPITAL_YA* = 0x000004D4 + GDK_KEY_kana_CAPITAL_YU* = 0x000004D5 + GDK_KEY_kana_CAPITAL_YO* = 0x000004D6 + GDK_KEY_kana_RA* = 0x000004D7 + GDK_KEY_kana_RI* = 0x000004D8 + GDK_KEY_kana_RU* = 0x000004D9 + GDK_KEY_kana_RE* = 0x000004DA + GDK_KEY_kana_RO* = 0x000004DB + GDK_KEY_kana_WA* = 0x000004DC + GDK_KEY_kana_N* = 0x000004DD + GDK_KEY_voicedsound* = 0x000004DE + GDK_KEY_semivoicedsound* = 0x000004DF + GDK_KEY_kana_switch* = 0x0000FF7E + GDK_KEY_Arabic_comma* = 0x000005AC + GDK_KEY_Arabic_semicolon* = 0x000005BB + GDK_KEY_Arabic_question_mark* = 0x000005BF + GDK_KEY_Arabic_hamza* = 0x000005C1 + GDK_KEY_Arabic_maddaonalef* = 0x000005C2 + GDK_KEY_Arabic_hamzaonalef* = 0x000005C3 + GDK_KEY_Arabic_hamzaonwaw* = 0x000005C4 + GDK_KEY_Arabic_hamzaunderalef* = 0x000005C5 + GDK_KEY_Arabic_hamzaonyeh* = 0x000005C6 + GDK_KEY_Arabic_alef* = 0x000005C7 + GDK_KEY_Arabic_beh* = 0x000005C8 + GDK_KEY_Arabic_tehmarbuta* = 0x000005C9 + GDK_KEY_Arabic_teh* = 0x000005CA + GDK_KEY_Arabic_theh* = 0x000005CB + GDK_KEY_Arabic_jeem* = 0x000005CC + GDK_KEY_Arabic_hah* = 0x000005CD + GDK_KEY_Arabic_khah* = 0x000005CE + GDK_KEY_Arabic_dal* = 0x000005CF + GDK_KEY_Arabic_thal* = 0x000005D0 + GDK_KEY_Arabic_ra* = 0x000005D1 + GDK_KEY_Arabic_zain* = 0x000005D2 + GDK_KEY_Arabic_seen* = 0x000005D3 + GDK_KEY_Arabic_sheen* = 0x000005D4 + GDK_KEY_Arabic_sad* = 0x000005D5 + GDK_KEY_Arabic_dad* = 0x000005D6 + GDK_KEY_Arabic_tah* = 0x000005D7 + GDK_KEY_Arabic_zah* = 0x000005D8 + GDK_KEY_Arabic_ain* = 0x000005D9 + GDK_KEY_Arabic_ghain* = 0x000005DA + GDK_KEY_Arabic_tatweel* = 0x000005E0 + GDK_KEY_Arabic_feh* = 0x000005E1 + GDK_KEY_Arabic_qaf* = 0x000005E2 + GDK_KEY_Arabic_kaf* = 0x000005E3 + GDK_KEY_Arabic_lam* = 0x000005E4 + GDK_KEY_Arabic_meem* = 0x000005E5 + GDK_KEY_Arabic_noon* = 0x000005E6 + GDK_KEY_Arabic_ha* = 0x000005E7 + GDK_KEY_Arabic_heh* = 0x000005E7 + GDK_KEY_Arabic_waw* = 0x000005E8 + GDK_KEY_Arabic_alefmaksura* = 0x000005E9 + GDK_KEY_Arabic_yeh* = 0x000005EA + GDK_KEY_Arabic_fathatan* = 0x000005EB + GDK_KEY_Arabic_dammatan* = 0x000005EC + GDK_KEY_Arabic_kasratan* = 0x000005ED + GDK_KEY_Arabic_fatha* = 0x000005EE + GDK_KEY_Arabic_damma* = 0x000005EF + GDK_KEY_Arabic_kasra* = 0x000005F0 + GDK_KEY_Arabic_shadda* = 0x000005F1 + GDK_KEY_Arabic_sukun* = 0x000005F2 + GDK_KEY_Arabic_switch* = 0x0000FF7E + GDK_KEY_Serbian_dje* = 0x000006A1 + GDK_KEY_Macedonia_gje* = 0x000006A2 + GDK_KEY_Cyrillic_io* = 0x000006A3 + GDK_KEY_Ukrainian_ie* = 0x000006A4 + GDK_KEY_Ukranian_je* = 0x000006A4 + GDK_KEY_Macedonia_dse* = 0x000006A5 + GDK_KEY_Ukrainian_i* = 0x000006A6 + GDK_KEY_Ukranian_i* = 0x000006A6 + GDK_KEY_Ukrainian_yi* = 0x000006A7 + GDK_KEY_Ukranian_yi* = 0x000006A7 + GDK_KEY_Cyrillic_je* = 0x000006A8 + GDK_KEY_Serbian_je* = 0x000006A8 + GDK_KEY_Cyrillic_lje* = 0x000006A9 + GDK_KEY_Serbian_lje* = 0x000006A9 + GDK_KEY_Cyrillic_nje* = 0x000006AA + GDK_KEY_Serbian_nje* = 0x000006AA + GDK_KEY_Serbian_tshe* = 0x000006AB + GDK_KEY_Macedonia_kje* = 0x000006AC + GDK_KEY_Byelorussian_shortu* = 0x000006AE + GDK_KEY_Cyrillic_dzhe* = 0x000006AF + GDK_KEY_Serbian_dze* = 0x000006AF + GDK_KEY_numerosign* = 0x000006B0 + GDK_KEY_Serbian_CAPITAL_DJE* = 0x000006B1 + GDK_KEY_Macedonia_CAPITAL_GJE* = 0x000006B2 + GDK_KEY_Cyrillic_CAPITAL_IO* = 0x000006B3 + GDK_KEY_Ukrainian_CAPITAL_IE* = 0x000006B4 + GDK_KEY_Ukranian_CAPITAL_JE* = 0x000006B4 + GDK_KEY_Macedonia_CAPITAL_DSE* = 0x000006B5 + GDK_KEY_Ukrainian_CAPITAL_I* = 0x000006B6 + GDK_KEY_Ukranian_CAPITAL_I* = 0x000006B6 + GDK_KEY_Ukrainian_CAPITAL_YI* = 0x000006B7 + GDK_KEY_Ukranian_CAPITAL_YI* = 0x000006B7 + GDK_KEY_Cyrillic_CAPITAL_JE* = 0x000006B8 + GDK_KEY_Serbian_CAPITAL_JE* = 0x000006B8 + GDK_KEY_Cyrillic_CAPITAL_LJE* = 0x000006B9 + GDK_KEY_Serbian_CAPITAL_LJE* = 0x000006B9 + GDK_KEY_Cyrillic_CAPITAL_NJE* = 0x000006BA + GDK_KEY_Serbian_CAPITAL_NJE* = 0x000006BA + GDK_KEY_Serbian_CAPITAL_TSHE* = 0x000006BB + GDK_KEY_Macedonia_CAPITAL_KJE* = 0x000006BC + GDK_KEY_Byelorussian_CAPITAL_SHORTU* = 0x000006BE + GDK_KEY_Cyrillic_CAPITAL_DZHE* = 0x000006BF + GDK_KEY_Serbian_CAPITAL_DZE* = 0x000006BF + GDK_KEY_Cyrillic_yu* = 0x000006C0 + GDK_KEY_Cyrillic_a* = 0x000006C1 + GDK_KEY_Cyrillic_be* = 0x000006C2 + GDK_KEY_Cyrillic_tse* = 0x000006C3 + GDK_KEY_Cyrillic_de* = 0x000006C4 + GDK_KEY_Cyrillic_ie* = 0x000006C5 + GDK_KEY_Cyrillic_ef* = 0x000006C6 + GDK_KEY_Cyrillic_ghe* = 0x000006C7 + GDK_KEY_Cyrillic_ha* = 0x000006C8 + GDK_KEY_Cyrillic_i* = 0x000006C9 + GDK_KEY_Cyrillic_shorti* = 0x000006CA + GDK_KEY_Cyrillic_ka* = 0x000006CB + GDK_KEY_Cyrillic_el* = 0x000006CC + GDK_KEY_Cyrillic_em* = 0x000006CD + GDK_KEY_Cyrillic_en* = 0x000006CE + GDK_KEY_Cyrillic_o* = 0x000006CF + GDK_KEY_Cyrillic_pe* = 0x000006D0 + GDK_KEY_Cyrillic_ya* = 0x000006D1 + GDK_KEY_Cyrillic_er* = 0x000006D2 + GDK_KEY_Cyrillic_es* = 0x000006D3 + GDK_KEY_Cyrillic_te* = 0x000006D4 + GDK_KEY_Cyrillic_u* = 0x000006D5 + GDK_KEY_Cyrillic_zhe* = 0x000006D6 + GDK_KEY_Cyrillic_ve* = 0x000006D7 + GDK_KEY_Cyrillic_softsign* = 0x000006D8 + GDK_KEY_Cyrillic_yeru* = 0x000006D9 + GDK_KEY_Cyrillic_ze* = 0x000006DA + GDK_KEY_Cyrillic_sha* = 0x000006DB + GDK_KEY_Cyrillic_e* = 0x000006DC + GDK_KEY_Cyrillic_shcha* = 0x000006DD + GDK_KEY_Cyrillic_che* = 0x000006DE + GDK_KEY_Cyrillic_hardsign* = 0x000006DF + GDK_KEY_Cyrillic_CAPITAL_YU* = 0x000006E0 + GDK_KEY_Cyrillic_CAPITAL_A* = 0x000006E1 + GDK_KEY_Cyrillic_CAPITAL_BE* = 0x000006E2 + GDK_KEY_Cyrillic_CAPITAL_TSE* = 0x000006E3 + GDK_KEY_Cyrillic_CAPITAL_DE* = 0x000006E4 + GDK_KEY_Cyrillic_CAPITAL_IE* = 0x000006E5 + GDK_KEY_Cyrillic_CAPITAL_EF* = 0x000006E6 + GDK_KEY_Cyrillic_CAPITAL_GHE* = 0x000006E7 + GDK_KEY_Cyrillic_CAPITAL_HA* = 0x000006E8 + GDK_KEY_Cyrillic_CAPITAL_I* = 0x000006E9 + GDK_KEY_Cyrillic_CAPITAL_SHORTI* = 0x000006EA + GDK_KEY_Cyrillic_CAPITAL_KA* = 0x000006EB + GDK_KEY_Cyrillic_CAPITAL_EL* = 0x000006EC + GDK_KEY_Cyrillic_CAPITAL_EM* = 0x000006ED + GDK_KEY_Cyrillic_CAPITAL_EN* = 0x000006EE + GDK_KEY_Cyrillic_CAPITAL_O* = 0x000006EF + GDK_KEY_Cyrillic_CAPITAL_PE* = 0x000006F0 + GDK_KEY_Cyrillic_CAPITAL_YA* = 0x000006F1 + GDK_KEY_Cyrillic_CAPITAL_ER* = 0x000006F2 + GDK_KEY_Cyrillic_CAPITAL_ES* = 0x000006F3 + GDK_KEY_Cyrillic_CAPITAL_TE* = 0x000006F4 + GDK_KEY_Cyrillic_CAPITAL_U* = 0x000006F5 + GDK_KEY_Cyrillic_CAPITAL_ZHE* = 0x000006F6 + GDK_KEY_Cyrillic_CAPITAL_VE* = 0x000006F7 + GDK_KEY_Cyrillic_CAPITAL_SOFTSIGN* = 0x000006F8 + GDK_KEY_Cyrillic_CAPITAL_YERU* = 0x000006F9 + GDK_KEY_Cyrillic_CAPITAL_ZE* = 0x000006FA + GDK_KEY_Cyrillic_CAPITAL_SHA* = 0x000006FB + GDK_KEY_Cyrillic_CAPITAL_E* = 0x000006FC + GDK_KEY_Cyrillic_CAPITAL_SHCHA* = 0x000006FD + GDK_KEY_Cyrillic_CAPITAL_CHE* = 0x000006FE + GDK_KEY_Cyrillic_CAPITAL_HARDSIGN* = 0x000006FF + GDK_KEY_Greek_CAPITAL_ALPHAaccent* = 0x000007A1 + GDK_KEY_Greek_CAPITAL_EPSILONaccent* = 0x000007A2 + GDK_KEY_Greek_CAPITAL_ETAaccent* = 0x000007A3 + GDK_KEY_Greek_CAPITAL_IOTAaccent* = 0x000007A4 + GDK_KEY_Greek_CAPITAL_IOTAdiaeresis* = 0x000007A5 + GDK_KEY_Greek_CAPITAL_OMICRONaccent* = 0x000007A7 + GDK_KEY_Greek_CAPITAL_UPSILONaccent* = 0x000007A8 + GDK_KEY_Greek_CAPITAL_UPSILONdieresis* = 0x000007A9 + GDK_KEY_Greek_CAPITAL_OMEGAaccent* = 0x000007AB + GDK_KEY_Greek_accentdieresis* = 0x000007AE + GDK_KEY_Greek_horizbar* = 0x000007AF + GDK_KEY_Greek_alphaaccent* = 0x000007B1 + GDK_KEY_Greek_epsilonaccent* = 0x000007B2 + GDK_KEY_Greek_etaaccent* = 0x000007B3 + GDK_KEY_Greek_iotaaccent* = 0x000007B4 + GDK_KEY_Greek_iotadieresis* = 0x000007B5 + GDK_KEY_Greek_iotaaccentdieresis* = 0x000007B6 + GDK_KEY_Greek_omicronaccent* = 0x000007B7 + GDK_KEY_Greek_upsilonaccent* = 0x000007B8 + GDK_KEY_Greek_upsilondieresis* = 0x000007B9 + GDK_KEY_Greek_upsilonaccentdieresis* = 0x000007BA + GDK_KEY_Greek_omegaaccent* = 0x000007BB + GDK_KEY_Greek_CAPITAL_ALPHA* = 0x000007C1 + GDK_KEY_Greek_CAPITAL_BETA* = 0x000007C2 + GDK_KEY_Greek_CAPITAL_GAMMA* = 0x000007C3 + GDK_KEY_Greek_CAPITAL_DELTA* = 0x000007C4 + GDK_KEY_Greek_CAPITAL_EPSILON* = 0x000007C5 + GDK_KEY_Greek_CAPITAL_ZETA* = 0x000007C6 + GDK_KEY_Greek_CAPITAL_ETA* = 0x000007C7 + GDK_KEY_Greek_CAPITAL_THETA* = 0x000007C8 + GDK_KEY_Greek_CAPITAL_IOTA* = 0x000007C9 + GDK_KEY_Greek_CAPITAL_KAPPA* = 0x000007CA + GDK_KEY_Greek_CAPITAL_LAMDA* = 0x000007CB + GDK_KEY_Greek_CAPITAL_LAMBDA* = 0x000007CB + GDK_KEY_Greek_CAPITAL_MU* = 0x000007CC + GDK_KEY_Greek_CAPITAL_NU* = 0x000007CD + GDK_KEY_Greek_CAPITAL_XI* = 0x000007CE + GDK_KEY_Greek_CAPITAL_OMICRON* = 0x000007CF + GDK_KEY_Greek_CAPITAL_PI* = 0x000007D0 + GDK_KEY_Greek_CAPITAL_RHO* = 0x000007D1 + GDK_KEY_Greek_CAPITAL_SIGMA* = 0x000007D2 + GDK_KEY_Greek_CAPITAL_TAU* = 0x000007D4 + GDK_KEY_Greek_CAPITAL_UPSILON* = 0x000007D5 + GDK_KEY_Greek_CAPITAL_PHI* = 0x000007D6 + GDK_KEY_Greek_CAPITAL_CHI* = 0x000007D7 + GDK_KEY_Greek_CAPITAL_PSI* = 0x000007D8 + GDK_KEY_Greek_CAPITAL_OMEGA* = 0x000007D9 + GDK_KEY_Greek_alpha* = 0x000007E1 + GDK_KEY_Greek_beta* = 0x000007E2 + GDK_KEY_Greek_gamma* = 0x000007E3 + GDK_KEY_Greek_delta* = 0x000007E4 + GDK_KEY_Greek_epsilon* = 0x000007E5 + GDK_KEY_Greek_zeta* = 0x000007E6 + GDK_KEY_Greek_eta* = 0x000007E7 + GDK_KEY_Greek_theta* = 0x000007E8 + GDK_KEY_Greek_iota* = 0x000007E9 + GDK_KEY_Greek_kappa* = 0x000007EA + GDK_KEY_Greek_lamda* = 0x000007EB + GDK_KEY_Greek_lambda* = 0x000007EB + GDK_KEY_Greek_mu* = 0x000007EC + GDK_KEY_Greek_nu* = 0x000007ED + GDK_KEY_Greek_xi* = 0x000007EE + GDK_KEY_Greek_omicron* = 0x000007EF + GDK_KEY_Greek_pi* = 0x000007F0 + GDK_KEY_Greek_rho* = 0x000007F1 + GDK_KEY_Greek_sigma* = 0x000007F2 + GDK_KEY_Greek_finalsmallsigma* = 0x000007F3 + GDK_KEY_Greek_tau* = 0x000007F4 + GDK_KEY_Greek_upsilon* = 0x000007F5 + GDK_KEY_Greek_phi* = 0x000007F6 + GDK_KEY_Greek_chi* = 0x000007F7 + GDK_KEY_Greek_psi* = 0x000007F8 + GDK_KEY_Greek_omega* = 0x000007F9 + GDK_KEY_Greek_switch* = 0x0000FF7E + GDK_KEY_leftradical* = 0x000008A1 + GDK_KEY_topleftradical* = 0x000008A2 + GDK_KEY_horizconnector* = 0x000008A3 + GDK_KEY_topintegral* = 0x000008A4 + GDK_KEY_botintegral* = 0x000008A5 + GDK_KEY_vertconnector* = 0x000008A6 + GDK_KEY_topleftsqbracket* = 0x000008A7 + GDK_KEY_botleftsqbracket* = 0x000008A8 + GDK_KEY_toprightsqbracket* = 0x000008A9 + GDK_KEY_botrightsqbracket* = 0x000008AA + GDK_KEY_topleftparens* = 0x000008AB + GDK_KEY_botleftparens* = 0x000008AC + GDK_KEY_toprightparens* = 0x000008AD + GDK_KEY_botrightparens* = 0x000008AE + GDK_KEY_leftmiddlecurlybrace* = 0x000008AF + GDK_KEY_rightmiddlecurlybrace* = 0x000008B0 + GDK_KEY_topleftsummation* = 0x000008B1 + GDK_KEY_botleftsummation* = 0x000008B2 + GDK_KEY_topvertsummationconnector* = 0x000008B3 + GDK_KEY_botvertsummationconnector* = 0x000008B4 + GDK_KEY_toprightsummation* = 0x000008B5 + GDK_KEY_botrightsummation* = 0x000008B6 + GDK_KEY_rightmiddlesummation* = 0x000008B7 + GDK_KEY_lessthanequal* = 0x000008BC + GDK_KEY_notequal* = 0x000008BD + GDK_KEY_greaterthanequal* = 0x000008BE + GDK_KEY_integral* = 0x000008BF + GDK_KEY_therefore* = 0x000008C0 + GDK_KEY_variation* = 0x000008C1 + GDK_KEY_infinity* = 0x000008C2 + GDK_KEY_nabla* = 0x000008C5 + GDK_KEY_approximate* = 0x000008C8 + GDK_KEY_similarequal* = 0x000008C9 + GDK_KEY_ifonlyif* = 0x000008CD + GDK_KEY_implies* = 0x000008CE + GDK_KEY_identical* = 0x000008CF + GDK_KEY_radical* = 0x000008D6 + GDK_KEY_includedin* = 0x000008DA + GDK_KEY_includes* = 0x000008DB + GDK_KEY_intersection* = 0x000008DC + GDK_KEY_union* = 0x000008DD + GDK_KEY_logicaland* = 0x000008DE + GDK_KEY_logicalor* = 0x000008DF + GDK_KEY_partialderivative* = 0x000008EF + GDK_KEY_function* = 0x000008F6 + GDK_KEY_leftarrow* = 0x000008FB + GDK_KEY_uparrow* = 0x000008FC + GDK_KEY_rightarrow* = 0x000008FD + GDK_KEY_downarrow* = 0x000008FE + GDK_KEY_blank* = 0x000009DF + GDK_KEY_soliddiamond* = 0x000009E0 + GDK_KEY_checkerboard* = 0x000009E1 + GDK_KEY_ht* = 0x000009E2 + GDK_KEY_ff* = 0x000009E3 + GDK_KEY_cr* = 0x000009E4 + GDK_KEY_lf* = 0x000009E5 + GDK_KEY_nl* = 0x000009E8 + GDK_KEY_vt* = 0x000009E9 + GDK_KEY_lowrightcorner* = 0x000009EA + GDK_KEY_uprightcorner* = 0x000009EB + GDK_KEY_upleftcorner* = 0x000009EC + GDK_KEY_lowleftcorner* = 0x000009ED + GDK_KEY_crossinglines* = 0x000009EE + GDK_KEY_horizlinescan1* = 0x000009EF + GDK_KEY_horizlinescan3* = 0x000009F0 + GDK_KEY_horizlinescan5* = 0x000009F1 + GDK_KEY_horizlinescan7* = 0x000009F2 + GDK_KEY_horizlinescan9* = 0x000009F3 + GDK_KEY_leftt* = 0x000009F4 + GDK_KEY_rightt* = 0x000009F5 + GDK_KEY_bott* = 0x000009F6 + GDK_KEY_topt* = 0x000009F7 + GDK_KEY_vertbar* = 0x000009F8 + GDK_KEY_emspace* = 0x00000AA1 + GDK_KEY_enspace* = 0x00000AA2 + GDK_KEY_em3space* = 0x00000AA3 + GDK_KEY_em4space* = 0x00000AA4 + GDK_KEY_digitspace* = 0x00000AA5 + GDK_KEY_punctspace* = 0x00000AA6 + GDK_KEY_thinspace* = 0x00000AA7 + GDK_KEY_hairspace* = 0x00000AA8 + GDK_KEY_emdash* = 0x00000AA9 + GDK_KEY_endash* = 0x00000AAA + GDK_KEY_signifblank* = 0x00000AAC + GDK_KEY_ellipsis* = 0x00000AAE + GDK_KEY_doubbaselinedot* = 0x00000AAF + GDK_KEY_onethird* = 0x00000AB0 + GDK_KEY_twothirds* = 0x00000AB1 + GDK_KEY_onefifth* = 0x00000AB2 + GDK_KEY_twofifths* = 0x00000AB3 + GDK_KEY_threefifths* = 0x00000AB4 + GDK_KEY_fourfifths* = 0x00000AB5 + GDK_KEY_onesixth* = 0x00000AB6 + GDK_KEY_fivesixths* = 0x00000AB7 + GDK_KEY_careof* = 0x00000AB8 + GDK_KEY_figdash* = 0x00000ABB + GDK_KEY_leftanglebracket* = 0x00000ABC + GDK_KEY_decimalpoint* = 0x00000ABD + GDK_KEY_rightanglebracket* = 0x00000ABE + GDK_KEY_marker* = 0x00000ABF + GDK_KEY_oneeighth* = 0x00000AC3 + GDK_KEY_threeeighths* = 0x00000AC4 + GDK_KEY_fiveeighths* = 0x00000AC5 + GDK_KEY_seveneighths* = 0x00000AC6 + GDK_KEY_trademark* = 0x00000AC9 + GDK_KEY_signaturemark* = 0x00000ACA + GDK_KEY_trademarkincircle* = 0x00000ACB + GDK_KEY_leftopentriangle* = 0x00000ACC + GDK_KEY_rightopentriangle* = 0x00000ACD + GDK_KEY_emopencircle* = 0x00000ACE + GDK_KEY_emopenrectangle* = 0x00000ACF + GDK_KEY_leftsinglequotemark* = 0x00000AD0 + GDK_KEY_rightsinglequotemark* = 0x00000AD1 + GDK_KEY_leftdoublequotemark* = 0x00000AD2 + GDK_KEY_rightdoublequotemark* = 0x00000AD3 + GDK_KEY_prescription* = 0x00000AD4 + GDK_KEY_minutes* = 0x00000AD6 + GDK_KEY_seconds* = 0x00000AD7 + GDK_KEY_latincross* = 0x00000AD9 + GDK_KEY_hexagram* = 0x00000ADA + GDK_KEY_filledrectbullet* = 0x00000ADB + GDK_KEY_filledlefttribullet* = 0x00000ADC + GDK_KEY_filledrighttribullet* = 0x00000ADD + GDK_KEY_emfilledcircle* = 0x00000ADE + GDK_KEY_emfilledrect* = 0x00000ADF + GDK_KEY_enopencircbullet* = 0x00000AE0 + GDK_KEY_enopensquarebullet* = 0x00000AE1 + GDK_KEY_openrectbullet* = 0x00000AE2 + GDK_KEY_opentribulletup* = 0x00000AE3 + GDK_KEY_opentribulletdown* = 0x00000AE4 + GDK_KEY_openstar* = 0x00000AE5 + GDK_KEY_enfilledcircbullet* = 0x00000AE6 + GDK_KEY_enfilledsqbullet* = 0x00000AE7 + GDK_KEY_filledtribulletup* = 0x00000AE8 + GDK_KEY_filledtribulletdown* = 0x00000AE9 + GDK_KEY_leftpointer* = 0x00000AEA + GDK_KEY_rightpointer* = 0x00000AEB + GDK_KEY_club* = 0x00000AEC + GDK_KEY_diamond* = 0x00000AED + GDK_KEY_heart* = 0x00000AEE + GDK_KEY_maltesecross* = 0x00000AF0 + GDK_KEY_dagger* = 0x00000AF1 + GDK_KEY_doubledagger* = 0x00000AF2 + GDK_KEY_checkmark* = 0x00000AF3 + GDK_KEY_ballotcross* = 0x00000AF4 + GDK_KEY_musicalsharp* = 0x00000AF5 + GDK_KEY_musicalflat* = 0x00000AF6 + GDK_KEY_malesymbol* = 0x00000AF7 + GDK_KEY_femalesymbol* = 0x00000AF8 + GDK_KEY_telephone* = 0x00000AF9 + GDK_KEY_telephonerecorder* = 0x00000AFA + GDK_KEY_phonographcopyright* = 0x00000AFB + GDK_KEY_caret* = 0x00000AFC + GDK_KEY_singlelowquotemark* = 0x00000AFD + GDK_KEY_doublelowquotemark* = 0x00000AFE + GDK_KEY_cursor* = 0x00000AFF + GDK_KEY_leftcaret* = 0x00000BA3 + GDK_KEY_rightcaret* = 0x00000BA6 + GDK_KEY_downcaret* = 0x00000BA8 + GDK_KEY_upcaret* = 0x00000BA9 + GDK_KEY_overbar* = 0x00000BC0 + GDK_KEY_downtack* = 0x00000BC2 + GDK_KEY_upshoe* = 0x00000BC3 + GDK_KEY_downstile* = 0x00000BC4 + GDK_KEY_underbar* = 0x00000BC6 + GDK_KEY_jot* = 0x00000BCA + GDK_KEY_quad* = 0x00000BCC + GDK_KEY_uptack* = 0x00000BCE + GDK_KEY_circle* = 0x00000BCF + GDK_KEY_upstile* = 0x00000BD3 + GDK_KEY_downshoe* = 0x00000BD6 + GDK_KEY_rightshoe* = 0x00000BD8 + GDK_KEY_leftshoe* = 0x00000BDA + GDK_KEY_lefttack* = 0x00000BDC + GDK_KEY_righttack* = 0x00000BFC + GDK_KEY_hebrew_doublelowline* = 0x00000CDF + GDK_KEY_hebrew_aleph* = 0x00000CE0 + GDK_KEY_hebrew_bet* = 0x00000CE1 + GDK_KEY_hebrew_beth* = 0x00000CE1 + GDK_KEY_hebrew_gimel* = 0x00000CE2 + GDK_KEY_hebrew_gimmel* = 0x00000CE2 + GDK_KEY_hebrew_dalet* = 0x00000CE3 + GDK_KEY_hebrew_daleth* = 0x00000CE3 + GDK_KEY_hebrew_he* = 0x00000CE4 + GDK_KEY_hebrew_waw* = 0x00000CE5 + GDK_KEY_hebrew_zain* = 0x00000CE6 + GDK_KEY_hebrew_zayin* = 0x00000CE6 + GDK_KEY_hebrew_chet* = 0x00000CE7 + GDK_KEY_hebrew_het* = 0x00000CE7 + GDK_KEY_hebrew_tet* = 0x00000CE8 + GDK_KEY_hebrew_teth* = 0x00000CE8 + GDK_KEY_hebrew_yod* = 0x00000CE9 + GDK_KEY_hebrew_finalkaph* = 0x00000CEA + GDK_KEY_hebrew_kaph* = 0x00000CEB + GDK_KEY_hebrew_lamed* = 0x00000CEC + GDK_KEY_hebrew_finalmem* = 0x00000CED + GDK_KEY_hebrew_mem* = 0x00000CEE + GDK_KEY_hebrew_finalnun* = 0x00000CEF + GDK_KEY_hebrew_nun* = 0x00000CF0 + GDK_KEY_hebrew_samech* = 0x00000CF1 + GDK_KEY_hebrew_samekh* = 0x00000CF1 + GDK_KEY_hebrew_ayin* = 0x00000CF2 + GDK_KEY_hebrew_finalpe* = 0x00000CF3 + GDK_KEY_hebrew_pe* = 0x00000CF4 + GDK_KEY_hebrew_finalzade* = 0x00000CF5 + GDK_KEY_hebrew_finalzadi* = 0x00000CF5 + GDK_KEY_hebrew_zade* = 0x00000CF6 + GDK_KEY_hebrew_zadi* = 0x00000CF6 + GDK_KEY_hebrew_qoph* = 0x00000CF7 + GDK_KEY_hebrew_kuf* = 0x00000CF7 + GDK_KEY_hebrew_resh* = 0x00000CF8 + GDK_KEY_hebrew_shin* = 0x00000CF9 + GDK_KEY_hebrew_taw* = 0x00000CFA + GDK_KEY_hebrew_taf* = 0x00000CFA + GDK_KEY_Hebrew_switch* = 0x0000FF7E + GDK_KEY_Thai_kokai* = 0x00000DA1 + GDK_KEY_Thai_khokhai* = 0x00000DA2 + GDK_KEY_Thai_khokhuat* = 0x00000DA3 + GDK_KEY_Thai_khokhwai* = 0x00000DA4 + GDK_KEY_Thai_khokhon* = 0x00000DA5 + GDK_KEY_Thai_khorakhang* = 0x00000DA6 + GDK_KEY_Thai_ngongu* = 0x00000DA7 + GDK_KEY_Thai_chochan* = 0x00000DA8 + GDK_KEY_Thai_choching* = 0x00000DA9 + GDK_KEY_Thai_chochang* = 0x00000DAA + GDK_KEY_Thai_soso* = 0x00000DAB + GDK_KEY_Thai_chochoe* = 0x00000DAC + GDK_KEY_Thai_yoying* = 0x00000DAD + GDK_KEY_Thai_dochada* = 0x00000DAE + GDK_KEY_Thai_topatak* = 0x00000DAF + GDK_KEY_Thai_thothan* = 0x00000DB0 + GDK_KEY_Thai_thonangmontho* = 0x00000DB1 + GDK_KEY_Thai_thophuthao* = 0x00000DB2 + GDK_KEY_Thai_nonen* = 0x00000DB3 + GDK_KEY_Thai_dodek* = 0x00000DB4 + GDK_KEY_Thai_totao* = 0x00000DB5 + GDK_KEY_Thai_thothung* = 0x00000DB6 + GDK_KEY_Thai_thothahan* = 0x00000DB7 + GDK_KEY_Thai_thothong* = 0x00000DB8 + GDK_KEY_Thai_nonu* = 0x00000DB9 + GDK_KEY_Thai_bobaimai* = 0x00000DBA + GDK_KEY_Thai_popla* = 0x00000DBB + GDK_KEY_Thai_phophung* = 0x00000DBC + GDK_KEY_Thai_fofa* = 0x00000DBD + GDK_KEY_Thai_phophan* = 0x00000DBE + GDK_KEY_Thai_fofan* = 0x00000DBF + GDK_KEY_Thai_phosamphao* = 0x00000DC0 + GDK_KEY_Thai_moma* = 0x00000DC1 + GDK_KEY_Thai_yoyak* = 0x00000DC2 + GDK_KEY_Thai_rorua* = 0x00000DC3 + GDK_KEY_Thai_ru* = 0x00000DC4 + GDK_KEY_Thai_loling* = 0x00000DC5 + GDK_KEY_Thai_lu* = 0x00000DC6 + GDK_KEY_Thai_wowaen* = 0x00000DC7 + GDK_KEY_Thai_sosala* = 0x00000DC8 + GDK_KEY_Thai_sorusi* = 0x00000DC9 + GDK_KEY_Thai_sosua* = 0x00000DCA + GDK_KEY_Thai_hohip* = 0x00000DCB + GDK_KEY_Thai_lochula* = 0x00000DCC + GDK_KEY_Thai_oang* = 0x00000DCD + GDK_KEY_Thai_honokhuk* = 0x00000DCE + GDK_KEY_Thai_paiyannoi* = 0x00000DCF + GDK_KEY_Thai_saraa* = 0x00000DD0 + GDK_KEY_Thai_maihanakat* = 0x00000DD1 + GDK_KEY_Thai_saraaa* = 0x00000DD2 + GDK_KEY_Thai_saraam* = 0x00000DD3 + GDK_KEY_Thai_sarai* = 0x00000DD4 + GDK_KEY_Thai_saraii* = 0x00000DD5 + GDK_KEY_Thai_saraue* = 0x00000DD6 + GDK_KEY_Thai_sarauee* = 0x00000DD7 + GDK_KEY_Thai_sarau* = 0x00000DD8 + GDK_KEY_Thai_sarauu* = 0x00000DD9 + GDK_KEY_Thai_phinthu* = 0x00000DDA + GDK_KEY_Thai_maihanakat_maitho* = 0x00000DDE + GDK_KEY_Thai_baht* = 0x00000DDF + GDK_KEY_Thai_sarae* = 0x00000DE0 + GDK_KEY_Thai_saraae* = 0x00000DE1 + GDK_KEY_Thai_sarao* = 0x00000DE2 + GDK_KEY_Thai_saraaimaimuan* = 0x00000DE3 + GDK_KEY_Thai_saraaimaimalai* = 0x00000DE4 + GDK_KEY_Thai_lakkhangyao* = 0x00000DE5 + GDK_KEY_Thai_maiyamok* = 0x00000DE6 + GDK_KEY_Thai_maitaikhu* = 0x00000DE7 + GDK_KEY_Thai_maiek* = 0x00000DE8 + GDK_KEY_Thai_maitho* = 0x00000DE9 + GDK_KEY_Thai_maitri* = 0x00000DEA + GDK_KEY_Thai_maichattawa* = 0x00000DEB + GDK_KEY_Thai_thanthakhat* = 0x00000DEC + GDK_KEY_Thai_nikhahit* = 0x00000DED + GDK_KEY_Thai_leksun* = 0x00000DF0 + GDK_KEY_Thai_leknung* = 0x00000DF1 + GDK_KEY_Thai_leksong* = 0x00000DF2 + GDK_KEY_Thai_leksam* = 0x00000DF3 + GDK_KEY_Thai_leksi* = 0x00000DF4 + GDK_KEY_Thai_lekha* = 0x00000DF5 + GDK_KEY_Thai_lekhok* = 0x00000DF6 + GDK_KEY_Thai_lekchet* = 0x00000DF7 + GDK_KEY_Thai_lekpaet* = 0x00000DF8 + GDK_KEY_Thai_lekkao* = 0x00000DF9 + GDK_KEY_Hangul* = 0x0000FF31 + GDK_KEY_Hangul_Start* = 0x0000FF32 + GDK_KEY_Hangul_End* = 0x0000FF33 + GDK_KEY_Hangul_Hanja* = 0x0000FF34 + GDK_KEY_Hangul_Jamo* = 0x0000FF35 + GDK_KEY_Hangul_Romaja* = 0x0000FF36 + GDK_KEY_Hangul_Codeinput* = 0x0000FF37 + GDK_KEY_Hangul_Jeonja* = 0x0000FF38 + GDK_KEY_Hangul_Banja* = 0x0000FF39 + GDK_KEY_Hangul_PreHanja* = 0x0000FF3A + GDK_KEY_Hangul_PostHanja* = 0x0000FF3B + GDK_KEY_Hangul_SingleCandidate* = 0x0000FF3C + GDK_KEY_Hangul_MultipleCandidate* = 0x0000FF3D + GDK_KEY_Hangul_PreviousCandidate* = 0x0000FF3E + GDK_KEY_Hangul_Special* = 0x0000FF3F + GDK_KEY_Hangul_switch* = 0x0000FF7E + GDK_KEY_Hangul_Kiyeog* = 0x00000EA1 + GDK_KEY_Hangul_SsangKiyeog* = 0x00000EA2 + GDK_KEY_Hangul_KiyeogSios* = 0x00000EA3 + GDK_KEY_Hangul_Nieun* = 0x00000EA4 + GDK_KEY_Hangul_NieunJieuj* = 0x00000EA5 + GDK_KEY_Hangul_NieunHieuh* = 0x00000EA6 + GDK_KEY_Hangul_Dikeud* = 0x00000EA7 + GDK_KEY_Hangul_SsangDikeud* = 0x00000EA8 + GDK_KEY_Hangul_Rieul* = 0x00000EA9 + GDK_KEY_Hangul_RieulKiyeog* = 0x00000EAA + GDK_KEY_Hangul_RieulMieum* = 0x00000EAB + GDK_KEY_Hangul_RieulPieub* = 0x00000EAC + GDK_KEY_Hangul_RieulSios* = 0x00000EAD + GDK_KEY_Hangul_RieulTieut* = 0x00000EAE + GDK_KEY_Hangul_RieulPhieuf* = 0x00000EAF + GDK_KEY_Hangul_RieulHieuh* = 0x00000EB0 + GDK_KEY_Hangul_Mieum* = 0x00000EB1 + GDK_KEY_Hangul_Pieub* = 0x00000EB2 + GDK_KEY_Hangul_SsangPieub* = 0x00000EB3 + GDK_KEY_Hangul_PieubSios* = 0x00000EB4 + GDK_KEY_Hangul_Sios* = 0x00000EB5 + GDK_KEY_Hangul_SsangSios* = 0x00000EB6 + GDK_KEY_Hangul_Ieung* = 0x00000EB7 + GDK_KEY_Hangul_Jieuj* = 0x00000EB8 + GDK_KEY_Hangul_SsangJieuj* = 0x00000EB9 + GDK_KEY_Hangul_Cieuc* = 0x00000EBA + GDK_KEY_Hangul_Khieuq* = 0x00000EBB + GDK_KEY_Hangul_Tieut* = 0x00000EBC + GDK_KEY_Hangul_Phieuf* = 0x00000EBD + GDK_KEY_Hangul_Hieuh* = 0x00000EBE + GDK_KEY_Hangul_A* = 0x00000EBF + GDK_KEY_Hangul_AE* = 0x00000EC0 + GDK_KEY_Hangul_YA* = 0x00000EC1 + GDK_KEY_Hangul_YAE* = 0x00000EC2 + GDK_KEY_Hangul_EO* = 0x00000EC3 + GDK_KEY_Hangul_E* = 0x00000EC4 + GDK_KEY_Hangul_YEO* = 0x00000EC5 + GDK_KEY_Hangul_YE* = 0x00000EC6 + GDK_KEY_Hangul_O* = 0x00000EC7 + GDK_KEY_Hangul_WA* = 0x00000EC8 + GDK_KEY_Hangul_WAE* = 0x00000EC9 + GDK_KEY_Hangul_OE* = 0x00000ECA + GDK_KEY_Hangul_YO* = 0x00000ECB + GDK_KEY_Hangul_U* = 0x00000ECC + GDK_KEY_Hangul_WEO* = 0x00000ECD + GDK_KEY_Hangul_WE* = 0x00000ECE + GDK_KEY_Hangul_WI* = 0x00000ECF + GDK_KEY_Hangul_YU* = 0x00000ED0 + GDK_KEY_Hangul_EU* = 0x00000ED1 + GDK_KEY_Hangul_YI* = 0x00000ED2 + GDK_KEY_Hangul_I* = 0x00000ED3 + GDK_KEY_Hangul_J_Kiyeog* = 0x00000ED4 + GDK_KEY_Hangul_J_SsangKiyeog* = 0x00000ED5 + GDK_KEY_Hangul_J_KiyeogSios* = 0x00000ED6 + GDK_KEY_Hangul_J_Nieun* = 0x00000ED7 + GDK_KEY_Hangul_J_NieunJieuj* = 0x00000ED8 + GDK_KEY_Hangul_J_NieunHieuh* = 0x00000ED9 + GDK_KEY_Hangul_J_Dikeud* = 0x00000EDA + GDK_KEY_Hangul_J_Rieul* = 0x00000EDB + GDK_KEY_Hangul_J_RieulKiyeog* = 0x00000EDC + GDK_KEY_Hangul_J_RieulMieum* = 0x00000EDD + GDK_KEY_Hangul_J_RieulPieub* = 0x00000EDE + GDK_KEY_Hangul_J_RieulSios* = 0x00000EDF + GDK_KEY_Hangul_J_RieulTieut* = 0x00000EE0 + GDK_KEY_Hangul_J_RieulPhieuf* = 0x00000EE1 + GDK_KEY_Hangul_J_RieulHieuh* = 0x00000EE2 + GDK_KEY_Hangul_J_Mieum* = 0x00000EE3 + GDK_KEY_Hangul_J_Pieub* = 0x00000EE4 + GDK_KEY_Hangul_J_PieubSios* = 0x00000EE5 + GDK_KEY_Hangul_J_Sios* = 0x00000EE6 + GDK_KEY_Hangul_J_SsangSios* = 0x00000EE7 + GDK_KEY_Hangul_J_Ieung* = 0x00000EE8 + GDK_KEY_Hangul_J_Jieuj* = 0x00000EE9 + GDK_KEY_Hangul_J_Cieuc* = 0x00000EEA + GDK_KEY_Hangul_J_Khieuq* = 0x00000EEB + GDK_KEY_Hangul_J_Tieut* = 0x00000EEC + GDK_KEY_Hangul_J_Phieuf* = 0x00000EED + GDK_KEY_Hangul_J_Hieuh* = 0x00000EEE + GDK_KEY_Hangul_RieulYeorinHieuh* = 0x00000EEF + GDK_KEY_Hangul_SunkyeongeumMieum* = 0x00000EF0 + GDK_KEY_Hangul_SunkyeongeumPieub* = 0x00000EF1 + GDK_KEY_Hangul_PanSios* = 0x00000EF2 + GDK_KEY_Hangul_KkogjiDalrinIeung* = 0x00000EF3 + GDK_KEY_Hangul_SunkyeongeumPhieuf* = 0x00000EF4 + GDK_KEY_Hangul_YeorinHieuh* = 0x00000EF5 + GDK_KEY_Hangul_AraeA* = 0x00000EF6 + GDK_KEY_Hangul_AraeAE* = 0x00000EF7 + GDK_KEY_Hangul_J_PanSios* = 0x00000EF8 + GDK_KEY_Hangul_J_KkogjiDalrinIeung* = 0x00000EF9 + GDK_KEY_Hangul_J_YeorinHieuh* = 0x00000EFA + GDK_KEY_Korean_Won* = 0x00000EFF + GDK_KEY_EcuSign* = 0x000020A0 + GDK_KEY_ColonSign* = 0x000020A1 + GDK_KEY_CruzeiroSign* = 0x000020A2 + GDK_KEY_FFrancSign* = 0x000020A3 + GDK_KEY_LiraSign* = 0x000020A4 + GDK_KEY_MillSign* = 0x000020A5 + GDK_KEY_NairaSign* = 0x000020A6 + GDK_KEY_PesetaSign* = 0x000020A7 + GDK_KEY_RupeeSign* = 0x000020A8 + GDK_KEY_WonSign* = 0x000020A9 + GDK_KEY_NewSheqelSign* = 0x000020AA + GDK_KEY_DongSign* = 0x000020AB + GDK_KEY_EuroSign* = 0x000020AC + +proc gdk_pango_context_get_for_screen*(screen: PGdkScreen): PPangoContext{. + cdecl, dynlib: gdklib, importc: "gdk_pango_context_get_for_screen".} +proc gdk_pango_context_set_colormap*(context: PPangoContext, + colormap: PGdkColormap){.cdecl, + dynlib: gdklib, importc: "gdk_pango_context_set_colormap".} +proc gdk_pango_layout_line_get_clip_region*(line: PPangoLayoutLine, + x_origin: gint, y_origin: gint, index_ranges: Pgint, n_ranges: gint): PGdkRegion{. + cdecl, dynlib: gdklib, importc: "gdk_pango_layout_line_get_clip_region".} +proc gdk_pango_layout_get_clip_region*(layout: PPangoLayout, x_origin: gint, + y_origin: gint, index_ranges: Pgint, + n_ranges: gint): PGdkRegion{.cdecl, + dynlib: gdklib, importc: "gdk_pango_layout_get_clip_region".} +proc gdk_pango_attr_stipple_new*(stipple: PGdkBitmap): PPangoAttribute{.cdecl, + dynlib: gdklib, importc: "gdk_pango_attr_stipple_new".} +proc gdk_pango_attr_embossed_new*(embossed: gboolean): PPangoAttribute{.cdecl, + dynlib: gdklib, importc: "gdk_pango_attr_embossed_new".} +proc gdk_pixbuf_render_threshold_alpha*(pixbuf: PGdkPixbuf, bitmap: PGdkBitmap, + src_x: int32, src_y: int32, + dest_x: int32, dest_y: int32, + width: int32, height: int32, + alpha_threshold: int32){.cdecl, + dynlib: gdklib, importc: "gdk_pixbuf_render_threshold_alpha".} +proc gdk_pixbuf_render_to_drawable*(pixbuf: PGdkPixbuf, drawable: PGdkDrawable, + gc: PGdkGC, src_x: int32, src_y: int32, + dest_x: int32, dest_y: int32, width: int32, + height: int32, dither: TGdkRgbDither, + x_dither: int32, y_dither: int32){.cdecl, + dynlib: gdklib, importc: "gdk_pixbuf_render_to_drawable".} +proc gdk_pixbuf_render_to_drawable_alpha*(pixbuf: PGdkPixbuf, + drawable: PGdkDrawable, src_x: int32, src_y: int32, dest_x: int32, + dest_y: int32, width: int32, height: int32, alpha_mode: TGdkPixbufAlphaMode, + alpha_threshold: int32, dither: TGdkRgbDither, x_dither: int32, + y_dither: int32){.cdecl, dynlib: gdklib, + importc: "gdk_pixbuf_render_to_drawable_alpha".} +proc gdk_pixbuf_render_pixmap_and_mask_for_colormap*(pixbuf: PGdkPixbuf, + colormap: PGdkColormap, n: var PGdkPixmap, nasdfdsafw4e: var PGdkBitmap, + alpha_threshold: int32){.cdecl, dynlib: gdklib, importc: "gdk_pixbuf_render_pixmap_and_mask_for_colormap".} +proc gdk_pixbuf_get_from_drawable*(dest: PGdkPixbuf, src: PGdkDrawable, + cmap: PGdkColormap, src_x: int32, + src_y: int32, dest_x: int32, dest_y: int32, + width: int32, height: int32): PGdkPixbuf{. + cdecl, dynlib: gdklib, importc: "gdk_pixbuf_get_from_drawable".} +proc gdk_pixbuf_get_from_image*(dest: PGdkPixbuf, src: PGdkImage, + cmap: PGdkColormap, src_x: int32, src_y: int32, + dest_x: int32, dest_y: int32, width: int32, + height: int32): PGdkPixbuf{.cdecl, + dynlib: gdklib, importc: "gdk_pixbuf_get_from_image".} +proc GDK_TYPE_PIXMAP*(): GType +proc GDK_PIXMAP*(anObject: Pointer): PGdkPixmap +proc GDK_PIXMAP_CLASS*(klass: Pointer): PGdkPixmapObjectClass +proc GDK_IS_PIXMAP*(anObject: Pointer): bool +proc GDK_IS_PIXMAP_CLASS*(klass: Pointer): bool +proc GDK_PIXMAP_GET_CLASS*(obj: Pointer): PGdkPixmapObjectClass +proc GDK_PIXMAP_OBJECT*(anObject: Pointer): PGdkPixmapObject +proc gdk_pixmap_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_pixmap_get_type".} +proc gdk_pixmap_new*(window: PGdkWindow, width: gint, height: gint, depth: gint): PGdkPixmap{. + cdecl, dynlib: gdklib, importc: "gdk_pixmap_new".} +proc gdk_bitmap_create_from_data*(window: PGdkWindow, data: cstring, width: gint, + height: gint): PGdkBitmap{.cdecl, + dynlib: gdklib, importc: "gdk_bitmap_create_from_data".} +proc gdk_pixmap_create_from_data*(window: PGdkWindow, data: cstring, width: gint, + height: gint, depth: gint, fg: PGdkColor, + bg: PGdkColor): PGdkPixmap{.cdecl, + dynlib: gdklib, importc: "gdk_pixmap_create_from_data".} +proc gdk_pixmap_create_from_xpm*(window: PGdkWindow, k: var PGdkBitmap, + transparent_color: PGdkColor, filename: cstring): PGdkPixmap{. + cdecl, dynlib: gdklib, importc: "gdk_pixmap_create_from_xpm".} +proc gdk_pixmap_colormap_create_from_xpm*(window: PGdkWindow, + colormap: PGdkColormap, k: var PGdkBitmap, transparent_color: PGdkColor, + filename: cstring): PGdkPixmap{.cdecl, dynlib: gdklib, importc: "gdk_pixmap_colormap_create_from_xpm".} +proc gdk_pixmap_create_from_xpm_d*(window: PGdkWindow, k: var PGdkBitmap, + transparent_color: PGdkColor, data: PPgchar): PGdkPixmap{. + cdecl, dynlib: gdklib, importc: "gdk_pixmap_create_from_xpm_d".} +proc gdk_pixmap_colormap_create_from_xpm_d*(window: PGdkWindow, + colormap: PGdkColormap, k: var PGdkBitmap, transparent_color: PGdkColor, + data: PPgchar): PGdkPixmap{.cdecl, dynlib: gdklib, importc: "gdk_pixmap_colormap_create_from_xpm_d".} +proc gdk_pixmap_foreign_new_for_display*(display: PGdkDisplay, + anid: TGdkNativeWindow): PGdkPixmap{.cdecl, dynlib: gdklib, + importc: "gdk_pixmap_foreign_new_for_display".} +proc gdk_pixmap_lookup_for_display*(display: PGdkDisplay, anid: TGdkNativeWindow): PGdkPixmap{. + cdecl, dynlib: gdklib, importc: "gdk_pixmap_lookup_for_display".} +proc gdk_atom_intern*(atom_name: cstring, only_if_exists: gboolean): TGdkAtom{. + cdecl, dynlib: gdklib, importc: "gdk_atom_intern".} +proc gdk_atom_name*(atom: TGdkAtom): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_atom_name".} +proc gdk_property_get*(window: PGdkWindow, `property`: TGdkAtom, + `type`: TGdkAtom, offset: gulong, length: gulong, + pdelete: gint, actual_property_type: PGdkAtom, + actual_format: Pgint, actual_length: Pgint, + data: PPguchar): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_property_get".} +proc gdk_property_change*(window: PGdkWindow, `property`: TGdkAtom, + `type`: TGdkAtom, format: gint, mode: TGdkPropMode, + data: Pguchar, nelements: gint){.cdecl, + dynlib: gdklib, importc: "gdk_property_change".} +proc gdk_property_delete*(window: PGdkWindow, `property`: TGdkAtom){.cdecl, + dynlib: gdklib, importc: "gdk_property_delete".} +proc gdk_text_property_to_text_list_for_display*(display: PGdkDisplay, + encoding: TGdkAtom, format: gint, text: Pguchar, length: gint, + t: var PPgchar): gint{.cdecl, dynlib: gdklib, importc: "gdk_text_property_to_text_list_for_display".} +proc gdk_text_property_to_utf8_list_for_display*(display: PGdkDisplay, + encoding: TGdkAtom, format: gint, text: Pguchar, length: gint, + t: var PPgchar): gint{.cdecl, dynlib: gdklib, importc: "gdk_text_property_to_utf8_list_for_display".} +proc gdk_utf8_to_string_target*(str: cstring): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_utf8_to_string_target".} +proc gdk_string_to_compound_text_for_display*(display: PGdkDisplay, str: cstring, + encoding: PGdkAtom, format: Pgint, ctext: PPguchar, length: Pgint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_string_to_compound_text_for_display".} +proc gdk_utf8_to_compound_text_for_display*(display: PGdkDisplay, str: cstring, + encoding: PGdkAtom, format: Pgint, ctext: PPguchar, length: Pgint): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_utf8_to_compound_text_for_display".} +proc gdk_free_text_list*(list: PPgchar){.cdecl, dynlib: gdklib, + importc: "gdk_free_text_list".} +proc gdk_free_compound_text*(ctext: Pguchar){.cdecl, dynlib: gdklib, + importc: "gdk_free_compound_text".} +proc gdk_region_new*(): PGdkRegion{.cdecl, dynlib: gdklib, + importc: "gdk_region_new".} +proc gdk_region_polygon*(points: PGdkPoint, npoints: gint, + fill_rule: TGdkFillRule): PGdkRegion{.cdecl, + dynlib: gdklib, importc: "gdk_region_polygon".} +proc gdk_region_copy*(region: PGdkRegion): PGdkRegion{.cdecl, dynlib: gdklib, + importc: "gdk_region_copy".} +proc gdk_region_rectangle*(rectangle: PGdkRectangle): PGdkRegion{.cdecl, + dynlib: gdklib, importc: "gdk_region_rectangle".} +proc gdk_region_destroy*(region: PGdkRegion){.cdecl, dynlib: gdklib, + importc: "gdk_region_destroy".} +proc gdk_region_get_clipbox*(region: PGdkRegion, rectangle: PGdkRectangle){. + cdecl, dynlib: gdklib, importc: "gdk_region_get_clipbox".} +proc gdk_region_get_rectangles*(region: PGdkRegion, s: var PGdkRectangle, + n_rectangles: Pgint){.cdecl, dynlib: gdklib, + importc: "gdk_region_get_rectangles".} +proc gdk_region_empty*(region: PGdkRegion): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_region_empty".} +proc gdk_region_equal*(region1: PGdkRegion, region2: PGdkRegion): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_region_equal".} +proc gdk_region_point_in*(region: PGdkRegion, x: int32, y: int32): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_region_point_in".} +proc gdk_region_rect_in*(region: PGdkRegion, rect: PGdkRectangle): TGdkOverlapType{. + cdecl, dynlib: gdklib, importc: "gdk_region_rect_in".} +proc gdk_region_offset*(region: PGdkRegion, dx: gint, dy: gint){.cdecl, + dynlib: gdklib, importc: "gdk_region_offset".} +proc gdk_region_shrink*(region: PGdkRegion, dx: gint, dy: gint){.cdecl, + dynlib: gdklib, importc: "gdk_region_shrink".} +proc gdk_region_union_with_rect*(region: PGdkRegion, rect: PGdkRectangle){. + cdecl, dynlib: gdklib, importc: "gdk_region_union_with_rect".} +proc gdk_region_intersect*(source1: PGdkRegion, source2: PGdkRegion){.cdecl, + dynlib: gdklib, importc: "gdk_region_intersect".} +proc gdk_region_union*(source1: PGdkRegion, source2: PGdkRegion){.cdecl, + dynlib: gdklib, importc: "gdk_region_union".} +proc gdk_region_subtract*(source1: PGdkRegion, source2: PGdkRegion){.cdecl, + dynlib: gdklib, importc: "gdk_region_subtract".} +proc gdk_region_xor*(source1: PGdkRegion, source2: PGdkRegion){.cdecl, + dynlib: gdklib, importc: "gdk_region_xor".} +proc gdk_region_spans_intersect_foreach*(region: PGdkRegion, spans: PGdkSpan, + n_spans: int32, sorted: gboolean, `function`: TGdkSpanFunc, data: gpointer){. + cdecl, dynlib: gdklib, importc: "gdk_region_spans_intersect_foreach".} +proc gdk_rgb_find_color*(colormap: PGdkColormap, color: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_rgb_find_color".} +proc gdk_draw_rgb_image*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, y: gint, + width: gint, height: gint, dith: TGdkRgbDither, + rgb_buf: Pguchar, rowstride: gint){.cdecl, + dynlib: gdklib, importc: "gdk_draw_rgb_image".} +proc gdk_draw_rgb_image_dithalign*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, + y: gint, width: gint, height: gint, + dith: TGdkRgbDither, rgb_buf: Pguchar, + rowstride: gint, xdith: gint, ydith: gint){. + cdecl, dynlib: gdklib, importc: "gdk_draw_rgb_image_dithalign".} +proc gdk_draw_rgb_32_image*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, + y: gint, width: gint, height: gint, + dith: TGdkRgbDither, buf: Pguchar, rowstride: gint){. + cdecl, dynlib: gdklib, importc: "gdk_draw_rgb_32_image".} +proc gdk_draw_rgb_32_image_dithalign*(drawable: PGdkDrawable, gc: PGdkGC, + x: gint, y: gint, width: gint, + height: gint, dith: TGdkRgbDither, + buf: Pguchar, rowstride: gint, + xdith: gint, ydith: gint){.cdecl, + dynlib: gdklib, importc: "gdk_draw_rgb_32_image_dithalign".} +proc gdk_draw_gray_image*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, y: gint, + width: gint, height: gint, dith: TGdkRgbDither, + buf: Pguchar, rowstride: gint){.cdecl, dynlib: gdklib, + importc: "gdk_draw_gray_image".} +proc gdk_draw_indexed_image*(drawable: PGdkDrawable, gc: PGdkGC, x: gint, + y: gint, width: gint, height: gint, + dith: TGdkRgbDither, buf: Pguchar, rowstride: gint, + cmap: PGdkRgbCmap){.cdecl, dynlib: gdklib, + importc: "gdk_draw_indexed_image".} +proc gdk_rgb_cmap_new*(colors: Pguint32, n_colors: gint): PGdkRgbCmap{.cdecl, + dynlib: gdklib, importc: "gdk_rgb_cmap_new".} +proc gdk_rgb_cmap_free*(cmap: PGdkRgbCmap){.cdecl, dynlib: gdklib, + importc: "gdk_rgb_cmap_free".} +proc gdk_rgb_set_verbose*(verbose: gboolean){.cdecl, dynlib: gdklib, + importc: "gdk_rgb_set_verbose".} +proc gdk_rgb_set_install*(install: gboolean){.cdecl, dynlib: gdklib, + importc: "gdk_rgb_set_install".} +proc gdk_rgb_set_min_colors*(min_colors: gint){.cdecl, dynlib: gdklib, + importc: "gdk_rgb_set_min_colors".} +proc GDK_TYPE_DISPLAY*(): GType +proc GDK_DISPLAY_OBJECT*(anObject: pointer): PGdkDisplay +proc GDK_DISPLAY_CLASS*(klass: pointer): PGdkDisplayClass +proc GDK_IS_DISPLAY*(anObject: pointer): bool +proc GDK_IS_DISPLAY_CLASS*(klass: pointer): bool +proc GDK_DISPLAY_GET_CLASS*(obj: pointer): PGdkDisplayClass +proc gdk_display_open*(display_name: cstring): PGdkDisplay{.cdecl, + dynlib: gdklib, importc: "gdk_display_open".} +proc gdk_display_get_name*(display: PGdkDisplay): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_display_get_name".} +proc gdk_display_get_n_screens*(display: PGdkDisplay): gint{.cdecl, + dynlib: gdklib, importc: "gdk_display_get_n_screens".} +proc gdk_display_get_screen*(display: PGdkDisplay, screen_num: gint): PGdkScreen{. + cdecl, dynlib: gdklib, importc: "gdk_display_get_screen".} +proc gdk_display_get_default_screen*(display: PGdkDisplay): PGdkScreen{.cdecl, + dynlib: gdklib, importc: "gdk_display_get_default_screen".} +proc gdk_display_pointer_ungrab*(display: PGdkDisplay, time: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_display_pointer_ungrab".} +proc gdk_display_keyboard_ungrab*(display: PGdkDisplay, time: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_display_keyboard_ungrab".} +proc gdk_display_pointer_is_grabbed*(display: PGdkDisplay): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_display_pointer_is_grabbed".} +proc gdk_display_beep*(display: PGdkDisplay){.cdecl, dynlib: gdklib, + importc: "gdk_display_beep".} +proc gdk_display_sync*(display: PGdkDisplay){.cdecl, dynlib: gdklib, + importc: "gdk_display_sync".} +proc gdk_display_close*(display: PGdkDisplay){.cdecl, dynlib: gdklib, + importc: "gdk_display_close".} +proc gdk_display_list_devices*(display: PGdkDisplay): PGList{.cdecl, + dynlib: gdklib, importc: "gdk_display_list_devices".} +proc gdk_display_get_event*(display: PGdkDisplay): PGdkEvent{.cdecl, + dynlib: gdklib, importc: "gdk_display_get_event".} +proc gdk_display_peek_event*(display: PGdkDisplay): PGdkEvent{.cdecl, + dynlib: gdklib, importc: "gdk_display_peek_event".} +proc gdk_display_put_event*(display: PGdkDisplay, event: PGdkEvent){.cdecl, + dynlib: gdklib, importc: "gdk_display_put_event".} +proc gdk_display_add_client_message_filter*(display: PGdkDisplay, + message_type: TGdkAtom, func: TGdkFilterFunc, data: gpointer){.cdecl, + dynlib: gdklib, importc: "gdk_display_add_client_message_filter".} +proc gdk_display_set_double_click_time*(display: PGdkDisplay, msec: guint){. + cdecl, dynlib: gdklib, importc: "gdk_display_set_double_click_time".} +proc gdk_display_set_sm_client_id*(display: PGdkDisplay, sm_client_id: cstring){. + cdecl, dynlib: gdklib, importc: "gdk_display_set_sm_client_id".} +proc gdk_set_default_display*(display: PGdkDisplay){.cdecl, dynlib: gdklib, + importc: "gdk_set_default_display".} +proc gdk_get_default_display*(): PGdkDisplay{.cdecl, dynlib: gdklib, + importc: "gdk_get_default_display".} +proc GDK_TYPE_SCREEN*(): GType +proc GDK_SCREEN*(anObject: Pointer): PGdkScreen +proc GDK_SCREEN_CLASS*(klass: Pointer): PGdkScreenClass +proc GDK_IS_SCREEN*(anObject: Pointer): bool +proc GDK_IS_SCREEN_CLASS*(klass: Pointer): bool +proc GDK_SCREEN_GET_CLASS*(obj: Pointer): PGdkScreenClass +proc gdk_screen_get_default_colormap*(screen: PGdkScreen): PGdkColormap{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_default_colormap".} +proc gdk_screen_set_default_colormap*(screen: PGdkScreen, colormap: PGdkColormap){. + cdecl, dynlib: gdklib, importc: "gdk_screen_set_default_colormap".} +proc gdk_screen_get_system_colormap*(screen: PGdkScreen): PGdkColormap{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_system_colormap".} +proc gdk_screen_get_system_visual*(screen: PGdkScreen): PGdkVisual{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_system_visual".} +proc gdk_screen_get_rgb_colormap*(screen: PGdkScreen): PGdkColormap{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_rgb_colormap".} +proc gdk_screen_get_rgb_visual*(screen: PGdkScreen): PGdkVisual{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_rgb_visual".} +proc gdk_screen_get_root_window*(screen: PGdkScreen): PGdkWindow{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_root_window".} +proc gdk_screen_get_display*(screen: PGdkScreen): PGdkDisplay{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_display".} +proc gdk_screen_get_number*(screen: PGdkScreen): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_get_number".} +proc gdk_screen_get_window_at_pointer*(screen: PGdkScreen, win_x: Pgint, + win_y: Pgint): PGdkWindow{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_window_at_pointer".} +proc gdk_screen_get_width*(screen: PGdkScreen): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_get_width".} +proc gdk_screen_get_height*(screen: PGdkScreen): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_get_height".} +proc gdk_screen_get_width_mm*(screen: PGdkScreen): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_get_width_mm".} +proc gdk_screen_get_height_mm*(screen: PGdkScreen): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_get_height_mm".} +proc gdk_screen_close*(screen: PGdkScreen){.cdecl, dynlib: gdklib, + importc: "gdk_screen_close".} +proc gdk_screen_list_visuals*(screen: PGdkScreen): PGList{.cdecl, + dynlib: gdklib, importc: "gdk_screen_list_visuals".} +proc gdk_screen_get_toplevel_windows*(screen: PGdkScreen): PGList{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_toplevel_windows".} +proc gdk_screen_get_n_monitors*(screen: PGdkScreen): gint{.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_n_monitors".} +proc gdk_screen_get_monitor_geometry*(screen: PGdkScreen, monitor_num: gint, + dest: PGdkRectangle){.cdecl, + dynlib: gdklib, importc: "gdk_screen_get_monitor_geometry".} +proc gdk_screen_get_monitor_at_point*(screen: PGdkScreen, x: gint, y: gint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_screen_get_monitor_at_point".} +proc gdk_screen_get_monitor_at_window*(screen: PGdkScreen, window: PGdkWindow): gint{. + cdecl, dynlib: gdklib, importc: "gdk_screen_get_monitor_at_window".} +proc gdk_screen_broadcast_client_message*(screen: PGdkScreen, event: PGdkEvent){. + cdecl, dynlib: gdklib, importc: "gdk_screen_broadcast_client_message".} +proc gdk_get_default_screen*(): PGdkScreen{.cdecl, dynlib: gdklib, + importc: "gdk_get_default_screen".} +proc gdk_screen_get_setting*(screen: PGdkScreen, name: cstring, value: PGValue): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_screen_get_setting".} +proc GDK_SELECTION_PRIMARY*(): TGdkAtom +proc GDK_SELECTION_SECONDARY*(): TGdkAtom +proc GDK_SELECTION_CLIPBOARD*(): TGdkAtom +proc GDK_TARGET_BITMAP*(): TGdkAtom +proc GDK_TARGET_COLORMAP*(): TGdkAtom +proc GDK_TARGET_DRAWABLE*(): TGdkAtom +proc GDK_TARGET_PIXMAP*(): TGdkAtom +proc GDK_TARGET_STRING*(): TGdkAtom +proc GDK_SELECTION_TYPE_ATOM*(): TGdkAtom +proc GDK_SELECTION_TYPE_BITMAP*(): TGdkAtom +proc GDK_SELECTION_TYPE_COLORMAP*(): TGdkAtom +proc GDK_SELECTION_TYPE_DRAWABLE*(): TGdkAtom +proc GDK_SELECTION_TYPE_INTEGER*(): TGdkAtom +proc GDK_SELECTION_TYPE_PIXMAP*(): TGdkAtom +proc GDK_SELECTION_TYPE_WINDOW*(): TGdkAtom +proc GDK_SELECTION_TYPE_STRING*(): TGdkAtom +proc gdk_selection_owner_set_for_display*(display: PGdkDisplay, + owner: PGdkWindow, selection: TGdkAtom, time: guint32, send_event: gboolean): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_selection_owner_set_for_display".} +proc gdk_selection_owner_get_for_display*(display: PGdkDisplay, + selection: TGdkAtom): PGdkWindow{.cdecl, dynlib: gdklib, importc: "gdk_selection_owner_get_for_display".} +proc gdk_selection_convert*(requestor: PGdkWindow, selection: TGdkAtom, + target: TGdkAtom, time: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_selection_convert".} +proc gdk_selection_property_get*(requestor: PGdkWindow, data: PPguchar, + prop_type: PGdkAtom, prop_format: Pgint): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_selection_property_get".} +proc gdk_selection_send_notify_for_display*(display: PGdkDisplay, + requestor: guint32, selection: TGdkAtom, target: TGdkAtom, + `property`: TGdkAtom, time: guint32){.cdecl, dynlib: gdklib, + importc: "gdk_selection_send_notify_for_display".} +const + GDK_CURRENT_TIME* = 0 + GDK_PARENT_RELATIVE* = 1 + GDK_OK* = 0 + GDK_ERROR* = - (1) + GDK_ERROR_PARAM* = - (2) + GDK_ERROR_FILE* = - (3) + GDK_ERROR_MEM* = - (4) + GDK_SHIFT_MASK* = 1 shl 0 + GDK_LOCK_MASK* = 1 shl 1 + GDK_CONTROL_MASK* = 1 shl 2 + GDK_MOD1_MASK* = 1 shl 3 + GDK_MOD2_MASK* = 1 shl 4 + GDK_MOD3_MASK* = 1 shl 5 + GDK_MOD4_MASK* = 1 shl 6 + GDK_MOD5_MASK* = 1 shl 7 + GDK_BUTTON1_MASK* = 1 shl 8 + GDK_BUTTON2_MASK* = 1 shl 9 + GDK_BUTTON3_MASK* = 1 shl 10 + GDK_BUTTON4_MASK* = 1 shl 11 + GDK_BUTTON5_MASK* = 1 shl 12 + GDK_RELEASE_MASK* = 1 shl 30 + GDK_MODIFIER_MASK* = ord(GDK_RELEASE_MASK) or 0x00001FFF + GDK_INPUT_READ* = 1 shl 0 + GDK_INPUT_WRITE* = 1 shl 1 + GDK_INPUT_EXCEPTION* = 1 shl 2 + GDK_GRAB_SUCCESS* = 0 + GDK_GRAB_ALREADY_GRABBED* = 1 + GDK_GRAB_INVALID_TIME* = 2 + GDK_GRAB_NOT_VIEWABLE* = 3 + GDK_GRAB_FROZEN* = 4 + +proc GDK_ATOM_TO_POINTER*(atom: TGdkAtom): Pointer +proc GDK_POINTER_TO_ATOM*(p: Pointer): TGdkAtom +proc `GDK_MAKE_ATOM`*(val: guint): TGdkAtom +proc GDK_NONE*(): TGdkAtom +proc GDK_TYPE_VISUAL*(): GType +proc GDK_VISUAL*(anObject: Pointer): PGdkVisual +proc GDK_VISUAL_CLASS*(klass: Pointer): PGdkVisualClass +proc GDK_IS_VISUAL*(anObject: Pointer): bool +proc GDK_IS_VISUAL_CLASS*(klass: Pointer): bool +proc GDK_VISUAL_GET_CLASS*(obj: Pointer): PGdkVisualClass +proc gdk_visual_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_visual_get_type".} +const + GDK_WA_TITLE* = 1 shl 1 + GDK_WA_X* = 1 shl 2 + GDK_WA_Y* = 1 shl 3 + GDK_WA_CURSOR* = 1 shl 4 + GDK_WA_COLORMAP* = 1 shl 5 + GDK_WA_VISUAL* = 1 shl 6 + GDK_WA_WMCLASS* = 1 shl 7 + GDK_WA_NOREDIR* = 1 shl 8 + GDK_HINT_POS* = 1 shl 0 + GDK_HINT_MIN_SIZE* = 1 shl 1 + GDK_HINT_MAX_SIZE* = 1 shl 2 + GDK_HINT_BASE_SIZE* = 1 shl 3 + GDK_HINT_ASPECT* = 1 shl 4 + GDK_HINT_RESIZE_INC* = 1 shl 5 + GDK_HINT_WIN_GRAVITY* = 1 shl 6 + GDK_HINT_USER_POS* = 1 shl 7 + GDK_HINT_USER_SIZE* = 1 shl 8 + GDK_DECOR_ALL* = 1 shl 0 + GDK_DECOR_BORDER* = 1 shl 1 + GDK_DECOR_RESIZEH* = 1 shl 2 + GDK_DECOR_TITLE* = 1 shl 3 + GDK_DECOR_MENU* = 1 shl 4 + GDK_DECOR_MINIMIZE* = 1 shl 5 + GDK_DECOR_MAXIMIZE* = 1 shl 6 + GDK_FUNC_ALL* = 1 shl 0 + GDK_FUNC_RESIZE* = 1 shl 1 + GDK_FUNC_MOVE* = 1 shl 2 + GDK_FUNC_MINIMIZE* = 1 shl 3 + GDK_FUNC_MAXIMIZE* = 1 shl 4 + GDK_FUNC_CLOSE* = 1 shl 5 + GDK_GRAVITY_NORTH_WEST* = 1 + GDK_GRAVITY_NORTH* = 2 + GDK_GRAVITY_NORTH_EAST* = 3 + GDK_GRAVITY_WEST* = 4 + GDK_GRAVITY_CENTER* = 5 + GDK_GRAVITY_EAST* = 6 + GDK_GRAVITY_SOUTH_WEST* = 7 + GDK_GRAVITY_SOUTH* = 8 + GDK_GRAVITY_SOUTH_EAST* = 9 + GDK_GRAVITY_STATIC* = 10 + +proc GDK_TYPE_WINDOW*(): GType +proc GDK_WINDOW*(anObject: Pointer): PGdkWindow +proc GDK_WINDOW_CLASS*(klass: Pointer): PGdkWindowObjectClass +proc GDK_IS_WINDOW*(anObject: Pointer): bool +proc GDK_IS_WINDOW_CLASS*(klass: Pointer): bool +proc GDK_WINDOW_GET_CLASS*(obj: Pointer): PGdkWindowObjectClass +proc GDK_WINDOW_OBJECT*(anObject: Pointer): PGdkWindowObject +const + bm_TGdkWindowObject_guffaw_gravity* = 0x00000001 + bp_TGdkWindowObject_guffaw_gravity* = 0 + bm_TGdkWindowObject_input_only* = 0x00000002 + bp_TGdkWindowObject_input_only* = 1 + bm_TGdkWindowObject_modal_hint* = 0x00000004 + bp_TGdkWindowObject_modal_hint* = 2 + bm_TGdkWindowObject_destroyed* = 0x00000018 + bp_TGdkWindowObject_destroyed* = 3 + +proc GdkWindowObject_guffaw_gravity*(a: var TGdkWindowObject): guint +proc GdkWindowObject_set_guffaw_gravity*(a: var TGdkWindowObject, + `guffaw_gravity`: guint) +proc GdkWindowObject_input_only*(a: var TGdkWindowObject): guint +proc GdkWindowObject_set_input_only*(a: var TGdkWindowObject, + `input_only`: guint) +proc GdkWindowObject_modal_hint*(a: var TGdkWindowObject): guint +proc GdkWindowObject_set_modal_hint*(a: var TGdkWindowObject, + `modal_hint`: guint) +proc GdkWindowObject_destroyed*(a: var TGdkWindowObject): guint +proc GdkWindowObject_set_destroyed*(a: var TGdkWindowObject, `destroyed`: guint) +proc gdk_window_object_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_window_object_get_type".} +proc gdk_window_new*(parent: PGdkWindow, attributes: PGdkWindowAttr, + attributes_mask: gint): PGdkWindow{.cdecl, dynlib: gdklib, + importc: "gdk_window_new".} +proc gdk_window_destroy*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_destroy".} +proc gdk_window_get_window_type*(window: PGdkWindow): TGdkWindowType{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_window_type".} +proc gdk_window_at_pointer*(win_x: Pgint, win_y: Pgint): PGdkWindow{.cdecl, + dynlib: gdklib, importc: "gdk_window_at_pointer".} +proc gdk_window_show*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_show".} +proc gdk_window_hide*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_hide".} +proc gdk_window_withdraw*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_withdraw".} +proc gdk_window_show_unraised*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_show_unraised".} +proc gdk_window_move*(window: PGdkWindow, x: gint, y: gint){.cdecl, + dynlib: gdklib, importc: "gdk_window_move".} +proc gdk_window_resize*(window: PGdkWindow, width: gint, height: gint){.cdecl, + dynlib: gdklib, importc: "gdk_window_resize".} +proc gdk_window_move_resize*(window: PGdkWindow, x: gint, y: gint, width: gint, + height: gint){.cdecl, dynlib: gdklib, + importc: "gdk_window_move_resize".} +proc gdk_window_reparent*(window: PGdkWindow, new_parent: PGdkWindow, x: gint, + y: gint){.cdecl, dynlib: gdklib, + importc: "gdk_window_reparent".} +proc gdk_window_clear*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_clear".} +proc gdk_window_clear_area*(window: PGdkWindow, x: gint, y: gint, width: gint, + height: gint){.cdecl, dynlib: gdklib, + importc: "gdk_window_clear_area".} +proc gdk_window_clear_area_e*(window: PGdkWindow, x: gint, y: gint, width: gint, + height: gint){.cdecl, dynlib: gdklib, + importc: "gdk_window_clear_area_e".} +proc gdk_window_raise*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_raise".} +proc gdk_window_lower*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_lower".} +proc gdk_window_focus*(window: PGdkWindow, timestamp: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_window_focus".} +proc gdk_window_set_user_data*(window: PGdkWindow, user_data: gpointer){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_user_data".} +proc gdk_window_set_override_redirect*(window: PGdkWindow, + override_redirect: gboolean){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_override_redirect".} +proc gdk_window_add_filter*(window: PGdkWindow, `function`: TGdkFilterFunc, + data: gpointer){.cdecl, dynlib: gdklib, + importc: "gdk_window_add_filter".} +proc gdk_window_remove_filter*(window: PGdkWindow, `function`: TGdkFilterFunc, + data: gpointer){.cdecl, dynlib: gdklib, + importc: "gdk_window_remove_filter".} +proc gdk_window_scroll*(window: PGdkWindow, dx: gint, dy: gint){.cdecl, + dynlib: gdklib, importc: "gdk_window_scroll".} +proc gdk_window_shape_combine_mask*(window: PGdkWindow, mask: PGdkBitmap, + x: gint, y: gint){.cdecl, dynlib: gdklib, + importc: "gdk_window_shape_combine_mask".} +proc gdk_window_shape_combine_region*(window: PGdkWindow, + shape_region: PGdkRegion, offset_x: gint, + offset_y: gint){.cdecl, dynlib: gdklib, + importc: "gdk_window_shape_combine_region".} +proc gdk_window_set_child_shapes*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_set_child_shapes".} +proc gdk_window_merge_child_shapes*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_merge_child_shapes".} +proc gdk_window_is_visible*(window: PGdkWindow): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_window_is_visible".} +proc gdk_window_is_viewable*(window: PGdkWindow): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_window_is_viewable".} +proc gdk_window_get_state*(window: PGdkWindow): TGdkWindowState{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_state".} +proc gdk_window_set_static_gravities*(window: PGdkWindow, use_static: gboolean): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_window_set_static_gravities".} +proc gdk_window_foreign_new_for_display*(display: PGdkDisplay, + anid: TGdkNativeWindow): PGdkWindow{.cdecl, dynlib: gdklib, + importc: "gdk_window_foreign_new_for_display".} +proc gdk_window_lookup_for_display*(display: PGdkDisplay, anid: TGdkNativeWindow): PGdkWindow{. + cdecl, dynlib: gdklib, importc: "gdk_window_lookup_for_display".} +proc gdk_window_set_type_hint*(window: PGdkWindow, hint: TGdkWindowTypeHint){. + cdecl, dynlib: gdklib, importc: "gdk_window_set_type_hint".} +proc gdk_window_set_modal_hint*(window: PGdkWindow, modal: gboolean){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_modal_hint".} +proc gdk_window_set_geometry_hints*(window: PGdkWindow, geometry: PGdkGeometry, + geom_mask: TGdkWindowHints){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_geometry_hints".} +proc gdk_set_sm_client_id*(sm_client_id: cstring){.cdecl, dynlib: gdklib, + importc: "gdk_set_sm_client_id".} +proc gdk_window_begin_paint_rect*(window: PGdkWindow, rectangle: PGdkRectangle){. + cdecl, dynlib: gdklib, importc: "gdk_window_begin_paint_rect".} +proc gdk_window_begin_paint_region*(window: PGdkWindow, region: PGdkRegion){. + cdecl, dynlib: gdklib, importc: "gdk_window_begin_paint_region".} +proc gdk_window_end_paint*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_end_paint".} +proc gdk_window_set_title*(window: PGdkWindow, title: cstring){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_title".} +proc gdk_window_set_role*(window: PGdkWindow, role: cstring){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_role".} +proc gdk_window_set_transient_for*(window: PGdkWindow, parent: PGdkWindow){. + cdecl, dynlib: gdklib, importc: "gdk_window_set_transient_for".} +proc gdk_window_set_background*(window: PGdkWindow, color: PGdkColor){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_background".} +proc gdk_window_set_back_pixmap*(window: PGdkWindow, pixmap: PGdkPixmap, + parent_relative: gboolean){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_back_pixmap".} +proc gdk_window_set_cursor*(window: PGdkWindow, cursor: PGdkCursor){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_cursor".} +proc gdk_window_get_user_data*(window: PGdkWindow, data: gpointer){.cdecl, + dynlib: gdklib, importc: "gdk_window_get_user_data".} +proc gdk_window_get_geometry*(window: PGdkWindow, x: Pgint, y: Pgint, + width: Pgint, height: Pgint, depth: Pgint){.cdecl, + dynlib: gdklib, importc: "gdk_window_get_geometry".} +proc gdk_window_get_position*(window: PGdkWindow, x: Pgint, y: Pgint){.cdecl, + dynlib: gdklib, importc: "gdk_window_get_position".} +proc gdk_window_get_origin*(window: PGdkWindow, x: Pgint, y: Pgint): gint{. + cdecl, dynlib: gdklib, importc: "gdk_window_get_origin".} +proc gdk_window_get_root_origin*(window: PGdkWindow, x: Pgint, y: Pgint){.cdecl, + dynlib: gdklib, importc: "gdk_window_get_root_origin".} +proc gdk_window_get_frame_extents*(window: PGdkWindow, rect: PGdkRectangle){. + cdecl, dynlib: gdklib, importc: "gdk_window_get_frame_extents".} +proc gdk_window_get_pointer*(window: PGdkWindow, x: Pgint, y: Pgint, + mask: PGdkModifierType): PGdkWindow{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_pointer".} +proc gdk_window_get_parent*(window: PGdkWindow): PGdkWindow{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_parent".} +proc gdk_window_get_toplevel*(window: PGdkWindow): PGdkWindow{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_toplevel".} +proc gdk_window_get_children*(window: PGdkWindow): PGList{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_children".} +proc gdk_window_peek_children*(window: PGdkWindow): PGList{.cdecl, + dynlib: gdklib, importc: "gdk_window_peek_children".} +proc gdk_window_get_events*(window: PGdkWindow): TGdkEventMask{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_events".} +proc gdk_window_set_events*(window: PGdkWindow, event_mask: TGdkEventMask){. + cdecl, dynlib: gdklib, importc: "gdk_window_set_events".} +proc gdk_window_set_icon_list*(window: PGdkWindow, pixbufs: PGList){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_icon_list".} +proc gdk_window_set_icon*(window: PGdkWindow, icon_window: PGdkWindow, + pixmap: PGdkPixmap, mask: PGdkBitmap){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_icon".} +proc gdk_window_set_icon_name*(window: PGdkWindow, name: cstring){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_icon_name".} +proc gdk_window_set_group*(window: PGdkWindow, leader: PGdkWindow){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_group".} +proc gdk_window_set_decorations*(window: PGdkWindow, + decorations: TGdkWMDecoration){.cdecl, + dynlib: gdklib, importc: "gdk_window_set_decorations".} +proc gdk_window_get_decorations*(window: PGdkWindow, + decorations: PGdkWMDecoration): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_window_get_decorations".} +proc gdk_window_set_functions*(window: PGdkWindow, functions: TGdkWMFunction){. + cdecl, dynlib: gdklib, importc: "gdk_window_set_functions".} +proc gdk_window_iconify*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_iconify".} +proc gdk_window_deiconify*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_deiconify".} +proc gdk_window_stick*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_stick".} +proc gdk_window_unstick*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_unstick".} +proc gdk_window_maximize*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_maximize".} +proc gdk_window_unmaximize*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_unmaximize".} +proc gdk_window_register_dnd*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_register_dnd".} +proc gdk_window_begin_resize_drag*(window: PGdkWindow, edge: TGdkWindowEdge, + button: gint, root_x: gint, root_y: gint, + timestamp: guint32){.cdecl, dynlib: gdklib, + importc: "gdk_window_begin_resize_drag".} +proc gdk_window_begin_move_drag*(window: PGdkWindow, button: gint, root_x: gint, + root_y: gint, timestamp: guint32){.cdecl, + dynlib: gdklib, importc: "gdk_window_begin_move_drag".} +proc gdk_window_invalidate_rect*(window: PGdkWindow, rect: PGdkRectangle, + invalidate_children: gboolean){.cdecl, + dynlib: gdklib, importc: "gdk_window_invalidate_rect".} +proc gdk_window_invalidate_region*(window: PGdkWindow, region: PGdkRegion, + invalidate_children: gboolean){.cdecl, + dynlib: gdklib, importc: "gdk_window_invalidate_region".} +proc gdk_window_invalidate_maybe_recurse*(window: PGdkWindow, + region: PGdkRegion, + child_func: gdk_window_invalidate_maybe_recurse_child_func, + user_data: gpointer){.cdecl, dynlib: gdklib, + importc: "gdk_window_invalidate_maybe_recurse".} +proc gdk_window_get_update_area*(window: PGdkWindow): PGdkRegion{.cdecl, + dynlib: gdklib, importc: "gdk_window_get_update_area".} +proc gdk_window_freeze_updates*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_freeze_updates".} +proc gdk_window_thaw_updates*(window: PGdkWindow){.cdecl, dynlib: gdklib, + importc: "gdk_window_thaw_updates".} +proc gdk_window_process_all_updates*(){.cdecl, dynlib: gdklib, importc: "gdk_window_process_all_updates".} +proc gdk_window_process_updates*(window: PGdkWindow, update_children: gboolean){. + cdecl, dynlib: gdklib, importc: "gdk_window_process_updates".} +proc gdk_window_set_debug_updates*(setting: gboolean){.cdecl, dynlib: gdklib, + importc: "gdk_window_set_debug_updates".} +proc gdk_window_constrain_size*(geometry: PGdkGeometry, flags: guint, + width: gint, height: gint, new_width: Pgint, + new_height: Pgint){.cdecl, dynlib: gdklib, + importc: "gdk_window_constrain_size".} +proc gdk_window_get_internal_paint_info*(window: PGdkWindow, + e: var PGdkDrawable, x_offset: Pgint, y_offset: Pgint){.cdecl, + dynlib: gdklib, importc: "gdk_window_get_internal_paint_info".} +proc gdk_set_pointer_hooks*(new_hooks: PGdkPointerHooks): PGdkPointerHooks{. + cdecl, dynlib: gdklib, importc: "gdk_set_pointer_hooks".} +proc gdk_get_default_root_window*(): PGdkWindow{.cdecl, dynlib: gdklib, + importc: "gdk_get_default_root_window".} +proc gdk_parse_args*(argc: Pgint, v: var PPgchar){.cdecl, dynlib: gdklib, + importc: "gdk_parse_args".} +proc gdk_init*(argc: Pgint, v: var PPgchar){.cdecl, dynlib: gdklib, + importc: "gdk_init".} +proc gdk_init_check*(argc: Pgint, v: var PPgchar): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_init_check".} +when not defined(GDK_DISABLE_DEPRECATED): + proc gdk_exit(error_code: gint){.cdecl, dynlib: gdklib, importc: "gdk_exit".} +proc gdk_set_locale*(): cstring{.cdecl, dynlib: gdklib, importc: "gdk_set_locale".} +proc gdk_get_program_class*(): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_get_program_class".} +proc gdk_set_program_class*(program_class: cstring){.cdecl, dynlib: gdklib, + importc: "gdk_set_program_class".} +proc gdk_error_trap_push*(){.cdecl, dynlib: gdklib, + importc: "gdk_error_trap_push".} +proc gdk_error_trap_pop*(): gint{.cdecl, dynlib: gdklib, + importc: "gdk_error_trap_pop".} +when not defined(GDK_DISABLE_DEPRECATED): + proc gdk_set_use_xshm(use_xshm: gboolean){.cdecl, dynlib: gdklib, + importc: "gdk_set_use_xshm".} + proc gdk_get_use_xshm(): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_get_use_xshm".} +proc gdk_get_display*(): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_get_display".} +proc gdk_get_display_arg_name*(): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_get_display_arg_name".} +when not defined(GDK_DISABLE_DEPRECATED): + proc gdk_input_add_full(source: gint, condition: TGdkInputCondition, + `function`: TGdkInputFunction, data: gpointer, + destroy: TGdkDestroyNotify): gint{.cdecl, + dynlib: gdklib, importc: "gdk_input_add_full".} + proc gdk_input_add(source: gint, condition: TGdkInputCondition, + `function`: TGdkInputFunction, data: gpointer): gint{. + cdecl, dynlib: gdklib, importc: "gdk_input_add".} + proc gdk_input_remove(tag: gint){.cdecl, dynlib: gdklib, + importc: "gdk_input_remove".} +proc gdk_pointer_grab*(window: PGdkWindow, owner_events: gboolean, + event_mask: TGdkEventMask, confine_to: PGdkWindow, + cursor: PGdkCursor, time: guint32): TGdkGrabStatus{. + cdecl, dynlib: gdklib, importc: "gdk_pointer_grab".} +proc gdk_keyboard_grab*(window: PGdkWindow, owner_events: gboolean, + time: guint32): TGdkGrabStatus{.cdecl, dynlib: gdklib, + importc: "gdk_keyboard_grab".} +when not defined(GDK_MULTIHEAD_SAFE): + proc gdk_pointer_ungrab(time: guint32){.cdecl, dynlib: gdklib, + importc: "gdk_pointer_ungrab".} + proc gdk_keyboard_ungrab(time: guint32){.cdecl, dynlib: gdklib, + importc: "gdk_keyboard_ungrab".} + proc gdk_pointer_is_grabbed(): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_pointer_is_grabbed".} + proc gdk_screen_width(): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_width".} + proc gdk_screen_height(): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_height".} + proc gdk_screen_width_mm(): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_width_mm".} + proc gdk_screen_height_mm(): gint{.cdecl, dynlib: gdklib, + importc: "gdk_screen_height_mm".} + proc gdk_beep(){.cdecl, dynlib: gdklib, importc: "gdk_beep".} +proc gdk_flush*(){.cdecl, dynlib: gdklib, importc: "gdk_flush".} +when not defined(GDK_MULTIHEAD_SAFE): + proc gdk_set_double_click_time(msec: guint){.cdecl, dynlib: gdklib, + importc: "gdk_set_double_click_time".} +proc gdk_rectangle_intersect*(src1: PGdkRectangle, src2: PGdkRectangle, + dest: PGdkRectangle): gboolean{.cdecl, + dynlib: gdklib, importc: "gdk_rectangle_intersect".} +proc gdk_rectangle_union*(src1: PGdkRectangle, src2: PGdkRectangle, + dest: PGdkRectangle){.cdecl, dynlib: gdklib, + importc: "gdk_rectangle_union".} +proc gdk_rectangle_get_type*(): GType{.cdecl, dynlib: gdklib, + importc: "gdk_rectangle_get_type".} +proc GDK_TYPE_RECTANGLE*(): GType +proc gdk_wcstombs*(src: PGdkWChar): cstring{.cdecl, dynlib: gdklib, + importc: "gdk_wcstombs".} +proc gdk_mbstowcs*(dest: PGdkWChar, src: cstring, dest_max: gint): gint{.cdecl, + dynlib: gdklib, importc: "gdk_mbstowcs".} +when not defined(GDK_MULTIHEAD_SAFE): + proc gdk_event_send_client_message(event: PGdkEvent, xid: guint32): gboolean{. + cdecl, dynlib: gdklib, importc: "gdk_event_send_client_message".} + proc gdk_event_send_clientmessage_toall(event: PGdkEvent){.cdecl, + dynlib: gdklib, importc: "gdk_event_send_clientmessage_toall".} +proc gdk_event_send_client_message_for_display*(display: PGdkDisplay, + event: PGdkEvent, xid: guint32): gboolean{.cdecl, dynlib: gdklib, + importc: "gdk_event_send_client_message_for_display".} +proc gdk_threads_enter*(){.cdecl, dynlib: gdklib, importc: "gdk_threads_enter".} +proc gdk_threads_leave*(){.cdecl, dynlib: gdklib, importc: "gdk_threads_leave".} +proc gdk_threads_init*(){.cdecl, dynlib: gdklib, importc: "gdk_threads_init".} + +proc GDK_TYPE_RECTANGLE*(): GType = + result = gdk_rectangle_get_type() + +proc GDK_TYPE_COLORMAP*(): GType = + result = gdk_colormap_get_type() + +proc GDK_COLORMAP*(anObject: pointer): PGdkColormap = + result = cast[PGdkColormap](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_COLORMAP())) + +proc GDK_COLORMAP_CLASS*(klass: pointer): PGdkColormapClass = + result = cast[PGdkColormapClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_COLORMAP())) + +proc GDK_IS_COLORMAP*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_COLORMAP()) + +proc GDK_IS_COLORMAP_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_COLORMAP()) + +proc GDK_COLORMAP_GET_CLASS*(obj: pointer): PGdkColormapClass = + result = cast[PGdkColormapClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_COLORMAP())) + +proc GDK_TYPE_COLOR*(): GType = + result = gdk_color_get_type() + +proc gdk_cursor_destroy*(cursor: PGdkCursor) = + gdk_cursor_unref(cursor) + +proc GDK_TYPE_CURSOR*(): GType = + result = gdk_cursor_get_type() + +proc GDK_TYPE_DRAG_CONTEXT*(): GType = + result = gdk_drag_context_get_type() + +proc GDK_DRAG_CONTEXT*(anObject: Pointer): PGdkDragContext = + result = cast[PGdkDragContext](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GDK_TYPE_DRAG_CONTEXT())) + +proc GDK_DRAG_CONTEXT_CLASS*(klass: Pointer): PGdkDragContextClass = + result = cast[PGdkDragContextClass](G_TYPE_CHECK_CLASS_CAST(klass, + GDK_TYPE_DRAG_CONTEXT())) + +proc GDK_IS_DRAG_CONTEXT*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_DRAG_CONTEXT()) + +proc GDK_IS_DRAG_CONTEXT_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_DRAG_CONTEXT()) + +proc GDK_DRAG_CONTEXT_GET_CLASS*(obj: Pointer): PGdkDragContextClass = + result = cast[PGdkDragContextClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GDK_TYPE_DRAG_CONTEXT())) + +proc gdkregion_EXTENTCHECK*(r1, r2: PGdkRegionBox): bool = + result = (int(r1.x2) > r2.x1) and (int(r1.x1) < r2.x2) and + (int(r1.y2) > r2.y1) and (int(r1.y1) < r2.y2) + +proc gdkregion_EXTENTS*(r: PGdkRegionBox, idRect: PGdkRegion) = + if (int(r.x1) < idRect.extents.x1): + idRect.extents.x1 = r.x1 + if int(r.y1) < idRect.extents.y1: + idRect.extents.y1 = r.y1 + if int(r.x2) > idRect.extents.x2: + idRect.extents.x2 = r.x2 + +proc gdkregion_MEMCHECK*(reg: PGdkRegion, ARect, firstrect: var PGdkRegionBox): bool = + nil + +proc gdkregion_CHECK_PREVIOUS*(Reg: PGdkRegion, R: PGdkRegionBox, + Rx1, Ry1, Rx2, Ry2: gint): bool = + nil + +proc gdkregion_ADDRECT*(reg: PGdkRegion, r: PGdkRegionBox, + rx1, ry1, rx2, ry2: gint) = + if ((int(rx1) < rx2) and (int(ry1) < ry2) and + gdkregion_CHECK_PREVIOUS(reg, r, rx1, ry1, rx2, ry2)): + r.x1 = rx1 + r.y1 = ry1 + r.x2 = rx2 + r.y2 = ry2 + +proc gdkregion_ADDRECTNOX*(reg: PGdkRegion, r: PGdkRegionBox, + rx1, ry1, rx2, ry2: gint) = + if ((int(rx1) < rx2) and (int(ry1) < ry2) and + gdkregion_CHECK_PREVIOUS(reg, r, rx1, ry1, rx2, ry2)): + r.x1 = rx1 + r.y1 = ry1 + r.x2 = rx2 + r.y2 = ry2 + inc(reg . numRects) + +proc gdkregion_EMPTY_REGION*(pReg: PGdkRegion): bool = + result = pReg.numRects == 0 + +proc gdkregion_REGION_NOT_EMPTY*(pReg: PGdkRegion): bool = + result = pReg.numRects != 0 + +proc gdkregion_INBOX*(r: TGdkRegionBox, x, y: gint): bool = + result = (((int(r.x2) > x) and (int(r.x1) <= x)) and + (int(r.y2) > y)) and (int(r.y1) <= y) + +proc GDK_TYPE_DRAWABLE*(): GType = + result = gdk_drawable_get_type() + +proc GDK_DRAWABLE*(anObject: Pointer): PGdkDrawable = + result = cast[PGdkDrawable](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_DRAWABLE())) + +proc GDK_DRAWABLE_CLASS*(klass: Pointer): PGdkDrawableClass = + result = cast[PGdkDrawableClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_DRAWABLE())) + +proc GDK_IS_DRAWABLE*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_DRAWABLE()) + +proc GDK_IS_DRAWABLE_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_DRAWABLE()) + +proc GDK_DRAWABLE_GET_CLASS*(obj: Pointer): PGdkDrawableClass = + result = cast[PGdkDrawableClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_DRAWABLE())) + +proc gdk_draw_pixmap*(drawable: PGdkDrawable, gc: PGdkGC, src: PGdkDrawable, + xsrc: gint, ysrc: gint, xdest: gint, ydest: gint, + width: gint, height: gint) = + gdk_draw_drawable(drawable, gc, src, xsrc, ysrc, xdest, ydest, width, height) + +proc gdk_draw_bitmap*(drawable: PGdkDrawable, gc: PGdkGC, src: PGdkDrawable, + xsrc: gint, ysrc: gint, xdest: gint, ydest: gint, + width: gint, height: gint) = + gdk_draw_drawable(drawable, gc, src, xsrc, ysrc, xdest, ydest, width, height) + +proc GDK_TYPE_EVENT*(): GType = + result = gdk_event_get_type() + +proc GDK_TYPE_FONT*(): GType = + result = gdk_font_get_type() + +proc GDK_TYPE_GC*(): GType = + result = gdk_gc_get_type() + +proc GDK_GC*(anObject: Pointer): PGdkGC = + result = cast[PGdkGC](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_GC())) + +proc GDK_GC_CLASS*(klass: Pointer): PGdkGCClass = + result = cast[PGdkGCClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_GC())) + +proc GDK_IS_GC*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_GC()) + +proc GDK_IS_GC_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_GC()) + +proc GDK_GC_GET_CLASS*(obj: Pointer): PGdkGCClass = + result = cast[PGdkGCClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_GC())) + +proc gdk_gc_destroy*(gc: PGdkGC) = + g_object_unref(G_OBJECT(gc)) + +proc GDK_TYPE_IMAGE*(): GType = + result = gdk_image_get_type() + +proc GDK_IMAGE*(anObject: Pointer): PGdkImage = + result = cast[PGdkImage](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_IMAGE())) + +proc GDK_IMAGE_CLASS*(klass: Pointer): PGdkImageClass = + result = cast[PGdkImageClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_IMAGE())) + +proc GDK_IS_IMAGE*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_IMAGE()) + +proc GDK_IS_IMAGE_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_IMAGE()) + +proc GDK_IMAGE_GET_CLASS*(obj: Pointer): PGdkImageClass = + result = cast[PGdkImageClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_IMAGE())) + +proc gdk_image_destroy*(image: PGdkImage) = + g_object_unref(G_OBJECT(image)) + +proc GDK_TYPE_DEVICE*(): GType = + result = gdk_device_get_type() + +proc GDK_DEVICE*(anObject: Pointer): PGdkDevice = + result = cast[PGdkDevice](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_DEVICE())) + +proc GDK_DEVICE_CLASS*(klass: Pointer): PGdkDeviceClass = + result = cast[PGdkDeviceClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_DEVICE())) + +proc GDK_IS_DEVICE*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_DEVICE()) + +proc GDK_IS_DEVICE_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_DEVICE()) + +proc GDK_DEVICE_GET_CLASS*(obj: Pointer): PGdkDeviceClass = + result = cast[PGdkDeviceClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_DEVICE())) + +proc GDK_TYPE_KEYMAP*(): GType = + result = gdk_keymap_get_type() + +proc GDK_KEYMAP*(anObject: Pointer): PGdkKeymap = + result = cast[PGdkKeymap](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_KEYMAP())) + +proc GDK_KEYMAP_CLASS*(klass: Pointer): PGdkKeymapClass = + result = cast[PGdkKeymapClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_KEYMAP())) + +proc GDK_IS_KEYMAP*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_KEYMAP()) + +proc GDK_IS_KEYMAP_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_KEYMAP()) + +proc GDK_KEYMAP_GET_CLASS*(obj: Pointer): PGdkKeymapClass = + result = cast[PGdkKeymapClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_KEYMAP())) + +proc GDK_TYPE_PIXMAP*(): GType = + result = gdk_pixmap_get_type() + +proc GDK_PIXMAP*(anObject: Pointer): PGdkPixmap = + result = cast[PGdkPixmap](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_PIXMAP())) + +proc GDK_PIXMAP_CLASS*(klass: Pointer): PGdkPixmapObjectClass = + result = cast[PGdkPixmapObjectClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_PIXMAP())) + +proc GDK_IS_PIXMAP*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_PIXMAP()) + +proc GDK_IS_PIXMAP_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_PIXMAP()) + +proc GDK_PIXMAP_GET_CLASS*(obj: Pointer): PGdkPixmapObjectClass = + result = cast[PGdkPixmapObjectClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_PIXMAP())) + +proc GDK_PIXMAP_OBJECT*(anObject: Pointer): PGdkPixmapObject = + result = cast[PGdkPixmapObject](GDK_PIXMAP(anObject)) + +proc gdk_bitmap_ref*(drawable: PGdkDrawable): PGdkDrawable = + result = GDK_DRAWABLE(g_object_ref(G_OBJECT(drawable))) + +proc gdk_bitmap_unref*(drawable: PGdkDrawable) = + g_object_unref(G_OBJECT(drawable)) + +proc gdk_pixmap_ref*(drawable: PGdkDrawable): PGdkDrawable = + result = GDK_DRAWABLE(g_object_ref(G_OBJECT(drawable))) + +proc gdk_pixmap_unref*(drawable: PGdkDrawable) = + g_object_unref(G_OBJECT(drawable)) + +proc gdk_rgb_get_cmap*(): PGdkColormap = + result = nil #gdk_rgb_get_colormap() + +proc GDK_TYPE_DISPLAY*(): GType = + nil + #result = nil + +proc GDK_DISPLAY_OBJECT*(anObject: pointer): PGdkDisplay = + result = cast[PGdkDisplay](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_DISPLAY())) + +proc GDK_DISPLAY_CLASS*(klass: pointer): PGdkDisplayClass = + result = cast[PGdkDisplayClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_DISPLAY())) + +proc GDK_IS_DISPLAY*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_DISPLAY()) + +proc GDK_IS_DISPLAY_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_DISPLAY()) + +proc GDK_DISPLAY_GET_CLASS*(obj: pointer): PGdkDisplayClass = + result = cast[PGdkDisplayClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_DISPLAY())) + +proc GDK_TYPE_SCREEN*(): GType = + nil + +proc GDK_SCREEN*(anObject: Pointer): PGdkScreen = + result = cast[PGdkScreen](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_SCREEN())) + +proc GDK_SCREEN_CLASS*(klass: Pointer): PGdkScreenClass = + result = cast[PGdkScreenClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_SCREEN())) + +proc GDK_IS_SCREEN*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_SCREEN()) + +proc GDK_IS_SCREEN_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_SCREEN()) + +proc GDK_SCREEN_GET_CLASS*(obj: Pointer): PGdkScreenClass = + result = cast[PGdkScreenClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_SCREEN())) + +proc GDK_SELECTION_PRIMARY*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(1) + +proc GDK_SELECTION_SECONDARY*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(2) + +proc GDK_SELECTION_CLIPBOARD*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(69) + +proc GDK_TARGET_BITMAP*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(5) + +proc GDK_TARGET_COLORMAP*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(7) + +proc GDK_TARGET_DRAWABLE*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(17) + +proc GDK_TARGET_PIXMAP*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(20) + +proc GDK_TARGET_STRING*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(31) + +proc GDK_SELECTION_TYPE_ATOM*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(4) + +proc GDK_SELECTION_TYPE_BITMAP*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(5) + +proc GDK_SELECTION_TYPE_COLORMAP*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(7) + +proc GDK_SELECTION_TYPE_DRAWABLE*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(17) + +proc GDK_SELECTION_TYPE_INTEGER*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(19) + +proc GDK_SELECTION_TYPE_PIXMAP*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(20) + +proc GDK_SELECTION_TYPE_WINDOW*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(33) + +proc GDK_SELECTION_TYPE_STRING*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(31) + +proc GDK_ATOM_TO_POINTER*(atom: TGdkAtom): pointer = + result = cast[Pointer](atom) + +proc GDK_POINTER_TO_ATOM*(p: Pointer): TGdkAtom = + result = cast[TGdkAtom](p) + +proc `GDK_MAKE_ATOM`*(val: guint): TGdkAtom = + result = cast[TGdkAtom](val) + +proc GDK_NONE*(): TGdkAtom = + result = `GDK_MAKE_ATOM`(0) + +proc GDK_TYPE_VISUAL*(): GType = + result = gdk_visual_get_type() + +proc GDK_VISUAL*(anObject: Pointer): PGdkVisual = + result = cast[PGdkVisual](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_VISUAL())) + +proc GDK_VISUAL_CLASS*(klass: Pointer): PGdkVisualClass = + result = cast[PGdkVisualClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_VISUAL())) + +proc GDK_IS_VISUAL*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_VISUAL()) + +proc GDK_IS_VISUAL_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_VISUAL()) + +proc GDK_VISUAL_GET_CLASS*(obj: Pointer): PGdkVisualClass = + result = cast[PGdkVisualClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_VISUAL())) + +proc gdk_visual_ref*(v: PGdkVisual) = + discard g_object_ref(v) + +proc gdk_visual_unref*(v: PGdkVisual) = + g_object_unref(v) + +proc GDK_TYPE_WINDOW*(): GType = + result = gdk_window_object_get_type() + +proc GDK_WINDOW*(anObject: Pointer): PGdkWindow = + result = cast[PGdkWindow](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_WINDOW())) + +proc GDK_WINDOW_CLASS*(klass: Pointer): PGdkWindowObjectClass = + result = cast[PGdkWindowObjectClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_WINDOW())) + +proc GDK_IS_WINDOW*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_WINDOW()) + +proc GDK_IS_WINDOW_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_WINDOW()) + +proc GDK_WINDOW_GET_CLASS*(obj: Pointer): PGdkWindowObjectClass = + result = cast[PGdkWindowObjectClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_WINDOW())) + +proc GDK_WINDOW_OBJECT*(anObject: Pointer): PGdkWindowObject = + result = cast[PGdkWindowObject](GDK_WINDOW(anObject)) + +proc GdkWindowObject_guffaw_gravity*(a: var TGdkWindowObject): guint = + result = (a.flag0 and bm_TGdkWindowObject_guffaw_gravity) shr + bp_TGdkWindowObject_guffaw_gravity + +proc GdkWindowObject_set_guffaw_gravity*(a: var TGdkWindowObject, + `guffaw_gravity`: guint) = + a.flag0 = a.flag0 or + ((`guffaw_gravity` shl bp_TGdkWindowObject_guffaw_gravity) and + bm_TGdkWindowObject_guffaw_gravity) + +proc GdkWindowObject_input_only*(a: var TGdkWindowObject): guint = + result = (a.flag0 and bm_TGdkWindowObject_input_only) shr + bp_TGdkWindowObject_input_only + +proc GdkWindowObject_set_input_only*(a: var TGdkWindowObject, + `input_only`: guint) = + a.flag0 = a.flag0 or + ((`input_only` shl bp_TGdkWindowObject_input_only) and + bm_TGdkWindowObject_input_only) + +proc GdkWindowObject_modal_hint*(a: var TGdkWindowObject): guint = + result = (a.flag0 and bm_TGdkWindowObject_modal_hint) shr + bp_TGdkWindowObject_modal_hint + +proc GdkWindowObject_set_modal_hint*(a: var TGdkWindowObject, + `modal_hint`: guint) = + a.flag0 = a.flag0 or + ((`modal_hint` shl bp_TGdkWindowObject_modal_hint) and + bm_TGdkWindowObject_modal_hint) + +proc GdkWindowObject_destroyed*(a: var TGdkWindowObject): guint = + result = (a.flag0 and bm_TGdkWindowObject_destroyed) shr + bp_TGdkWindowObject_destroyed + +proc GdkWindowObject_set_destroyed*(a: var TGdkWindowObject, `destroyed`: guint) = + a.flag0 = a.flag0 or + ((`destroyed` shl bp_TGdkWindowObject_destroyed) and + bm_TGdkWindowObject_destroyed) + +proc GDK_ROOT_PARENT*(): PGdkWindow = + result = gdk_get_default_root_window() + +proc gdk_window_get_size*(drawable: PGdkDrawable, width: Pgint, height: Pgint) = + gdk_drawable_get_size(drawable, width, height) + +proc gdk_window_get_type*(window: PGdkWindow): TGdkWindowType = + result = gdk_window_get_window_type(window) + +proc gdk_window_get_colormap*(drawable: PGdkDrawable): PGdkColormap = + result = gdk_drawable_get_colormap(drawable) + +proc gdk_window_set_colormap*(drawable: PGdkDrawable, colormap: PGdkColormap) = + gdk_drawable_set_colormap(drawable, colormap) + +proc gdk_window_get_visual*(drawable: PGdkDrawable): PGdkVisual = + result = gdk_drawable_get_visual(drawable) + +proc gdk_window_ref*(drawable: PGdkDrawable): PGdkDrawable = + result = GDK_DRAWABLE(g_object_ref(G_OBJECT(drawable))) + +proc gdk_window_unref*(drawable: PGdkDrawable) = + g_object_unref(G_OBJECT(drawable)) + +proc gdk_window_copy_area*(drawable: PGdkDrawable, gc: PGdkGC, x, y: gint, + source_drawable: PGdkDrawable, + source_x, source_y: gint, width, height: gint) = + gdk_draw_pixmap(drawable, gc, source_drawable, source_x, source_y, x, y, + width, height) diff --git a/lib/base/gtk/gdk2pixbuf.nim b/lib/base/gtk/gdk2pixbuf.nim new file mode 100755 index 000000000..1dcc020d1 --- /dev/null +++ b/lib/base/gtk/gdk2pixbuf.nim @@ -0,0 +1,279 @@ +import + glib2 + +when defined(win32): + {.define: gdkpixbufwin.} + const + gdkpixbuflib = "libgdk_pixbuf-2.0-0.dll" +elif defined(darwin): + const + gdkpixbuflib = "gdk_pixbuf-2.0.0" + # linklib gtk-x11-2.0 + # linklib gdk-x11-2.0 + # linklib pango-1.0.0 + # linklib glib-2.0.0 + # linklib gobject-2.0.0 + # linklib gdk_pixbuf-2.0.0 + # linklib atk-1.0.0 +else: + const + gdkpixbuflib = "libgdk_pixbuf-2.0.so" +{.define: HasGTK2_4.} +{.define: HasGTK2_6.} +type + PGdkPixbuf* = pointer + PGdkPixbufAnimation* = pointer + PGdkPixbufAnimationIter* = pointer + PGdkPixbufAlphaMode* = ptr TGdkPixbufAlphaMode + TGdkPixbufAlphaMode* = enum + GDK_PIXBUF_ALPHA_BILEVEL, GDK_PIXBUF_ALPHA_FULL + PGdkColorspace* = ptr TGdkColorspace + TGdkColorspace* = enum + GDK_COLORSPACE_RGB + TGdkPixbufDestroyNotify* = proc (pixels: Pguchar, data: gpointer){.cdecl.} + PGdkPixbufError* = ptr TGdkPixbufError + TGdkPixbufError* = enum + GDK_PIXBUF_ERROR_CORRUPT_IMAGE, GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY, + GDK_PIXBUF_ERROR_BAD_OPTION, GDK_PIXBUF_ERROR_UNKNOWN_TYPE, + GDK_PIXBUF_ERROR_UNSUPPORTED_OPERATION, GDK_PIXBUF_ERROR_FAILED + PGdkInterpType* = ptr TGdkInterpType + TGdkInterpType* = enum + GDK_INTERP_NEAREST, GDK_INTERP_TILES, GDK_INTERP_BILINEAR, GDK_INTERP_HYPER + +proc GDK_TYPE_PIXBUF*(): GType +proc GDK_PIXBUF*(anObject: pointer): PGdkPixbuf +proc GDK_IS_PIXBUF*(anObject: pointer): bool +proc GDK_TYPE_PIXBUF_ANIMATION*(): GType +proc GDK_PIXBUF_ANIMATION*(anObject: pointer): PGdkPixbufAnimation +proc GDK_IS_PIXBUF_ANIMATION*(anObject: pointer): bool +proc GDK_TYPE_PIXBUF_ANIMATION_ITER*(): GType +proc GDK_PIXBUF_ANIMATION_ITER*(anObject: pointer): PGdkPixbufAnimationIter +proc GDK_IS_PIXBUF_ANIMATION_ITER*(anObject: pointer): bool +proc GDK_PIXBUF_ERROR*(): TGQuark +proc gdk_pixbuf_error_quark*(): TGQuark{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_error_quark".} +proc gdk_pixbuf_get_type*(): GType{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_get_type".} +when not defined(GDK_PIXBUF_DISABLE_DEPRECATED): + proc gdk_pixbuf_ref(pixbuf: PGdkPixbuf): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_ref".} + proc gdk_pixbuf_unref(pixbuf: PGdkPixbuf){.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_unref".} +proc gdk_pixbuf_get_colorspace*(pixbuf: PGdkPixbuf): TGdkColorspace{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_colorspace".} +proc gdk_pixbuf_get_n_channels*(pixbuf: PGdkPixbuf): int32{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_n_channels".} +proc gdk_pixbuf_get_has_alpha*(pixbuf: PGdkPixbuf): gboolean{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_has_alpha".} +proc gdk_pixbuf_get_bits_per_sample*(pixbuf: PGdkPixbuf): int32{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_bits_per_sample".} +proc gdk_pixbuf_get_pixels*(pixbuf: PGdkPixbuf): Pguchar{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_pixels".} +proc gdk_pixbuf_get_width*(pixbuf: PGdkPixbuf): int32{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_width".} +proc gdk_pixbuf_get_height*(pixbuf: PGdkPixbuf): int32{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_height".} +proc gdk_pixbuf_get_rowstride*(pixbuf: PGdkPixbuf): int32{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_rowstride".} +proc gdk_pixbuf_new*(colorspace: TGdkColorspace, has_alpha: gboolean, + bits_per_sample: int32, width: int32, height: int32): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new".} +proc gdk_pixbuf_copy*(pixbuf: PGdkPixbuf): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_copy".} +proc gdk_pixbuf_new_subpixbuf*(src_pixbuf: PGdkPixbuf, src_x: int32, + src_y: int32, width: int32, height: int32): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_subpixbuf".} +proc gdk_pixbuf_new_from_file*(filename: cstring, error: pointer): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_from_file".} +proc gdk_pixbuf_new_from_data*(data: Pguchar, colorspace: TGdkColorspace, + has_alpha: gboolean, bits_per_sample: int32, + width: int32, height: int32, rowstride: int32, + destroy_fn: TGdkPixbufDestroyNotify, + destroy_fn_data: gpointer): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_from_data".} +proc gdk_pixbuf_new_from_xpm_data*(data: PPchar): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_from_xpm_data".} +proc gdk_pixbuf_new_from_inline*(data_length: gint, a: var guint8, + copy_pixels: gboolean, error: pointer): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_from_inline".} +when defined(HasGTK2_4): + proc gdk_pixbuf_new_from_file_at_size(filename: cstring, width, height: gint, + error: pointer): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_from_file_at_size".} +when defined(HasGTK2_6): + proc gdk_pixbuf_new_from_file_at_scale(filename: cstring, width, height: gint, + preserve_aspect_ratio: gboolean, error: pointer): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_new_from_file_at_scale".} +proc gdk_pixbuf_fill*(pixbuf: PGdkPixbuf, pixel: guint32){.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_fill".} +proc gdk_pixbuf_save*(pixbuf: PGdkPixbuf, filename: cstring, `type`: cstring, + error: pointer): gboolean{.cdecl, varargs, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_save".} +proc gdk_pixbuf_savev*(pixbuf: PGdkPixbuf, filename: cstring, `type`: cstring, + option_keys: PPchar, option_values: PPchar, + error: pointer): gboolean{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_savev".} +proc gdk_pixbuf_add_alpha*(pixbuf: PGdkPixbuf, substitute_color: gboolean, + r: guchar, g: guchar, b: guchar): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_add_alpha".} +proc gdk_pixbuf_copy_area*(src_pixbuf: PGdkPixbuf, src_x: int32, src_y: int32, + width: int32, height: int32, dest_pixbuf: PGdkPixbuf, + dest_x: int32, dest_y: int32){.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_copy_area".} +proc gdk_pixbuf_saturate_and_pixelate*(src: PGdkPixbuf, dest: PGdkPixbuf, + saturation: gfloat, pixelate: gboolean){. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_saturate_and_pixelate".} +proc gdk_pixbuf_scale*(src: PGdkPixbuf, dest: PGdkPixbuf, dest_x: int32, + dest_y: int32, dest_width: int32, dest_height: int32, + offset_x: float64, offset_y: float64, scale_x: float64, + scale_y: float64, interp_type: TGdkInterpType){.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_scale".} +proc gdk_pixbuf_composite*(src: PGdkPixbuf, dest: PGdkPixbuf, dest_x: int32, + dest_y: int32, dest_width: int32, dest_height: int32, + offset_x: float64, offset_y: float64, + scale_x: float64, scale_y: float64, + interp_type: TGdkInterpType, overall_alpha: int32){. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_composite".} +proc gdk_pixbuf_composite_color*(src: PGdkPixbuf, dest: PGdkPixbuf, + dest_x: int32, dest_y: int32, + dest_width: int32, dest_height: int32, + offset_x: float64, offset_y: float64, + scale_x: float64, scale_y: float64, + interp_type: TGdkInterpType, + overall_alpha: int32, check_x: int32, + check_y: int32, check_size: int32, + color1: guint32, color2: guint32){.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_composite_color".} +proc gdk_pixbuf_scale_simple*(src: PGdkPixbuf, dest_width: int32, + dest_height: int32, interp_type: TGdkInterpType): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_scale_simple".} +proc gdk_pixbuf_composite_color_simple*(src: PGdkPixbuf, dest_width: int32, + dest_height: int32, + interp_type: TGdkInterpType, + overall_alpha: int32, check_size: int32, + color1: guint32, color2: guint32): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_composite_color_simple".} +proc gdk_pixbuf_animation_get_type*(): GType{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_animation_get_type".} +proc gdk_pixbuf_animation_new_from_file*(filename: cstring, error: pointer): PGdkPixbufAnimation{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_new_from_file".} +when not defined(GDK_PIXBUF_DISABLE_DEPRECATED): + proc gdk_pixbuf_animation_ref(animation: PGdkPixbufAnimation): PGdkPixbufAnimation{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_ref".} + proc gdk_pixbuf_animation_unref(animation: PGdkPixbufAnimation){.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_unref".} +proc gdk_pixbuf_animation_get_width*(animation: PGdkPixbufAnimation): int32{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_get_width".} +proc gdk_pixbuf_animation_get_height*(animation: PGdkPixbufAnimation): int32{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_get_height".} +proc gdk_pixbuf_animation_is_static_image*(animation: PGdkPixbufAnimation): gboolean{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_is_static_image".} +proc gdk_pixbuf_animation_get_static_image*(animation: PGdkPixbufAnimation): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_animation_get_static_image".} +proc gdk_pixbuf_animation_get_iter*(animation: PGdkPixbufAnimation, + e: var TGTimeVal): PGdkPixbufAnimationIter{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_get_iter".} +proc gdk_pixbuf_animation_iter_get_type*(): GType{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_animation_iter_get_type".} +proc gdk_pixbuf_animation_iter_get_delay_time*(iter: PGdkPixbufAnimationIter): int32{. + cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_animation_iter_get_delay_time".} +proc gdk_pixbuf_animation_iter_get_pixbuf*(iter: PGdkPixbufAnimationIter): PGdkPixbuf{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_iter_get_pixbuf".} +proc gdk_pixbuf_animation_iter_on_currently_loading_frame*( + iter: PGdkPixbufAnimationIter): gboolean{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_animation_iter_on_currently_loading_frame".} +proc gdk_pixbuf_animation_iter_advance*(iter: PGdkPixbufAnimationIter, + e: var TGTimeVal): gboolean{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_animation_iter_advance".} +proc gdk_pixbuf_get_option*(pixbuf: PGdkPixbuf, key: cstring): cstring{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_get_option".} +type + PGdkPixbufLoader* = ptr TGdkPixbufLoader + TGdkPixbufLoader* = record + parent_instance*: TGObject + priv*: gpointer + + PGdkPixbufLoaderClass* = ptr TGdkPixbufLoaderClass + TGdkPixbufLoaderClass* = record + parent_class*: TGObjectClass + area_prepared*: proc (loader: PGdkPixbufLoader){.cdecl.} + area_updated*: proc (loader: PGdkPixbufLoader, x: int32, y: int32, + width: int32, height: int32){.cdecl.} + closed*: proc (loader: PGdkPixbufLoader){.cdecl.} + + +proc GDK_TYPE_PIXBUF_LOADER*(): GType +proc GDK_PIXBUF_LOADER*(obj: pointer): PGdkPixbufLoader +proc GDK_PIXBUF_LOADER_CLASS*(klass: pointer): PGdkPixbufLoaderClass +proc GDK_IS_PIXBUF_LOADER*(obj: pointer): bool +proc GDK_IS_PIXBUF_LOADER_CLASS*(klass: pointer): bool +proc GDK_PIXBUF_LOADER_GET_CLASS*(obj: pointer): PGdkPixbufLoaderClass +proc gdk_pixbuf_loader_get_type*(): GType{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_loader_get_type".} +proc gdk_pixbuf_loader_new*(): PGdkPixbufLoader{.cdecl, dynlib: gdkpixbuflib, + importc: "gdk_pixbuf_loader_new".} +proc gdk_pixbuf_loader_new_with_type*(image_type: cstring, error: pointer): PGdkPixbufLoader{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_loader_new_with_type".} +proc gdk_pixbuf_loader_write*(loader: PGdkPixbufLoader, buf: Pguchar, + count: gsize, error: pointer): gboolean{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_loader_write".} +proc gdk_pixbuf_loader_get_pixbuf*(loader: PGdkPixbufLoader): PGdkPixbuf{.cdecl, + dynlib: gdkpixbuflib, importc: "gdk_pixbuf_loader_get_pixbuf".} +proc gdk_pixbuf_loader_get_animation*(loader: PGdkPixbufLoader): PGdkPixbufAnimation{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_loader_get_animation".} +proc gdk_pixbuf_loader_close*(loader: PGdkPixbufLoader, error: pointer): gboolean{. + cdecl, dynlib: gdkpixbuflib, importc: "gdk_pixbuf_loader_close".} +proc GDK_TYPE_PIXBUF_LOADER*(): GType = + result = gdk_pixbuf_loader_get_type() + +proc GDK_PIXBUF_LOADER*(obj: pointer): PGdkPixbufLoader = + result = cast[PGdkPixbufLoader](G_TYPE_CHECK_INSTANCE_CAST(obj, + GDK_TYPE_PIXBUF_LOADER())) + +proc GDK_PIXBUF_LOADER_CLASS*(klass: pointer): PGdkPixbufLoaderClass = + result = cast[PGdkPixbufLoaderClass](G_TYPE_CHECK_CLASS_CAST(klass, + GDK_TYPE_PIXBUF_LOADER())) + +proc GDK_IS_PIXBUF_LOADER*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GDK_TYPE_PIXBUF_LOADER()) + +proc GDK_IS_PIXBUF_LOADER_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_PIXBUF_LOADER()) + +proc GDK_PIXBUF_LOADER_GET_CLASS*(obj: pointer): PGdkPixbufLoaderClass = + result = cast[PGdkPixbufLoaderClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GDK_TYPE_PIXBUF_LOADER())) + +proc GDK_TYPE_PIXBUF*(): GType = + result = gdk_pixbuf_get_type() + +proc GDK_PIXBUF*(anObject: pointer): PGdkPixbuf = + result = cast[PGdkPixbuf](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_PIXBUF())) + +proc GDK_IS_PIXBUF*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_PIXBUF()) + +proc GDK_TYPE_PIXBUF_ANIMATION*(): GType = + result = gdk_pixbuf_animation_get_type() + +proc GDK_PIXBUF_ANIMATION*(anObject: pointer): PGdkPixbufAnimation = + result = cast[PGdkPixbufAnimation](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GDK_TYPE_PIXBUF_ANIMATION())) + +proc GDK_IS_PIXBUF_ANIMATION*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_PIXBUF_ANIMATION()) + +proc GDK_TYPE_PIXBUF_ANIMATION_ITER*(): GType = + result = gdk_pixbuf_animation_iter_get_type() + +proc GDK_PIXBUF_ANIMATION_ITER*(anObject: pointer): PGdkPixbufAnimationIter = + result = cast[PGdkPixbufAnimationIter](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GDK_TYPE_PIXBUF_ANIMATION_ITER())) + +proc GDK_IS_PIXBUF_ANIMATION_ITER*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_PIXBUF_ANIMATION_ITER()) + +proc GDK_PIXBUF_ERROR*(): TGQuark = + result = gdk_pixbuf_error_quark() diff --git a/lib/base/gtk/gdkglext.nim b/lib/base/gtk/gdkglext.nim new file mode 100755 index 000000000..d5e6b128e --- /dev/null +++ b/lib/base/gtk/gdkglext.nim @@ -0,0 +1,562 @@ +import + Glib2, Gdk2 + +when defined(WIN32): + const + GdkGLExtLib = "libgdkglext-win32-1.0-0.dll" +else: + const + GdkGLExtLib = "libgdkglext-x11-1.0.so" +type + TGdkGLConfigAttrib* = int32 + TGdkGLConfigCaveat* = int32 + TGdkGLVisualType* = int32 + TGdkGLTransparentType* = int32 + TGdkGLDrawableTypeMask* = int32 + TGdkGLRenderTypeMask* = int32 + TGdkGLBufferMask* = int32 + TGdkGLConfigError* = int32 + TGdkGLRenderType* = int32 + TGdkGLDrawableAttrib* = int32 + TGdkGLPbufferAttrib* = int32 + TGdkGLEventMask* = int32 + TGdkGLEventType* = int32 + TGdkGLDrawableType* = int32 + TGdkGLProc* = Pointer + PGdkGLConfig* = ptr TGdkGLConfig + PGdkGLContext* = ptr TGdkGLContext + PGdkGLDrawable* = ptr TGdkGLDrawable + PGdkGLPixmap* = ptr TGdkGLPixmap + PGdkGLWindow* = ptr TGdkGLWindow + TGdkGLConfig* = object of TGObject + layer_plane*: gint + n_aux_buffers*: gint + n_sample_buffers*: gint + flag0*: int16 + + PGdkGLConfigClass* = ptr TGdkGLConfigClass + TGdkGLConfigClass* = object of TGObjectClass + + TGdkGLContext* = object of TGObject + + PGdkGLContextClass* = ptr TGdkGLContextClass + TGdkGLContextClass* = object of TGObjectClass + + TGdkGLDrawable* = object of TGObject + + PGdkGLDrawableClass* = ptr TGdkGLDrawableClass + TGdkGLDrawableClass* = object of TGTypeInterface + create_new_context*: proc (gldrawable: PGdkGLDrawable, + share_list: PGdkGLContext, direct: gboolean, + render_type: int32): PGdkGLContext{.cdecl.} + make_context_current*: proc (draw: PGdkGLDrawable, a_read: PGdkGLDrawable, + glcontext: PGdkGLContext): gboolean{.cdecl.} + is_double_buffered*: proc (gldrawable: PGdkGLDrawable): gboolean{.cdecl.} + swap_buffers*: proc (gldrawable: PGdkGLDrawable){.cdecl.} + wait_gl*: proc (gldrawable: PGdkGLDrawable){.cdecl.} + wait_gdk*: proc (gldrawable: PGdkGLDrawable){.cdecl.} + gl_begin*: proc (draw: PGdkGLDrawable, a_read: PGdkGLDrawable, + glcontext: PGdkGLContext): gboolean{.cdecl.} + gl_end*: proc (gldrawable: PGdkGLDrawable){.cdecl.} + get_gl_config*: proc (gldrawable: PGdkGLDrawable): PGdkGLConfig{.cdecl.} + get_size*: proc (gldrawable: PGdkGLDrawable, width, height: PGInt){.cdecl.} + + TGdkGLPixmap* = object of TGObject + drawable*: PGdkDrawable + + PGdkGLPixmapClass* = ptr TGdkGLPixmapClass + TGdkGLPixmapClass* = object of TGObjectClass + + TGdkGLWindow* = object of TGObject + drawable*: PGdkDrawable + + PGdkGLWindowClass* = ptr TGdkGLWindowClass + TGdkGLWindowClass* = object of TGObjectClass + + +const + HEADER_GDKGLEXT_MAJOR_VERSION* = 1 + HEADER_GDKGLEXT_MINOR_VERSION* = 0 + HEADER_GDKGLEXT_MICRO_VERSION* = 6 + HEADER_GDKGLEXT_INTERFACE_AGE* = 4 + HEADER_GDKGLEXT_BINARY_AGE* = 6 + +proc HEADER_GDKGLEXT_CHECK_VERSION*(major, minor, micro: guint): bool +var + gdkglext_major_version*{.importc, dynlib: GdkGLExtLib.}: guint + gdkglext_minor_version*{.importc, dynlib: GdkGLExtLib.}: guint + gdkglext_micro_version*{.importc, dynlib: GdkGLExtLib.}: guint + gdkglext_interface_age*{.importc, dynlib: GdkGLExtLib.}: guint + gdkglext_binary_age*{.importc, dynlib: GdkGLExtLib.}: guint + +const + GDK_GL_SUCCESS* = 0 + GDK_GL_ATTRIB_LIST_NONE* = 0 + GDK_GL_USE_GL* = 1 + GDK_GL_BUFFER_SIZE* = 2 + GDK_GL_LEVEL* = 3 + GDK_GL_RGBA* = 4 + GDK_GL_DOUBLEBUFFER* = 5 + GDK_GL_STEREO* = 6 + GDK_GL_AUX_BUFFERS* = 7 + GDK_GL_RED_SIZE* = 8 + GDK_GL_GREEN_SIZE* = 9 + GDK_GL_BLUE_SIZE* = 10 + GDK_GL_ALPHA_SIZE* = 11 + GDK_GL_DEPTH_SIZE* = 12 + GDK_GL_STENCIL_SIZE* = 13 + GDK_GL_ACCUM_RED_SIZE* = 14 + GDK_GL_ACCUM_GREEN_SIZE* = 15 + GDK_GL_ACCUM_BLUE_SIZE* = 16 + GDK_GL_ACCUM_ALPHA_SIZE* = 17 + GDK_GL_CONFIG_CAVEAT* = 0x00000020 + GDK_GL_X_VISUAL_TYPE* = 0x00000022 + GDK_GL_TRANSPARENT_TYPE* = 0x00000023 + GDK_GL_TRANSPARENT_INDEX_VALUE* = 0x00000024 + GDK_GL_TRANSPARENT_RED_VALUE* = 0x00000025 + GDK_GL_TRANSPARENT_GREEN_VALUE* = 0x00000026 + GDK_GL_TRANSPARENT_BLUE_VALUE* = 0x00000027 + GDK_GL_TRANSPARENT_ALPHA_VALUE* = 0x00000028 + GDK_GL_DRAWABLE_TYPE* = 0x00008010 + GDK_GL_RENDER_TYPE* = 0x00008011 + GDK_GL_X_RENDERABLE* = 0x00008012 + GDK_GL_FBCONFIG_ID* = 0x00008013 + GDK_GL_MAX_PBUFFER_WIDTH* = 0x00008016 + GDK_GL_MAX_PBUFFER_HEIGHT* = 0x00008017 + GDK_GL_MAX_PBUFFER_PIXELS* = 0x00008018 + GDK_GL_VISUAL_ID* = 0x0000800B + GDK_GL_SCREEN* = 0x0000800C + GDK_GL_SAMPLE_BUFFERS* = 100000 + GDK_GL_SAMPLES* = 100001 + GDK_GL_DONT_CARE* = 0xFFFFFFFF + GDK_GL_NONE* = 0x00008000 + GDK_GL_CONFIG_CAVEAT_DONT_CARE* = 0xFFFFFFFF + GDK_GL_CONFIG_CAVEAT_NONE* = 0x00008000 + GDK_GL_SLOW_CONFIG* = 0x00008001 + GDK_GL_NON_CONFORMANT_CONFIG* = 0x0000800D + GDK_GL_VISUAL_TYPE_DONT_CARE* = 0xFFFFFFFF + GDK_GL_TRUE_COLOR* = 0x00008002 + GDK_GL_DIRECT_COLOR* = 0x00008003 + GDK_GL_PSEUDO_COLOR* = 0x00008004 + GDK_GL_STATIC_COLOR* = 0x00008005 + GDK_GL_GRAY_SCALE* = 0x00008006 + GDK_GL_STATIC_GRAY* = 0x00008007 + GDK_GL_TRANSPARENT_NONE* = 0x00008000 + GDK_GL_TRANSPARENT_RGB* = 0x00008008 + GDK_GL_TRANSPARENT_INDEX* = 0x00008009 + GDK_GL_WINDOW_BIT* = 1 shl 0 + GDK_GL_PIXMAP_BIT* = 1 shl 1 + GDK_GL_PBUFFER_BIT* = 1 shl 2 + GDK_GL_RGBA_BIT* = 1 shl 0 + GDK_GL_COLOR_INDEX_BIT* = 1 shl 1 + GDK_GL_FRONT_LEFT_BUFFER_BIT* = 1 shl 0 + GDK_GL_FRONT_RIGHT_BUFFER_BIT* = 1 shl 1 + GDK_GL_BACK_LEFT_BUFFER_BIT* = 1 shl 2 + GDK_GL_BACK_RIGHT_BUFFER_BIT* = 1 shl 3 + GDK_GL_AUX_BUFFERS_BIT* = 1 shl 4 + GDK_GL_DEPTH_BUFFER_BIT* = 1 shl 5 + GDK_GL_STENCIL_BUFFER_BIT* = 1 shl 6 + GDK_GL_ACCUM_BUFFER_BIT* = 1 shl 7 + GDK_GL_BAD_SCREEN* = 1 + GDK_GL_BAD_ATTRIBUTE* = 2 + GDK_GL_NO_EXTENSION* = 3 + GDK_GL_BAD_VISUAL* = 4 + GDK_GL_BAD_CONTEXT* = 5 + GDK_GL_BAD_VALUE* = 6 + GDK_GL_BAD_ENUM* = 7 + GDK_GL_RGBA_TYPE* = 0x00008014 + GDK_GL_COLOR_INDEX_TYPE* = 0x00008015 + GDK_GL_PRESERVED_CONTENTS* = 0x0000801B + GDK_GL_LARGEST_PBUFFER* = 0x0000801C + GDK_GL_WIDTH* = 0x0000801D + GDK_GL_HEIGHT* = 0x0000801E + GDK_GL_EVENT_MASK* = 0x0000801F + GDK_GL_PBUFFER_PRESERVED_CONTENTS* = 0x0000801B + GDK_GL_PBUFFER_LARGEST_PBUFFER* = 0x0000801C + GDK_GL_PBUFFER_HEIGHT* = 0x00008040 + GDK_GL_PBUFFER_WIDTH* = 0x00008041 + GDK_GL_PBUFFER_CLOBBER_MASK* = 1 shl 27 + GDK_GL_DAMAGED* = 0x00008020 + GDK_GL_SAVED* = 0x00008021 + GDK_GL_WINDOW_VALUE* = 0x00008022 + GDK_GL_PBUFFER* = 0x00008023 + +proc gdk_gl_config_attrib_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_attrib_get_type".} +proc GDK_TYPE_GL_CONFIG_ATTRIB*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_attrib_get_type".} +proc gdk_gl_config_caveat_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_caveat_get_type".} +proc GDK_TYPE_GL_CONFIG_CAVEAT*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_caveat_get_type".} +proc gdk_gl_visual_type_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_visual_type_get_type".} +proc GDK_TYPE_GL_VISUAL_TYPE*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_visual_type_get_type".} +proc gdk_gl_transparent_type_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_transparent_type_get_type".} +proc GDK_TYPE_GL_TRANSPARENT_TYPE*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_transparent_type_get_type".} +proc gdk_gl_drawable_type_mask_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_type_mask_get_type".} +proc GDK_TYPE_GL_DRAWABLE_TYPE_MASK*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_type_mask_get_type".} +proc gdk_gl_render_type_mask_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_render_type_mask_get_type".} +proc GDK_TYPE_GL_RENDER_TYPE_MASK*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_render_type_mask_get_type".} +proc gdk_gl_buffer_mask_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_buffer_mask_get_type".} +proc GDK_TYPE_GL_BUFFER_MASK*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_buffer_mask_get_type".} +proc gdk_gl_config_error_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_error_get_type".} +proc GDK_TYPE_GL_CONFIG_ERROR*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_error_get_type".} +proc gdk_gl_render_type_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_render_type_get_type".} +proc GDK_TYPE_GL_RENDER_TYPE*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_render_type_get_type".} +proc gdk_gl_drawable_attrib_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_attrib_get_type".} +proc GDK_TYPE_GL_DRAWABLE_ATTRIB*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_attrib_get_type".} +proc gdk_gl_pbuffer_attrib_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_pbuffer_attrib_get_type".} +proc GDK_TYPE_GL_PBUFFER_ATTRIB*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_pbuffer_attrib_get_type".} +proc gdk_gl_event_mask_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_event_mask_get_type".} +proc GDK_TYPE_GL_EVENT_MASK*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_event_mask_get_type".} +proc gdk_gl_event_type_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_event_type_get_type".} +proc GDK_TYPE_GL_EVENT_TYPE*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_event_type_get_type".} +proc gdk_gl_drawable_type_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_type_get_type".} +proc GDK_TYPE_GL_DRAWABLE_TYPE*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_type_get_type".} +proc gdk_gl_config_mode_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_mode_get_type".} +proc GDK_TYPE_GL_CONFIG_MODE*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_mode_get_type".} +proc gdk_gl_parse_args*(argc: var int32, argv: ptr cstringArray): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_parse_args".} +proc gdk_gl_init_check*(argc: var int32, argv: ptr cstringArray): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_init_check".} +proc gdk_gl_init*(argc: var int32, argv: ptr cstringArray){. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_init".} +proc gdk_gl_query_gl_extension*(extension: cstring): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_query_gl_extension".} +proc gdk_gl_get_proc_address*(proc_name: cstring): TGdkGLProc{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_get_proc_address".} +const + bm_TGdkGLConfig_is_rgba* = 1 shl 0 + bp_TGdkGLConfig_is_rgba* = 0 + bm_TGdkGLConfig_is_double_buffered* = 1 shl 1 + bp_TGdkGLConfig_is_double_buffered* = 1 + bm_TGdkGLConfig_as_single_mode* = 1 shl 2 + bp_TGdkGLConfig_as_single_mode* = 2 + bm_TGdkGLConfig_is_stereo* = 1 shl 3 + bp_TGdkGLConfig_is_stereo* = 3 + bm_TGdkGLConfig_has_alpha* = 1 shl 4 + bp_TGdkGLConfig_has_alpha* = 4 + bm_TGdkGLConfig_has_depth_buffer* = 1 shl 5 + bp_TGdkGLConfig_has_depth_buffer* = 5 + bm_TGdkGLConfig_has_stencil_buffer* = 1 shl 6 + bp_TGdkGLConfig_has_stencil_buffer* = 6 + bm_TGdkGLConfig_has_accum_buffer* = 1 shl 7 + bp_TGdkGLConfig_has_accum_buffer* = 7 + +const + GDK_GL_MODE_RGB* = 0 + GDK_GL_MODE_RGBA* = 0 + GDK_GL_MODE_INDEX* = 1 shl 0 + GDK_GL_MODE_SINGLE* = 0 + GDK_GL_MODE_DOUBLE* = 1 shl 1 + GDK_GL_MODE_STEREO* = 1 shl 2 + GDK_GL_MODE_ALPHA* = 1 shl 3 + GDK_GL_MODE_DEPTH* = 1 shl 4 + GDK_GL_MODE_STENCIL* = 1 shl 5 + GDK_GL_MODE_ACCUM* = 1 shl 6 + GDK_GL_MODE_MULTISAMPLE* = 1 shl 7 + +type + TGdkGLConfigMode* = int32 + PGdkGLConfigMode* = ptr TGdkGLConfigMode + +proc GDK_TYPE_GL_CONFIG*(): GType +proc GDK_GL_CONFIG*(anObject: Pointer): PGdkGLConfig +proc GDK_GL_CONFIG_CLASS*(klass: Pointer): PGdkGLConfigClass +proc GDK_IS_GL_CONFIG*(anObject: Pointer): bool +proc GDK_IS_GL_CONFIG_CLASS*(klass: Pointer): bool +proc GDK_GL_CONFIG_GET_CLASS*(obj: Pointer): PGdkGLConfigClass +proc gdk_gl_config_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_config_get_type".} +proc gdk_gl_config_get_screen*(glconfig: PGdkGLConfig): PGdkScreen{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_screen".} +proc gdk_gl_config_get_attrib*(glconfig: PGdkGLConfig, attribute: int, + value: var cint): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_attrib".} +proc gdk_gl_config_get_colormap*(glconfig: PGdkGLConfig): PGdkColormap{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_colormap".} +proc gdk_gl_config_get_visual*(glconfig: PGdkGLConfig): PGdkVisual{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_visual".} +proc gdk_gl_config_get_depth*(glconfig: PGdkGLConfig): gint{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_depth".} +proc gdk_gl_config_get_layer_plane*(glconfig: PGdkGLConfig): gint{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_layer_plane".} +proc gdk_gl_config_get_n_aux_buffers*(glconfig: PGdkGLConfig): gint{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_n_aux_buffers".} +proc gdk_gl_config_get_n_sample_buffers*(glconfig: PGdkGLConfig): gint{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_get_n_sample_buffers".} +proc gdk_gl_config_is_rgba*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_is_rgba".} +proc gdk_gl_config_is_double_buffered*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_is_double_buffered".} +proc gdk_gl_config_is_stereo*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_is_stereo".} +proc gdk_gl_config_has_alpha*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_has_alpha".} +proc gdk_gl_config_has_depth_buffer*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_has_depth_buffer".} +proc gdk_gl_config_has_stencil_buffer*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_has_stencil_buffer".} +proc gdk_gl_config_has_accum_buffer*(glconfig: PGdkGLConfig): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_config_has_accum_buffer".} +proc GDK_TYPE_GL_CONTEXT*(): GType +proc GDK_GL_CONTEXT*(anObject: Pointer): PGdkGLContext +proc GDK_GL_CONTEXT_CLASS*(klass: Pointer): PGdkGLContextClass +proc GDK_IS_GL_CONTEXT*(anObject: Pointer): bool +proc GDK_IS_GL_CONTEXT_CLASS*(klass: Pointer): bool +proc GDK_GL_CONTEXT_GET_CLASS*(obj: Pointer): PGdkGLContextClass +proc gdk_gl_context_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_context_get_type".} +proc gdk_gl_context_new*(gldrawable: PGdkGLDrawable, share_list: PGdkGLContext, + direct: gboolean, render_type: int32): PGdkGLContext{. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_context_new".} +proc gdk_gl_context_destroy*(glcontext: PGdkGLContext){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_context_destroy".} +proc gdk_gl_context_copy*(glcontext: PGdkGLContext, src: PGdkGLContext, + mask: int32): gboolean{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_context_copy".} +proc gdk_gl_context_get_gl_drawable*(glcontext: PGdkGLContext): PGdkGLDrawable{. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_context_get_gl_drawable".} +proc gdk_gl_context_get_gl_config*(glcontext: PGdkGLContext): PGdkGLConfig{. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_context_get_gl_config".} +proc gdk_gl_context_get_share_list*(glcontext: PGdkGLContext): PGdkGLContext{. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_context_get_share_list".} +proc gdk_gl_context_is_direct*(glcontext: PGdkGLContext): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_context_is_direct".} +proc gdk_gl_context_get_render_type*(glcontext: PGdkGLContext): int32{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_context_get_render_type".} +proc gdk_gl_context_get_current*(): PGdkGLContext{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_context_get_current".} +proc GDK_TYPE_GL_DRAWABLE*(): GType +proc GDK_GL_DRAWABLE*(inst: Pointer): PGdkGLDrawable +proc GDK_GL_DRAWABLE_CLASS*(vtable: Pointer): PGdkGLDrawableClass +proc GDK_IS_GL_DRAWABLE*(inst: Pointer): bool +proc GDK_IS_GL_DRAWABLE_CLASS*(vtable: Pointer): bool +proc GDK_GL_DRAWABLE_GET_CLASS*(inst: Pointer): PGdkGLDrawableClass +proc gdk_gl_drawable_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_get_type".} +proc gdk_gl_drawable_make_current*(gldrawable: PGdkGLDrawable, + glcontext: PGdkGLContext): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_make_current".} +proc gdk_gl_drawable_is_double_buffered*(gldrawable: PGdkGLDrawable): gboolean{. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_is_double_buffered".} +proc gdk_gl_drawable_swap_buffers*(gldrawable: PGdkGLDrawable){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_swap_buffers".} +proc gdk_gl_drawable_wait_gl*(gldrawable: PGdkGLDrawable){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_wait_gl".} +proc gdk_gl_drawable_wait_gdk*(gldrawable: PGdkGLDrawable){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_wait_gdk".} +proc gdk_gl_drawable_gl_begin*(gldrawable: PGdkGLDrawable, + glcontext: PGdkGLContext): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_gl_begin".} +proc gdk_gl_drawable_gl_end*(gldrawable: PGdkGLDrawable){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_gl_end".} +proc gdk_gl_drawable_get_gl_config*(gldrawable: PGdkGLDrawable): PGdkGLConfig{. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_get_gl_config".} +proc gdk_gl_drawable_get_size*(gldrawable: PGdkGLDrawable, width, height: PGInt){. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_drawable_get_size".} +proc gdk_gl_drawable_get_current*(): PGdkGLDrawable{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_drawable_get_current".} +proc GDK_TYPE_GL_PIXMAP*(): GType +proc GDK_GL_PIXMAP*(anObject: Pointer): PGdkGLPixmap +proc GDK_GL_PIXMAP_CLASS*(klass: Pointer): PGdkGLPixmapClass +proc GDK_IS_GL_PIXMAP*(anObject: Pointer): bool +proc GDK_IS_GL_PIXMAP_CLASS*(klass: Pointer): bool +proc GDK_GL_PIXMAP_GET_CLASS*(obj: Pointer): PGdkGLPixmapClass +proc gdk_gl_pixmap_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_pixmap_get_type".} +proc gdk_gl_pixmap_new*(glconfig: PGdkGLConfig, pixmap: PGdkPixmap, + attrib_list: ptr int32): PGdkGLPixmap{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_pixmap_new".} +proc gdk_gl_pixmap_destroy*(glpixmap: PGdkGLPixmap){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_pixmap_destroy".} +proc gdk_gl_pixmap_get_pixmap*(glpixmap: PGdkGLPixmap): PGdkPixmap{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_pixmap_get_pixmap".} +proc gdk_pixmap_set_gl_capability*(pixmap: PGdkPixmap, glconfig: PGdkGLConfig, + attrib_list: ptr int32): PGdkGLPixmap{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_pixmap_set_gl_capability".} +proc gdk_pixmap_unset_gl_capability*(pixmap: PGdkPixmap){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_pixmap_unset_gl_capability".} +proc gdk_pixmap_is_gl_capable*(pixmap: PGdkPixmap): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_pixmap_is_gl_capable".} +proc gdk_pixmap_get_gl_pixmap*(pixmap: PGdkPixmap): PGdkGLPixmap{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_pixmap_get_gl_pixmap".} +proc gdk_pixmap_get_gl_drawable*(pixmap: PGdkPixmap): PGdkGLDrawable +proc GDK_TYPE_GL_WINDOW*(): GType +proc GDK_GL_WINDOW*(anObject: Pointer): PGdkGLWindow +proc GDK_GL_WINDOW_CLASS*(klass: Pointer): PGdkGLWindowClass +proc GDK_IS_GL_WINDOW*(anObject: Pointer): bool +proc GDK_IS_GL_WINDOW_CLASS*(klass: Pointer): bool +proc GDK_GL_WINDOW_GET_CLASS*(obj: Pointer): PGdkGLWindowClass +proc gdk_gl_window_get_type*(): GType{.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_window_get_type".} +proc gdk_gl_window_new*(glconfig: PGdkGLConfig, window: PGdkWindow, + attrib_list: ptr int32): PGdkGLWindow{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_window_new".} +proc gdk_gl_window_destroy*(glwindow: PGdkGLWindow){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_window_destroy".} +proc gdk_gl_window_get_window*(glwindow: PGdkGLWindow): PGdkWindow{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_window_get_window".} +proc gdk_window_set_gl_capability*(window: PGdkWindow, glconfig: PGdkGLConfig, + attrib_list: ptr int32): PGdkGLWindow{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_window_set_gl_capability".} +proc gdk_window_unset_gl_capability*(window: PGdkWindow){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_window_unset_gl_capability".} +proc gdk_window_is_gl_capable*(window: PGdkWindow): gboolean{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_window_is_gl_capable".} +proc gdk_window_get_gl_window*(window: PGdkWindow): PGdkGLWindow{.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_window_get_gl_window".} +proc gdk_window_get_gl_drawable*(window: PGdkWindow): PGdkGLDrawable +proc gdk_gl_draw_cube*(solid: gboolean, size: float64){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_draw_cube".} +proc gdk_gl_draw_sphere*(solid: gboolean, radius: float64, slices: int32, + stacks: int32){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_draw_sphere".} +proc gdk_gl_draw_cone*(solid: gboolean, base: float64, height: float64, + slices: int32, stacks: int32){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_draw_cone".} +proc gdk_gl_draw_torus*(solid: gboolean, inner_radius: float64, + outer_radius: float64, nsides: int32, rings: int32){. + cdecl, dynlib: GdkGLExtLib, importc: "gdk_gl_draw_torus".} +proc gdk_gl_draw_tetrahedron*(solid: gboolean){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_draw_tetrahedron".} +proc gdk_gl_draw_octahedron*(solid: gboolean){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_draw_octahedron".} +proc gdk_gl_draw_dodecahedron*(solid: gboolean){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_draw_dodecahedron".} +proc gdk_gl_draw_icosahedron*(solid: gboolean){.cdecl, dynlib: GdkGLExtLib, + importc: "gdk_gl_draw_icosahedron".} +proc gdk_gl_draw_teapot*(solid: gboolean, scale: float64){.cdecl, + dynlib: GdkGLExtLib, importc: "gdk_gl_draw_teapot".} +proc HEADER_GDKGLEXT_CHECK_VERSION*(major, minor, micro: guint): bool = + result = (HEADER_GDKGLEXT_MAJOR_VERSION > major) or + ((HEADER_GDKGLEXT_MAJOR_VERSION == major) and + (HEADER_GDKGLEXT_MINOR_VERSION > minor)) or + ((HEADER_GDKGLEXT_MAJOR_VERSION == major) and + (HEADER_GDKGLEXT_MINOR_VERSION == minor) and + (HEADER_GDKGLEXT_MICRO_VERSION >= micro)) + +proc GDK_TYPE_GL_CONFIG*(): GType = + result = gdk_gl_config_get_type() + +proc GDK_GL_CONFIG*(anObject: Pointer): PGdkGLConfig = + result = cast[PGdkGLConfig](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_GL_CONFIG())) + +proc GDK_GL_CONFIG_CLASS*(klass: Pointer): PGdkGLConfigClass = + result = cast[PGdkGLConfigClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_GL_CONFIG())) + +proc GDK_IS_GL_CONFIG*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_GL_CONFIG()) + +proc GDK_IS_GL_CONFIG_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_GL_CONFIG()) + +proc GDK_GL_CONFIG_GET_CLASS*(obj: Pointer): PGdkGLConfigClass = + result = cast[PGdkGLConfigClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_GL_CONFIG())) + +proc GDK_TYPE_GL_CONTEXT*(): GType = + result = gdk_gl_context_get_type() + +proc GDK_GL_CONTEXT*(anObject: Pointer): PGdkGLContext = + result = cast[PGdkGLContext](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GDK_TYPE_GL_CONTEXT())) + +proc GDK_GL_CONTEXT_CLASS*(klass: Pointer): PGdkGLContextClass = + result = cast[PGdkGLContextClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_GL_CONTEXT())) + +proc GDK_IS_GL_CONTEXT*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_GL_CONTEXT()) + +proc GDK_IS_GL_CONTEXT_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_GL_CONTEXT()) + +proc GDK_GL_CONTEXT_GET_CLASS*(obj: Pointer): PGdkGLContextClass = + result = cast[PGdkGLContextClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_GL_CONTEXT())) + +proc GDK_TYPE_GL_DRAWABLE*(): GType = + result = gdk_gl_drawable_get_type() + +proc GDK_GL_DRAWABLE*(inst: Pointer): PGdkGLDrawable = + result = cast[PGdkGLDrawable](G_TYPE_CHECK_INSTANCE_CAST(inst, GDK_TYPE_GL_DRAWABLE())) + +proc GDK_GL_DRAWABLE_CLASS*(vtable: Pointer): PGdkGLDrawableClass = + result = cast[PGdkGLDrawableClass](G_TYPE_CHECK_CLASS_CAST(vtable, + GDK_TYPE_GL_DRAWABLE())) + +proc GDK_IS_GL_DRAWABLE*(inst: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(inst, GDK_TYPE_GL_DRAWABLE()) + +proc GDK_IS_GL_DRAWABLE_CLASS*(vtable: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(vtable, GDK_TYPE_GL_DRAWABLE()) + +proc GDK_GL_DRAWABLE_GET_CLASS*(inst: Pointer): PGdkGLDrawableClass = + result = cast[PGdkGLDrawableClass](G_TYPE_INSTANCE_GET_INTERFACE(inst, + GDK_TYPE_GL_DRAWABLE())) + +proc GDK_TYPE_GL_PIXMAP*(): GType = + result = gdk_gl_pixmap_get_type() + +proc GDK_GL_PIXMAP*(anObject: Pointer): PGdkGLPixmap = + result = cast[PGdkGLPixmap](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_GL_PIXMAP())) + +proc GDK_GL_PIXMAP_CLASS*(klass: Pointer): PGdkGLPixmapClass = + result = cast[PGdkGLPixmapClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_GL_PIXMAP())) + +proc GDK_IS_GL_PIXMAP*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_GL_PIXMAP()) + +proc GDK_IS_GL_PIXMAP_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_GL_PIXMAP()) + +proc GDK_GL_PIXMAP_GET_CLASS*(obj: Pointer): PGdkGLPixmapClass = + result = cast[PGdkGLPixmapClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_GL_PIXMAP())) + +proc gdk_pixmap_get_gl_drawable*(pixmap: PGdkPixmap): PGdkGLDrawable = + result = GDK_GL_DRAWABLE(gdk_pixmap_get_gl_pixmap(pixmap)) + +proc GDK_TYPE_GL_WINDOW*(): GType = + result = gdk_gl_window_get_type() + +proc GDK_GL_WINDOW*(anObject: Pointer): PGdkGLWindow = + result = cast[PGdkGLWindow](G_TYPE_CHECK_INSTANCE_CAST(anObject, GDK_TYPE_GL_WINDOW())) + +proc GDK_GL_WINDOW_CLASS*(klass: Pointer): PGdkGLWindowClass = + result = cast[PGdkGLWindowClass](G_TYPE_CHECK_CLASS_CAST(klass, GDK_TYPE_GL_WINDOW())) + +proc GDK_IS_GL_WINDOW*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GDK_TYPE_GL_WINDOW()) + +proc GDK_IS_GL_WINDOW_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GDK_TYPE_GL_WINDOW()) + +proc GDK_GL_WINDOW_GET_CLASS*(obj: Pointer): PGdkGLWindowClass = + result = cast[PGdkGLWindowClass](G_TYPE_INSTANCE_GET_CLASS(obj, GDK_TYPE_GL_WINDOW())) + +proc gdk_window_get_gl_drawable*(window: PGdkWindow): PGdkGLDrawable = + result = GDK_GL_DRAWABLE(gdk_window_get_gl_window(window)) diff --git a/lib/base/gtk/glib2.nim b/lib/base/gtk/glib2.nim new file mode 100755 index 000000000..4b4724c70 --- /dev/null +++ b/lib/base/gtk/glib2.nim @@ -0,0 +1,4498 @@ +when defined(windows): + {.define: gtkwin.} + const + gliblib = "libglib-2.0-0.dll" + gthreadlib = "libgthread-2.0-0.dll" + gmodulelib = "libgmodule-2.0-0.dll" + gobjectlib = "libgobject-2.0-0.dll" +else: + const + gliblib = "libglib-2.0.so" + gthreadlib = "libgthread-2.0.so" + gmodulelib = "libgmodule-2.0.so" + gobjectlib = "libgobject-2.0.so" +type + PGTypePlugin* = pointer + PGParamSpecPool* = pointer + PPchar* = ptr cstring + PPPchar* = ptr PPchar + PPPgchar* = ptr PPgchar + PPgchar* = ptr cstring + gchar* = char + Pgshort* = ptr gshort + gshort* = cshort + Pglong* = ptr glong + glong* = clong + Pgint* = ptr gint + PPgint* = ptr Pgint + gint* = cint + Pgboolean* = ptr gboolean + gboolean* = bool + Pguchar* = ptr guchar + PPguchar* = ptr Pguchar + guchar* = char + Pgushort* = ptr gushort + gushort* = int16 + Pgulong* = ptr gulong + gulong* = int + guint* = cint + Pguint* = ptr guint + gfloat* = cfloat + Pgfloat* = ptr gfloat + gdouble* = cdouble + Pgdouble* = ptr gdouble + gpointer* = pointer + pgpointer* = ptr gpointer + gconstpointer* = pointer + PGCompareFunc* = ptr TGCompareFunc + TGCompareFunc* = proc (a, b: gconstpointer): gint{.cdecl.} + PGCompareDataFunc* = ptr TGCompareDataFunc + TGCompareDataFunc* = proc (a, b: gconstpointer, user_data: gpointer): gint{. + cdecl.} + PGEqualFunc* = ptr TGEqualFunc + TGEqualFunc* = proc (a, b: gconstpointer): gboolean{.cdecl.} + PGDestroyNotify* = ptr TGDestroyNotify + TGDestroyNotify* = proc (data: gpointer){.cdecl.} + PGFunc* = ptr TGFunc + TGFunc* = proc (data, userdata: gpointer, key: gconstpointer){.cdecl.} + PGHashFunc* = ptr TGHashFunc + TGHashFunc* = proc (key: gconstpointer): guint{.cdecl.} + PGHFunc* = ptr TGHFunc + TGHFunc* = proc (key, value, user_data: gpointer){.cdecl.} + PGFreeFunc* = proc (data: gpointer){.cdecl.} + PGTimeVal* = ptr TGTimeVal + TGTimeVal* = record + tv_sec*: glong + tv_usec*: glong + + guint64* = int64 + gint8* = int8 + guint8* = int8 + gint16* = int16 + guint16* = int16 + gint32* = int32 + guint32* = int32 + gint64* = int64 + gssize* = int32 + gsize* = int32 + Pgint8* = ptr gint8 + Pguint8* = ptr guint8 + Pgint16* = ptr gint16 + Pguint16* = ptr guint16 + Pgint32* = ptr gint32 + Pguint32* = ptr guint32 + Pgint64* = ptr gint64 + Pguint64* = ptr guint64 + pgssize* = ptr gssize + pgsize* = ptr gsize + TGQuark* = guint32 + PGQuark* = ptr TGQuark + PGTypeCValue* = ptr TGTypeCValue + TGTypeCValue* = record + v_double*: gdouble + + GType* = gulong + PGType* = ptr GType + PGTypeClass* = ptr TGTypeClass + TGTypeClass* = record + g_type*: GType + + PGTypeInstance* = ptr TGTypeInstance + TGTypeInstance* = record + g_class*: PGTypeClass + + PGTypeInterface* = ptr TGTypeInterface + TGTypeInterface* {.pure.} = object + g_type*: GType + g_instance_type*: GType + + PGTypeQuery* = ptr TGTypeQuery + TGTypeQuery* = record + theType*: GType + type_name*: cstring + class_size*: guint + instance_size*: guint + + PGValue* = ptr TGValue + TGValue* = record + g_type*: GType + data*: array[0..1, gdouble] + + PPGData* = ptr PGData + PGData* = pointer + PGSList* = ptr TGSList + PPGSList* = ptr PGSList + TGSList* = record + data*: gpointer + next*: PGSList + + PGList* = ptr TGList + TGList* = record + data*: gpointer + next*: PGList + prev*: PGList + + PGParamFlags* = ptr TGParamFlags + TGParamFlags* = int32 + PGParamSpec* = ptr TGParamSpec + PPGParamSpec* = ptr PGParamSpec + TGParamSpec* = record + g_type_instance*: TGTypeInstance + name*: cstring + flags*: TGParamFlags + value_type*: GType + owner_type*: GType + nick*: cstring + blurb*: cstring + qdata*: PGData + ref_count*: guint + param_id*: guint + + PGParamSpecClass* = ptr TGParamSpecClass + TGParamSpecClass* = record + g_type_class*: TGTypeClass + value_type*: GType + finalize*: proc (pspec: PGParamSpec){.cdecl.} + value_set_default*: proc (pspec: PGParamSpec, value: PGValue){.cdecl.} + value_validate*: proc (pspec: PGParamSpec, value: PGValue): gboolean{.cdecl.} + values_cmp*: proc (pspec: PGParamSpec, value1: PGValue, value2: PGValue): gint{. + cdecl.} + dummy*: array[0..3, gpointer] + + PGParameter* = ptr TGParameter + TGParameter* = record + name*: cstring + value*: TGValue + + TGBoxedCopyFunc* = proc (boxed: gpointer): gpointer{.cdecl.} + TGBoxedFreeFunc* = proc (boxed: gpointer){.cdecl.} + + PGsource = pointer # I don't know and don't care + +const + G_TYPE_FUNDAMENTAL_SHIFT* = 2 + G_TYPE_FUNDAMENTAL_MAX* = 255 shl G_TYPE_FUNDAMENTAL_SHIFT + G_TYPE_INVALID* = GType(0 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_NONE* = GType(1 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_INTERFACE* = GType(2 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_CHAR* = GType(3 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_UCHAR* = GType(4 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_BOOLEAN* = GType(5 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_INT* = GType(6 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_UINT* = GType(7 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_LONG* = GType(8 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_ULONG* = GType(9 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_INT64* = GType(10 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_UINT64* = GType(11 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_ENUM* = GType(12 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_FLAGS* = GType(13 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_FLOAT* = GType(14 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_DOUBLE* = GType(15 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_STRING* = GType(16 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_POINTER* = GType(17 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_BOXED* = GType(18 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_PARAM* = GType(19 shl G_TYPE_FUNDAMENTAL_SHIFT) + G_TYPE_OBJECT* = GType(20 shl G_TYPE_FUNDAMENTAL_SHIFT) + +proc G_TYPE_MAKE_FUNDAMENTAL*(x: int32): GType +const + G_TYPE_RESERVED_GLIB_FIRST* = 21 + G_TYPE_RESERVED_GLIB_LAST* = 31 + G_TYPE_RESERVED_BSE_FIRST* = 32 + G_TYPE_RESERVED_BSE_LAST* = 48 + G_TYPE_RESERVED_USER_FIRST* = 49 + +proc G_TYPE_IS_FUNDAMENTAL*(theType: GType): bool +proc G_TYPE_IS_DERIVED*(theType: GType): bool +proc G_TYPE_IS_INTERFACE*(theType: GType): bool +proc G_TYPE_IS_CLASSED*(theType: GType): gboolean +proc G_TYPE_IS_INSTANTIATABLE*(theType: GType): bool +proc G_TYPE_IS_DERIVABLE*(theType: GType): bool +proc G_TYPE_IS_DEEP_DERIVABLE*(theType: GType): bool +proc G_TYPE_IS_ABSTRACT*(theType: GType): bool +proc G_TYPE_IS_VALUE_ABSTRACT*(theType: GType): bool +proc G_TYPE_IS_VALUE_TYPE*(theType: GType): bool +proc G_TYPE_HAS_VALUE_TABLE*(theType: GType): bool +proc G_TYPE_CHECK_INSTANCE*(instance: Pointer): gboolean +proc G_TYPE_CHECK_INSTANCE_CAST*(instance: Pointer, g_type: GType): PGTypeInstance +proc G_TYPE_CHECK_INSTANCE_TYPE*(instance: Pointer, g_type: GType): bool +proc G_TYPE_INSTANCE_GET_CLASS*(instance: Pointer, g_type: GType): PGTypeClass +proc G_TYPE_INSTANCE_GET_INTERFACE*(instance: Pointer, g_type: GType): Pointer +proc G_TYPE_CHECK_CLASS_CAST*(g_class: pointer, g_type: GType): Pointer +proc G_TYPE_CHECK_CLASS_TYPE*(g_class: pointer, g_type: GType): bool +proc G_TYPE_CHECK_VALUE*(value: Pointer): bool +proc G_TYPE_CHECK_VALUE_TYPE*(value: pointer, g_type: GType): bool +proc G_TYPE_FROM_INSTANCE*(instance: Pointer): GType +proc G_TYPE_FROM_CLASS*(g_class: Pointer): GType +proc G_TYPE_FROM_INTERFACE*(g_iface: Pointer): GType +type + PGTypeDebugFlags* = ptr TGTypeDebugFlags + TGTypeDebugFlags* = int32 + +const + G_TYPE_DEBUG_NONE* = 0 + G_TYPE_DEBUG_OBJECTS* = 1 shl 0 + G_TYPE_DEBUG_SIGNALS* = 1 shl 1 + G_TYPE_DEBUG_MASK* = 0x00000003 + +proc g_type_init*(){.cdecl, dynlib: gobjectlib, importc: "g_type_init".} +proc g_type_init_with_debug_flags*(debug_flags: TGTypeDebugFlags){.cdecl, + dynlib: gobjectlib, importc: "g_type_init_with_debug_flags".} +proc g_type_name*(theType: GType): cstring{.cdecl, dynlib: gobjectlib, + importc: "g_type_name".} +proc g_type_qname*(theType: GType): TGQuark{.cdecl, dynlib: gobjectlib, + importc: "g_type_qname".} +proc g_type_from_name*(name: cstring): GType{.cdecl, dynlib: gobjectlib, + importc: "g_type_from_name".} +proc g_type_parent*(theType: GType): GType{.cdecl, dynlib: gobjectlib, + importc: "g_type_parent".} +proc g_type_depth*(theType: GType): guint{.cdecl, dynlib: gobjectlib, + importc: "g_type_depth".} +proc g_type_next_base*(leaf_type: GType, root_type: GType): GType{.cdecl, + dynlib: gobjectlib, importc: "g_type_next_base".} +proc g_type_is_a*(theType: GType, is_a_type: GType): gboolean{.cdecl, + dynlib: gobjectlib, importc: "g_type_is_a".} +proc g_type_class_ref*(theType: GType): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_type_class_ref".} +proc g_type_class_peek*(theType: GType): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_type_class_peek".} +proc g_type_class_unref*(g_class: gpointer){.cdecl, dynlib: gobjectlib, + importc: "g_type_class_unref".} +proc g_type_class_peek_parent*(g_class: gpointer): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_type_class_peek_parent".} +proc g_type_interface_peek*(instance_class: gpointer, iface_type: GType): gpointer{. + cdecl, dynlib: gobjectlib, importc: "g_type_interface_peek".} +proc g_type_interface_peek_parent*(g_iface: gpointer): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_type_interface_peek_parent".} +proc g_type_children*(theType: GType, n_children: Pguint): PGType{.cdecl, + dynlib: gobjectlib, importc: "g_type_children".} +proc g_type_interfaces*(theType: GType, n_interfaces: Pguint): PGType{.cdecl, + dynlib: gobjectlib, importc: "g_type_interfaces".} +proc g_type_set_qdata*(theType: GType, quark: TGQuark, data: gpointer){.cdecl, + dynlib: gobjectlib, importc: "g_type_set_qdata".} +proc g_type_get_qdata*(theType: GType, quark: TGQuark): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_type_get_qdata".} +proc g_type_query*(theType: GType, query: PGTypeQuery){.cdecl, + dynlib: gobjectlib, importc: "g_type_query".} +type + TGBaseInitFunc* = proc (g_class: gpointer){.cdecl.} + TGBaseFinalizeFunc* = proc (g_class: gpointer){.cdecl.} + TGClassInitFunc* = proc (g_class: gpointer, class_data: gpointer){.cdecl.} + TGClassFinalizeFunc* = proc (g_class: gpointer, class_data: gpointer){.cdecl.} + TGInstanceInitFunc* = proc (instance: PGTypeInstance, g_class: gpointer){. + cdecl.} + TGInterfaceInitFunc* = proc (g_iface: gpointer, iface_data: gpointer){.cdecl.} + TGInterfaceFinalizeFunc* = proc (g_iface: gpointer, iface_data: gpointer){. + cdecl.} + TGTypeClassCacheFunc* = proc (cache_data: gpointer, g_class: PGTypeClass): gboolean{. + cdecl.} + TGTypeFundamentalFlags* = int32 + PGTypeFundamentalFlags* = ptr TGTypeFundamentalFlags + +const + G_TYPE_FLAG_CLASSED* = 1 shl 0 + G_TYPE_FLAG_INSTANTIATABLE* = 1 shl 1 + G_TYPE_FLAG_DERIVABLE* = 1 shl 2 + G_TYPE_FLAG_DEEP_DERIVABLE* = 1 shl 3 + +type + PGTypeFlags* = ptr TGTypeFlags + TGTypeFlags* = int32 + +const + G_TYPE_FLAG_ABSTRACT* = 1 shl 4 + G_TYPE_FLAG_VALUE_ABSTRACT* = 1 shl 5 + +type + PGTypeValueTable* = ptr TGTypeValueTable + TGTypeValueTable* = record + value_init*: proc (value: PGValue){.cdecl.} + value_free*: proc (value: PGValue){.cdecl.} + value_copy*: proc (src_value: PGValue, dest_value: PGValue){.cdecl.} + value_peek_pointer*: proc (value: PGValue): gpointer{.cdecl.} + collect_format*: cstring + collect_value*: proc (value: PGValue, n_collect_values: guint, + collect_values: PGTypeCValue, collect_flags: guint): cstring{. + cdecl.} + lcopy_format*: cstring + lcopy_value*: proc (value: PGValue, n_collect_values: guint, + collect_values: PGTypeCValue, collect_flags: guint): cstring{. + cdecl.} + + PGTypeInfo* = ptr TGTypeInfo + TGTypeInfo* = record + class_size*: guint16 + base_init*: TGBaseInitFunc + base_finalize*: TGBaseFinalizeFunc + class_init*: TGClassInitFunc + class_finalize*: TGClassFinalizeFunc + class_data*: gconstpointer + instance_size*: guint16 + n_preallocs*: guint16 + instance_init*: TGInstanceInitFunc + value_table*: PGTypeValueTable + + PGTypeFundamentalInfo* = ptr TGTypeFundamentalInfo + TGTypeFundamentalInfo* = record + type_flags*: TGTypeFundamentalFlags + + PGInterfaceInfo* = ptr TGInterfaceInfo + TGInterfaceInfo* = record + interface_init*: TGInterfaceInitFunc + interface_finalize*: TGInterfaceFinalizeFunc + interface_data*: gpointer + + +proc g_type_register_static*(parent_type: GType, type_name: cstring, + info: PGTypeInfo, flags: TGTypeFlags): GType{. + cdecl, dynlib: gobjectlib, importc: "g_type_register_static".} +proc g_type_register_dynamic*(parent_type: GType, type_name: cstring, + plugin: PGTypePlugin, flags: TGTypeFlags): GType{. + cdecl, dynlib: gobjectlib, importc: "g_type_register_dynamic".} +proc g_type_register_fundamental*(type_id: GType, type_name: cstring, + info: PGTypeInfo, + finfo: PGTypeFundamentalInfo, + flags: TGTypeFlags): GType{.cdecl, + dynlib: gobjectlib, importc: "g_type_register_fundamental".} +proc g_type_add_interface_static*(instance_type: GType, interface_type: GType, + info: PGInterfaceInfo){.cdecl, + dynlib: gobjectlib, importc: "g_type_add_interface_static".} +proc g_type_add_interface_dynamic*(instance_type: GType, interface_type: GType, + plugin: PGTypePlugin){.cdecl, + dynlib: gobjectlib, importc: "g_type_add_interface_dynamic".} +proc g_type_interface_add_prerequisite*(interface_type: GType, + prerequisite_type: GType){.cdecl, + dynlib: gobjectlib, importc: "g_type_interface_add_prerequisite".} +proc g_type_get_plugin*(theType: GType): PGTypePlugin{.cdecl, + dynlib: gobjectlib, importc: "g_type_get_plugin".} +proc g_type_interface_get_plugin*(instance_type: GType, + implementation_type: GType): PGTypePlugin{. + cdecl, dynlib: gobjectlib, importc: "g_type_interface_get_plugin".} +proc g_type_fundamental_next*(): GType{.cdecl, dynlib: gobjectlib, + importc: "g_type_fundamental_next".} +proc g_type_fundamental*(type_id: GType): GType{.cdecl, dynlib: gobjectlib, + importc: "g_type_fundamental".} +proc g_type_create_instance*(theType: GType): PGTypeInstance{.cdecl, + dynlib: gobjectlib, importc: "g_type_create_instance".} +proc g_type_free_instance*(instance: PGTypeInstance){.cdecl, dynlib: gobjectlib, + importc: "g_type_free_instance".} +proc g_type_add_class_cache_func*(cache_data: gpointer, + cache_func: TGTypeClassCacheFunc){.cdecl, + dynlib: gobjectlib, importc: "g_type_add_class_cache_func".} +proc g_type_remove_class_cache_func*(cache_data: gpointer, + cache_func: TGTypeClassCacheFunc){.cdecl, + dynlib: gobjectlib, importc: "g_type_remove_class_cache_func".} +proc g_type_class_unref_uncached*(g_class: gpointer){.cdecl, dynlib: gobjectlib, + importc: "g_type_class_unref_uncached".} +proc g_type_value_table_peek*(theType: GType): PGTypeValueTable{.cdecl, + dynlib: gobjectlib, importc: "g_type_value_table_peek".} +proc private_g_type_check_instance*(instance: PGTypeInstance): gboolean{.cdecl, + dynlib: gobjectlib, importc: "g_type_check_instance".} +proc private_g_type_check_instance_cast*(instance: PGTypeInstance, + iface_type: GType): PGTypeInstance{.cdecl, dynlib: gobjectlib, + importc: "g_type_check_instance_cast".} +proc private_g_type_check_instance_is_a*(instance: PGTypeInstance, + iface_type: GType): gboolean{.cdecl, dynlib: gobjectlib, + importc: "g_type_check_instance_is_a".} +proc private_g_type_check_class_cast*(g_class: PGTypeClass, is_a_type: GType): PGTypeClass{. + cdecl, dynlib: gobjectlib, importc: "g_type_check_class_cast".} +proc private_g_type_check_class_is_a*(g_class: PGTypeClass, is_a_type: GType): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_type_check_class_is_a".} +proc private_g_type_check_is_value_type*(theType: GType): gboolean{.cdecl, + dynlib: gobjectlib, importc: "g_type_check_is_value_type".} +proc private_g_type_check_value*(value: PGValue): gboolean{.cdecl, + dynlib: gobjectlib, importc: "g_type_check_value".} +proc private_g_type_check_value_holds*(value: PGValue, theType: GType): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_type_check_value_holds".} +proc private_g_type_test_flags*(theType: GType, flags: guint): gboolean{.cdecl, + dynlib: gobjectlib, importc: "g_type_test_flags".} +proc g_type_name_from_instance*(instance: PGTypeInstance): cstring{.cdecl, + dynlib: gobjectlib, importc: "g_type_name_from_instance".} +proc g_type_name_from_class*(g_class: PGTypeClass): cstring{.cdecl, + dynlib: gobjectlib, importc: "g_type_name_from_class".} +const + G_TYPE_FLAG_RESERVED_ID_BIT* = GType(1 shl 0) + +proc G_TYPE_IS_VALUE*(theType: GType): bool +proc G_IS_VALUE*(value: pointer): bool +proc G_VALUE_TYPE*(value: Pointer): GType +proc G_VALUE_TYPE_NAME*(value: Pointer): cstring +proc G_VALUE_HOLDS*(value: pointer, g_type: GType): bool +type + TGValueTransform* = proc (src_value: PGValue, dest_value: PGValue){.cdecl.} + +proc g_value_init*(value: PGValue, g_type: GType): PGValue{.cdecl, + dynlib: gobjectlib, importc: "g_value_init".} +proc g_value_copy*(src_value: PGValue, dest_value: PGValue){.cdecl, + dynlib: gobjectlib, importc: "g_value_copy".} +proc g_value_reset*(value: PGValue): PGValue{.cdecl, dynlib: gobjectlib, + importc: "g_value_reset".} +proc g_value_unset*(value: PGValue){.cdecl, dynlib: gobjectlib, + importc: "g_value_unset".} +proc g_value_set_instance*(value: PGValue, instance: gpointer){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_instance".} +proc g_value_fits_pointer*(value: PGValue): gboolean{.cdecl, dynlib: gobjectlib, + importc: "g_value_fits_pointer".} +proc g_value_peek_pointer*(value: PGValue): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_value_peek_pointer".} +proc g_value_type_compatible*(src_type: GType, dest_type: GType): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_value_type_compatible".} +proc g_value_type_transformable*(src_type: GType, dest_type: GType): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_value_type_transformable".} +proc g_value_transform*(src_value: PGValue, dest_value: PGValue): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_value_transform".} +proc g_value_register_transform_func*(src_type: GType, dest_type: GType, + transform_func: TGValueTransform){.cdecl, + dynlib: gobjectlib, importc: "g_value_register_transform_func".} +const + G_VALUE_NOCOPY_CONTENTS* = 1 shl 27 + +type + PGValueArray* = ptr TGValueArray + TGValueArray* = record + n_values*: guint + values*: PGValue + n_prealloced*: guint + + +proc g_value_array_get_nth*(value_array: PGValueArray, index: guint): PGValue{. + cdecl, dynlib: gobjectlib, importc: "g_value_array_get_nth".} +proc g_value_array_new*(n_prealloced: guint): PGValueArray{.cdecl, + dynlib: gobjectlib, importc: "g_value_array_new".} +proc g_value_array_free*(value_array: PGValueArray){.cdecl, dynlib: gobjectlib, + importc: "g_value_array_free".} +proc g_value_array_copy*(value_array: PGValueArray): PGValueArray{.cdecl, + dynlib: gobjectlib, importc: "g_value_array_copy".} +proc g_value_array_prepend*(value_array: PGValueArray, value: PGValue): PGValueArray{. + cdecl, dynlib: gobjectlib, importc: "g_value_array_prepend".} +proc g_value_array_append*(value_array: PGValueArray, value: PGValue): PGValueArray{. + cdecl, dynlib: gobjectlib, importc: "g_value_array_append".} +proc g_value_array_insert*(value_array: PGValueArray, index: guint, + value: PGValue): PGValueArray{.cdecl, + dynlib: gobjectlib, importc: "g_value_array_insert".} +proc g_value_array_remove*(value_array: PGValueArray, index: guint): PGValueArray{. + cdecl, dynlib: gobjectlib, importc: "g_value_array_remove".} +proc g_value_array_sort*(value_array: PGValueArray, compare_func: TGCompareFunc): PGValueArray{. + cdecl, dynlib: gobjectlib, importc: "g_value_array_sort".} +proc g_value_array_sort_with_data*(value_array: PGValueArray, + compare_func: TGCompareDataFunc, + user_data: gpointer): PGValueArray{.cdecl, + dynlib: gobjectlib, importc: "g_value_array_sort_with_data".} +const + G_VALUE_COLLECT_INT* = 'i' + G_VALUE_COLLECT_LONG* = 'l' + G_VALUE_COLLECT_INT64* = 'q' + G_VALUE_COLLECT_DOUBLE* = 'd' + G_VALUE_COLLECT_POINTER* = 'p' + G_VALUE_COLLECT_FORMAT_MAX_LENGTH* = 8 + +proc G_VALUE_HOLDS_CHAR*(value: PGValue): bool +proc G_VALUE_HOLDS_UCHAR*(value: PGValue): bool +proc G_VALUE_HOLDS_BOOLEAN*(value: PGValue): bool +proc G_VALUE_HOLDS_INT*(value: PGValue): bool +proc G_VALUE_HOLDS_UINT*(value: PGValue): bool +proc G_VALUE_HOLDS_LONG*(value: PGValue): bool +proc G_VALUE_HOLDS_ULONG*(value: PGValue): bool +proc G_VALUE_HOLDS_INT64*(value: PGValue): bool +proc G_VALUE_HOLDS_UINT64*(value: PGValue): bool +proc G_VALUE_HOLDS_FLOAT*(value: PGValue): bool +proc G_VALUE_HOLDS_DOUBLE*(value: PGValue): bool +proc G_VALUE_HOLDS_STRING*(value: PGValue): bool +proc G_VALUE_HOLDS_POINTER*(value: PGValue): bool +proc g_value_set_char*(value: PGValue, v_char: gchar){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_char".} +proc g_value_get_char*(value: PGValue): gchar{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_char".} +proc g_value_set_uchar*(value: PGValue, v_uchar: guchar){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_uchar".} +proc g_value_get_uchar*(value: PGValue): guchar{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_uchar".} +proc g_value_set_boolean*(value: PGValue, v_boolean: gboolean){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_boolean".} +proc g_value_get_boolean*(value: PGValue): gboolean{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_boolean".} +proc g_value_set_int*(value: PGValue, v_int: gint){.cdecl, dynlib: gobjectlib, + importc: "g_value_set_int".} +proc g_value_get_int*(value: PGValue): gint{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_int".} +proc g_value_set_uint*(value: PGValue, v_uint: guint){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_uint".} +proc g_value_get_uint*(value: PGValue): guint{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_uint".} +proc g_value_set_long*(value: PGValue, v_long: glong){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_long".} +proc g_value_get_long*(value: PGValue): glong{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_long".} +proc g_value_set_ulong*(value: PGValue, v_ulong: gulong){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_ulong".} +proc g_value_get_ulong*(value: PGValue): gulong{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_ulong".} +proc g_value_set_int64*(value: PGValue, v_int64: gint64){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_int64".} +proc g_value_get_int64*(value: PGValue): gint64{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_int64".} +proc g_value_set_uint64*(value: PGValue, v_uint64: guint64){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_uint64".} +proc g_value_get_uint64*(value: PGValue): guint64{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_uint64".} +proc g_value_set_float*(value: PGValue, v_float: gfloat){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_float".} +proc g_value_get_float*(value: PGValue): gfloat{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_float".} +proc g_value_set_double*(value: PGValue, v_double: gdouble){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_double".} +proc g_value_get_double*(value: PGValue): gdouble{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_double".} +proc g_value_set_string*(value: PGValue, v_string: cstring){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_string".} +proc g_value_set_static_string*(value: PGValue, v_string: cstring){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_static_string".} +proc g_value_get_string*(value: PGValue): cstring{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_string".} +proc g_value_dup_string*(value: PGValue): cstring{.cdecl, dynlib: gobjectlib, + importc: "g_value_dup_string".} +proc g_value_set_pointer*(value: PGValue, v_pointer: gpointer){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_pointer".} +proc g_value_get_pointer*(value: PGValue): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_pointer".} +proc g_pointer_type_register_static*(name: cstring): GType{.cdecl, + dynlib: gobjectlib, importc: "g_pointer_type_register_static".} +proc g_strdup_value_contents*(value: PGValue): cstring{.cdecl, + dynlib: gobjectlib, importc: "g_strdup_value_contents".} +proc g_value_set_string_take_ownership*(value: PGValue, v_string: cstring){. + cdecl, dynlib: gobjectlib, importc: "g_value_set_string_take_ownership".} +type + Pgchararray* = ptr Tgchararray + Tgchararray* = gchar + +proc G_TYPE_IS_PARAM*(theType: GType): bool +proc G_PARAM_SPEC*(pspec: Pointer): PGParamSpec +proc G_IS_PARAM_SPEC*(pspec: Pointer): bool +proc G_PARAM_SPEC_CLASS*(pclass: Pointer): PGParamSpecClass +proc G_IS_PARAM_SPEC_CLASS*(pclass: Pointer): bool +proc G_PARAM_SPEC_GET_CLASS*(pspec: Pointer): PGParamSpecClass +proc G_PARAM_SPEC_TYPE*(pspec: Pointer): GType +proc G_PARAM_SPEC_TYPE_NAME*(pspec: Pointer): cstring +proc G_PARAM_SPEC_VALUE_TYPE*(pspec: Pointer): GType +proc G_VALUE_HOLDS_PARAM*(value: Pointer): bool +const + G_PARAM_READABLE* = 1 shl 0 + G_PARAM_WRITABLE* = 1 shl 1 + G_PARAM_CONSTRUCT* = 1 shl 2 + G_PARAM_CONSTRUCT_ONLY* = 1 shl 3 + G_PARAM_LAX_VALIDATION* = 1 shl 4 + G_PARAM_PRIVATE* = 1 shl 5 + G_PARAM_READWRITE* = G_PARAM_READABLE or G_PARAM_WRITABLE + G_PARAM_MASK* = 0x000000FF + G_PARAM_USER_SHIFT* = 8 + +proc g_param_spec_ref*(pspec: PGParamSpec): PGParamSpec{.cdecl, dynlib: gliblib, + importc: "g_param_spec_ref".} +proc g_param_spec_unref*(pspec: PGParamSpec){.cdecl, dynlib: gliblib, + importc: "g_param_spec_unref".} +proc g_param_spec_sink*(pspec: PGParamSpec){.cdecl, dynlib: gliblib, + importc: "g_param_spec_sink".} +proc g_param_spec_get_qdata*(pspec: PGParamSpec, quark: TGQuark): gpointer{. + cdecl, dynlib: gliblib, importc: "g_param_spec_get_qdata".} +proc g_param_spec_set_qdata*(pspec: PGParamSpec, quark: TGQuark, data: gpointer){. + cdecl, dynlib: gliblib, importc: "g_param_spec_set_qdata".} +proc g_param_spec_set_qdata_full*(pspec: PGParamSpec, quark: TGQuark, + data: gpointer, destroy: TGDestroyNotify){. + cdecl, dynlib: gliblib, importc: "g_param_spec_set_qdata_full".} +proc g_param_spec_steal_qdata*(pspec: PGParamSpec, quark: TGQuark): gpointer{. + cdecl, dynlib: gliblib, importc: "g_param_spec_steal_qdata".} +proc g_param_value_set_default*(pspec: PGParamSpec, value: PGValue){.cdecl, + dynlib: gliblib, importc: "g_param_value_set_default".} +proc g_param_value_defaults*(pspec: PGParamSpec, value: PGValue): gboolean{. + cdecl, dynlib: gliblib, importc: "g_param_value_defaults".} +proc g_param_value_validate*(pspec: PGParamSpec, value: PGValue): gboolean{. + cdecl, dynlib: gliblib, importc: "g_param_value_validate".} +proc g_param_value_convert*(pspec: PGParamSpec, src_value: PGValue, + dest_value: PGValue, strict_validation: gboolean): gboolean{. + cdecl, dynlib: gliblib, importc: "g_param_value_convert".} +proc g_param_values_cmp*(pspec: PGParamSpec, value1: PGValue, value2: PGValue): gint{. + cdecl, dynlib: gliblib, importc: "g_param_values_cmp".} +proc g_param_spec_get_name*(pspec: PGParamSpec): cstring{.cdecl, + dynlib: gliblib, importc: "g_param_spec_get_name".} +proc g_param_spec_get_nick*(pspec: PGParamSpec): cstring{.cdecl, + dynlib: gliblib, importc: "g_param_spec_get_nick".} +proc g_param_spec_get_blurb*(pspec: PGParamSpec): cstring{.cdecl, + dynlib: gliblib, importc: "g_param_spec_get_blurb".} +proc g_value_set_param*(value: PGValue, param: PGParamSpec){.cdecl, + dynlib: gliblib, importc: "g_value_set_param".} +proc g_value_get_param*(value: PGValue): PGParamSpec{.cdecl, dynlib: gliblib, + importc: "g_value_get_param".} +proc g_value_dup_param*(value: PGValue): PGParamSpec{.cdecl, dynlib: gliblib, + importc: "g_value_dup_param".} +proc g_value_set_param_take_ownership*(value: PGValue, param: PGParamSpec){. + cdecl, dynlib: gliblib, importc: "g_value_set_param_take_ownership".} +type + PGParamSpecTypeInfo* = ptr TGParamSpecTypeInfo + TGParamSpecTypeInfo* = record + instance_size*: guint16 + n_preallocs*: guint16 + instance_init*: proc (pspec: PGParamSpec){.cdecl.} + value_type*: GType + finalize*: proc (pspec: PGParamSpec){.cdecl.} + value_set_default*: proc (pspec: PGParamSpec, value: PGValue){.cdecl.} + value_validate*: proc (pspec: PGParamSpec, value: PGValue): gboolean{.cdecl.} + values_cmp*: proc (pspec: PGParamSpec, value1: PGValue, value2: PGValue): gint{. + cdecl.} + + +proc g_param_type_register_static*(name: cstring, + pspec_info: PGParamSpecTypeInfo): GType{. + cdecl, dynlib: gliblib, importc: "g_param_type_register_static".} +proc g_param_type_register_static_constant*(name: cstring, + pspec_info: PGParamSpecTypeInfo, opt_type: GType): GType{.cdecl, + dynlib: gliblib, importc: "`g_param_type_register_static_constant`".} +proc g_param_spec_internal*(param_type: GType, name: cstring, nick: cstring, + blurb: cstring, flags: TGParamFlags): gpointer{. + cdecl, dynlib: gliblib, importc: "g_param_spec_internal".} +proc g_param_spec_pool_new*(type_prefixing: gboolean): PGParamSpecPool{.cdecl, + dynlib: gliblib, importc: "g_param_spec_pool_new".} +proc g_param_spec_pool_insert*(pool: PGParamSpecPool, pspec: PGParamSpec, + owner_type: GType){.cdecl, dynlib: gliblib, + importc: "g_param_spec_pool_insert".} +proc g_param_spec_pool_remove*(pool: PGParamSpecPool, pspec: PGParamSpec){. + cdecl, dynlib: gliblib, importc: "g_param_spec_pool_remove".} +proc g_param_spec_pool_lookup*(pool: PGParamSpecPool, param_name: cstring, + owner_type: GType, walk_ancestors: gboolean): PGParamSpec{. + cdecl, dynlib: gliblib, importc: "g_param_spec_pool_lookup".} +proc g_param_spec_pool_list_owned*(pool: PGParamSpecPool, owner_type: GType): PGList{. + cdecl, dynlib: gliblib, importc: "g_param_spec_pool_list_owned".} +proc g_param_spec_pool_list*(pool: PGParamSpecPool, owner_type: GType, + n_pspecs_p: Pguint): PPGParamSpec{.cdecl, + dynlib: gliblib, importc: "g_param_spec_pool_list".} +type + PGClosure* = ptr TGClosure + PGClosureNotifyData* = ptr TGClosureNotifyData + TGClosureNotify* = proc (data: gpointer, closure: PGClosure){.cdecl.} + TGClosure* = record + flag0*: int32 + marshal*: proc (closure: PGClosure, return_value: PGValue, + n_param_values: guint, param_values: PGValue, + invocation_hint, marshal_data: gpointer){.cdecl.} + data*: gpointer + notifiers*: PGClosureNotifyData + + TGCallBackProcedure* = proc () {.cdecl.} + TGCallback* = proc () {.cdecl.} + TGClosureMarshal* = proc (closure: PGClosure, return_value: PGValue, + n_param_values: guint, param_values: PGValue, + invocation_hint: gpointer, marshal_data: gpointer){. + cdecl.} + TGClosureNotifyData* = record + data*: gpointer + notify*: TGClosureNotify + + +proc G_CLOSURE_NEEDS_MARSHAL*(closure: Pointer): bool +proc G_CLOSURE_N_NOTIFIERS*(cl: PGClosure): int32 +proc G_CCLOSURE_SWAP_DATA*(cclosure: PGClosure): int32 +proc G_CALLBACK*(f: pointer): TGCallback +const + bm_TGClosure_ref_count* = 0x00007FFF + bp_TGClosure_ref_count* = 0 + bm_TGClosure_meta_marshal* = 0x00008000 + bp_TGClosure_meta_marshal* = 15 + bm_TGClosure_n_guards* = 0x00010000 + bp_TGClosure_n_guards* = 16 + bm_TGClosure_n_fnotifiers* = 0x00060000 + bp_TGClosure_n_fnotifiers* = 17 + bm_TGClosure_n_inotifiers* = 0x07F80000 + bp_TGClosure_n_inotifiers* = 19 + bm_TGClosure_in_inotify* = 0x08000000 + bp_TGClosure_in_inotify* = 27 + bm_TGClosure_floating* = 0x10000000 + bp_TGClosure_floating* = 28 + bm_TGClosure_derivative_flag* = 0x20000000 + bp_TGClosure_derivative_flag* = 29 + bm_TGClosure_in_marshal* = 0x40000000 + bp_TGClosure_in_marshal* = 30 + bm_TGClosure_is_invalid* = 0x80000000 + bp_TGClosure_is_invalid* = 31 + +proc ref_count*(a: var TGClosure): guint +proc set_ref_count*(a: var TGClosure, ref_count: guint) +proc meta_marshal*(a: PGClosure): guint +proc set_meta_marshal*(a: var TGClosure, meta_marshal: guint) +proc n_guards*(a: PGClosure): guint +proc set_n_guards*(a: var TGClosure, n_guards: guint) +proc n_fnotifiers*(a: PGClosure): guint +proc set_n_fnotifiers*(a: var TGClosure, n_fnotifiers: guint) +proc n_inotifiers*(a: PGClosure): guint +proc in_inotify*(a: var TGClosure): guint +proc set_in_inotify*(a: var TGClosure, in_inotify: guint) +proc floating*(a: var TGClosure): guint +proc set_floating*(a: var TGClosure, floating: guint) +proc derivative_flag*(a: PGClosure): guint +proc set_derivative_flag*(a: var TGClosure, derivative_flag: guint) +proc in_marshal*(a: var TGClosure): guint +proc set_in_marshal*(a: var TGClosure, in_marshal: guint) +proc is_invalid*(a: var TGClosure): guint +proc set_is_invalid*(a: var TGClosure, is_invalid: guint) +type + PGCClosure* = ptr TGCClosure + TGCClosure* = record + closure*: TGClosure + callback*: gpointer + + +proc g_cclosure_new*(callback_func: TGCallback, user_data: gpointer, + destroy_data: TGClosureNotify): PGClosure{.cdecl, + dynlib: gliblib, importc: "g_cclosure_new".} +proc g_cclosure_new_swap*(callback_func: TGCallback, user_data: gpointer, + destroy_data: TGClosureNotify): PGClosure{.cdecl, + dynlib: gliblib, importc: "g_cclosure_new_swap".} +proc g_signal_type_cclosure_new*(itype: GType, struct_offset: guint): PGClosure{. + cdecl, dynlib: gliblib, importc: "g_signal_type_cclosure_new".} +proc g_closure_ref*(closure: PGClosure): PGClosure{.cdecl, dynlib: gliblib, + importc: "g_closure_ref".} +proc g_closure_sink*(closure: PGClosure){.cdecl, dynlib: gliblib, + importc: "g_closure_sink".} +proc g_closure_unref*(closure: PGClosure){.cdecl, dynlib: gliblib, + importc: "g_closure_unref".} +proc g_closure_new_simple*(sizeof_closure: guint, data: gpointer): PGClosure{. + cdecl, dynlib: gliblib, importc: "g_closure_new_simple".} +proc g_closure_add_finalize_notifier*(closure: PGClosure, notify_data: gpointer, + notify_func: TGClosureNotify){.cdecl, + dynlib: gliblib, importc: "g_closure_add_finalize_notifier".} +proc g_closure_remove_finalize_notifier*(closure: PGClosure, + notify_data: gpointer, notify_func: TGClosureNotify){.cdecl, + dynlib: gliblib, importc: "g_closure_remove_finalize_notifier".} +proc g_closure_add_invalidate_notifier*(closure: PGClosure, + notify_data: gpointer, + notify_func: TGClosureNotify){.cdecl, + dynlib: gliblib, importc: "g_closure_add_invalidate_notifier".} +proc g_closure_remove_invalidate_notifier*(closure: PGClosure, + notify_data: gpointer, notify_func: TGClosureNotify){.cdecl, + dynlib: gliblib, importc: "g_closure_remove_invalidate_notifier".} +proc g_closure_add_marshal_guards*(closure: PGClosure, + pre_marshal_data: gpointer, + pre_marshal_notify: TGClosureNotify, + post_marshal_data: gpointer, + post_marshal_notify: TGClosureNotify){.cdecl, + dynlib: gliblib, importc: "g_closure_add_marshal_guards".} +proc g_closure_set_marshal*(closure: PGClosure, marshal: TGClosureMarshal){. + cdecl, dynlib: gliblib, importc: "g_closure_set_marshal".} +proc g_closure_set_meta_marshal*(closure: PGClosure, marshal_data: gpointer, + meta_marshal: TGClosureMarshal){.cdecl, + dynlib: gliblib, importc: "g_closure_set_meta_marshal".} +proc g_closure_invalidate*(closure: PGClosure){.cdecl, dynlib: gliblib, + importc: "g_closure_invalidate".} +proc g_closure_invoke*(closure: PGClosure, return_value: PGValue, + n_param_values: guint, param_values: PGValue, + invocation_hint: gpointer){.cdecl, dynlib: gliblib, + importc: "g_closure_invoke".} +type + PGSignalInvocationHint* = ptr TGSignalInvocationHint + PGSignalCMarshaller* = ptr TGSignalCMarshaller + TGSignalCMarshaller* = TGClosureMarshal + TGSignalEmissionHook* = proc (ihint: PGSignalInvocationHint, + n_param_values: guint, param_values: PGValue, + data: gpointer): gboolean{.cdecl.} + TGSignalAccumulator* = proc (ihint: PGSignalInvocationHint, + return_accu: PGValue, handler_return: PGValue, + data: gpointer): gboolean{.cdecl.} + PGSignalFlags* = ptr TGSignalFlags + TGSignalFlags* = int32 + TGSignalInvocationHint* = record + signal_id*: guint + detail*: TGQuark + run_type*: TGSignalFlags + + PGSignalQuery* = ptr TGSignalQuery + TGSignalQuery* = record + signal_id*: guint + signal_name*: cstring + itype*: GType + signal_flags*: TGSignalFlags + return_type*: GType + n_params*: guint + param_types*: PGType + + +const + G_SIGNAL_RUN_FIRST* = 1 shl 0 + G_SIGNAL_RUN_LAST* = 1 shl 1 + G_SIGNAL_RUN_CLEANUP* = 1 shl 2 + G_SIGNAL_NO_RECURSE* = 1 shl 3 + G_SIGNAL_DETAILED* = 1 shl 4 + G_SIGNAL_ACTION* = 1 shl 5 + G_SIGNAL_NO_HOOKS* = 1 shl 6 + G_SIGNAL_FLAGS_MASK* = 0x0000007F + +type + PGConnectFlags* = ptr TGConnectFlags + TGConnectFlags* = int32 + +const + G_CONNECT_AFTER* = 1 shl 0 + G_CONNECT_SWAPPED* = 1 shl 1 + +type + PGSignalMatchType* = ptr TGSignalMatchType + TGSignalMatchType* = int32 + +const + G_SIGNAL_MATCH_ID* = 1 shl 0 + G_SIGNAL_MATCH_DETAIL* = 1 shl 1 + G_SIGNAL_MATCH_CLOSURE* = 1 shl 2 + G_SIGNAL_MATCH_FUNC* = 1 shl 3 + G_SIGNAL_MATCH_DATA* = 1 shl 4 + G_SIGNAL_MATCH_UNBLOCKED* = 1 shl 5 + G_SIGNAL_MATCH_MASK* = 0x0000003F + G_SIGNAL_TYPE_STATIC_SCOPE* = G_TYPE_FLAG_RESERVED_ID_BIT + +proc g_signal_newv*(signal_name: cstring, itype: GType, + signal_flags: TGSignalFlags, class_closure: PGClosure, + accumulator: TGSignalAccumulator, accu_data: gpointer, + c_marshaller: TGSignalCMarshaller, return_type: GType, + n_params: guint, param_types: PGType): guint{.cdecl, + dynlib: gobjectlib, importc: "g_signal_newv".} +proc g_signal_emitv*(instance_and_params: PGValue, signal_id: guint, + detail: TGQuark, return_value: PGValue){.cdecl, + dynlib: gobjectlib, importc: "g_signal_emitv".} +proc g_signal_lookup*(name: cstring, itype: GType): guint{.cdecl, + dynlib: gobjectlib, importc: "g_signal_lookup".} +proc g_signal_name*(signal_id: guint): cstring{.cdecl, dynlib: gobjectlib, + importc: "g_signal_name".} +proc g_signal_query*(signal_id: guint, query: PGSignalQuery){.cdecl, + dynlib: gobjectlib, importc: "g_signal_query".} +proc g_signal_list_ids*(itype: GType, n_ids: Pguint): Pguint{.cdecl, + dynlib: gobjectlib, importc: "g_signal_list_ids".} +proc g_signal_parse_name*(detailed_signal: cstring, itype: GType, + signal_id_p: Pguint, detail_p: PGQuark, + force_detail_quark: gboolean): gboolean{.cdecl, + dynlib: gobjectlib, importc: "g_signal_parse_name".} +proc g_signal_get_invocation_hint*(instance: gpointer): PGSignalInvocationHint{. + cdecl, dynlib: gobjectlib, importc: "g_signal_get_invocation_hint".} +proc g_signal_stop_emission*(instance: gpointer, signal_id: guint, + detail: TGQuark){.cdecl, dynlib: gobjectlib, + importc: "g_signal_stop_emission".} +proc g_signal_stop_emission_by_name*(instance: gpointer, + detailed_signal: cstring){.cdecl, + dynlib: gobjectlib, importc: "g_signal_stop_emission_by_name".} +proc g_signal_add_emission_hook*(signal_id: guint, quark: TGQuark, + hook_func: TGSignalEmissionHook, + hook_data: gpointer, + data_destroy: TGDestroyNotify): gulong{.cdecl, + dynlib: gobjectlib, importc: "g_signal_add_emission_hook".} +proc g_signal_remove_emission_hook*(signal_id: guint, hook_id: gulong){.cdecl, + dynlib: gobjectlib, importc: "g_signal_remove_emission_hook".} +proc g_signal_has_handler_pending*(instance: gpointer, signal_id: guint, + detail: TGQuark, may_be_blocked: gboolean): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_signal_has_handler_pending".} +proc g_signal_connect_closure_by_id*(instance: gpointer, signal_id: guint, + detail: TGQuark, closure: PGClosure, + after: gboolean): gulong{.cdecl, + dynlib: gobjectlib, importc: "g_signal_connect_closure_by_id".} +proc g_signal_connect_closure*(instance: gpointer, detailed_signal: cstring, + closure: PGClosure, after: gboolean): gulong{. + cdecl, dynlib: gobjectlib, importc: "g_signal_connect_closure".} +proc g_signal_connect_data*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer, + destroy_data: TGClosureNotify, + connect_flags: TGConnectFlags): gulong{.cdecl, + dynlib: gobjectlib, importc: "g_signal_connect_data".} +proc g_signal_handler_block*(instance: gpointer, handler_id: gulong){.cdecl, + dynlib: gobjectlib, importc: "g_signal_handler_block".} +proc g_signal_handler_unblock*(instance: gpointer, handler_id: gulong){.cdecl, + dynlib: gobjectlib, importc: "g_signal_handler_unblock".} +proc g_signal_handler_disconnect*(instance: gpointer, handler_id: gulong){. + cdecl, dynlib: gobjectlib, importc: "g_signal_handler_disconnect".} +proc g_signal_handler_is_connected*(instance: gpointer, handler_id: gulong): gboolean{. + cdecl, dynlib: gobjectlib, importc: "g_signal_handler_is_connected".} +proc g_signal_handler_find*(instance: gpointer, mask: TGSignalMatchType, + signal_id: guint, detail: TGQuark, + closure: PGClosure, func: gpointer, data: gpointer): gulong{. + cdecl, dynlib: gobjectlib, importc: "g_signal_handler_find".} +proc g_signal_handlers_block_matched*(instance: gpointer, + mask: TGSignalMatchType, signal_id: guint, + detail: TGQuark, closure: PGClosure, + func: gpointer, data: gpointer): guint{. + cdecl, dynlib: gobjectlib, importc: "g_signal_handlers_block_matched".} +proc g_signal_handlers_unblock_matched*(instance: gpointer, + mask: TGSignalMatchType, + signal_id: guint, detail: TGQuark, + closure: PGClosure, func: gpointer, + data: gpointer): guint{.cdecl, + dynlib: gobjectlib, importc: "g_signal_handlers_unblock_matched".} +proc g_signal_handlers_disconnect_matched*(instance: gpointer, + mask: TGSignalMatchType, signal_id: guint, detail: TGQuark, + closure: PGClosure, func: gpointer, data: gpointer): guint{.cdecl, + dynlib: gobjectlib, importc: "g_signal_handlers_disconnect_matched".} +proc g_signal_override_class_closure*(signal_id: guint, instance_type: GType, + class_closure: PGClosure){.cdecl, + dynlib: gobjectlib, importc: "g_signal_override_class_closure".} +proc g_signal_chain_from_overridden*(instance_and_params: PGValue, + return_value: PGValue){.cdecl, + dynlib: gobjectlib, importc: "g_signal_chain_from_overridden".} +proc g_signal_connect*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer): gulong +proc g_signal_connect_after*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer): gulong +proc g_signal_connect_swapped*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer): gulong +proc g_signal_handlers_disconnect_by_func*(instance: gpointer, + func, data: gpointer): guint +proc g_signal_handlers_block_by_func*(instance: gpointer, func, data: gpointer) +proc g_signal_handlers_unblock_by_func*(instance: gpointer, func, data: gpointer) +proc g_signal_handlers_destroy*(instance: gpointer){.cdecl, dynlib: gobjectlib, + importc: "g_signal_handlers_destroy".} +proc g_signals_destroy*(itype: GType){.cdecl, dynlib: gobjectlib, + importc: "`g_signals_destroy`".} +type + TGTypePluginUse* = proc (plugin: PGTypePlugin){.cdecl.} + TGTypePluginUnuse* = proc (plugin: PGTypePlugin){.cdecl.} + TGTypePluginCompleteTypeInfo* = proc (plugin: PGTypePlugin, g_type: GType, + info: PGTypeInfo, + value_table: PGTypeValueTable){.cdecl.} + TGTypePluginCompleteInterfaceInfo* = proc (plugin: PGTypePlugin, + instance_type: GType, interface_type: GType, info: PGInterfaceInfo){.cdecl.} + PGTypePluginClass* = ptr TGTypePluginClass + TGTypePluginClass* = record + base_iface*: TGTypeInterface + use_plugin*: TGTypePluginUse + unuse_plugin*: TGTypePluginUnuse + complete_type_info*: TGTypePluginCompleteTypeInfo + complete_interface_info*: TGTypePluginCompleteInterfaceInfo + + +proc G_TYPE_TYPE_PLUGIN*(): GType +proc G_TYPE_PLUGIN*(inst: Pointer): PGTypePlugin +proc G_TYPE_PLUGIN_CLASS*(vtable: Pointer): PGTypePluginClass +proc G_IS_TYPE_PLUGIN*(inst: Pointer): bool +proc G_IS_TYPE_PLUGIN_CLASS*(vtable: Pointer): bool +proc G_TYPE_PLUGIN_GET_CLASS*(inst: Pointer): PGTypePluginClass +proc g_type_plugin_get_type*(): GType{.cdecl, dynlib: gliblib, + importc: "g_type_plugin_get_type".} +proc g_type_plugin_use*(plugin: PGTypePlugin){.cdecl, dynlib: gliblib, + importc: "g_type_plugin_use".} +proc g_type_plugin_unuse*(plugin: PGTypePlugin){.cdecl, dynlib: gliblib, + importc: "g_type_plugin_unuse".} +proc g_type_plugin_complete_type_info*(plugin: PGTypePlugin, g_type: GType, + info: PGTypeInfo, + value_table: PGTypeValueTable){.cdecl, + dynlib: gliblib, importc: "g_type_plugin_complete_type_info".} +proc g_type_plugin_complete_interface_info*(plugin: PGTypePlugin, + instance_type: GType, interface_type: GType, info: PGInterfaceInfo){.cdecl, + dynlib: gliblib, importc: "g_type_plugin_complete_interface_info".} +type + PGObject* = ptr TGObject + TGObject* {.pure.} = object + g_type_instance*: TGTypeInstance + ref_count*: guint + qdata*: PGData + + TGObjectGetPropertyFunc* = proc (anObject: PGObject, property_id: guint, + value: PGValue, pspec: PGParamSpec){.cdecl.} + TGObjectSetPropertyFunc* = proc (anObject: PGObject, property_id: guint, + value: PGValue, pspec: PGParamSpec){.cdecl.} + TGObjectFinalizeFunc* = proc (anObject: PGObject){.cdecl.} + TGWeakNotify* = proc (data: gpointer, where_the_object_was: PGObject){.cdecl.} + PGObjectConstructParam* = ptr TGObjectConstructParam + PGObjectClass* = ptr TGObjectClass + TGObjectClass* {.pure.} = object + g_type_class*: TGTypeClass + construct_properties*: PGSList + constructor*: proc (theType: GType, n_construct_properties: guint, + construct_properties: PGObjectConstructParam): PGObject{. + cdecl.} + set_property*: proc (anObject: PGObject, property_id: guint, value: PGValue, + pspec: PGParamSpec){.cdecl.} + get_property*: proc (anObject: PGObject, property_id: guint, value: PGValue, + pspec: PGParamSpec){.cdecl.} + dispose*: proc (anObject: PGObject){.cdecl.} + finalize*: proc (anObject: PGObject){.cdecl.} + dispatch_properties_changed*: proc (anObject: PGObject, n_pspecs: guint, + pspecs: PPGParamSpec){.cdecl.} + notify*: proc (anObject: PGObject, pspec: PGParamSpec){.cdecl.} + pdummy*: array[0..7, gpointer] + + TGObjectConstructParam* = record + pspec*: PGParamSpec + value*: PGValue + + +proc G_TYPE_IS_OBJECT*(theType: GType): bool +proc G_OBJECT*(anObject: pointer): PGObject +proc G_OBJECT_CLASS*(class: Pointer): PGObjectClass +proc G_IS_OBJECT*(anObject: pointer): bool +proc G_IS_OBJECT_CLASS*(class: Pointer): bool +proc G_OBJECT_GET_CLASS*(anObject: pointer): PGObjectClass +proc G_OBJECT_TYPE*(anObject: pointer): GType +proc G_OBJECT_TYPE_NAME*(anObject: pointer): cstring +proc G_OBJECT_CLASS_TYPE*(class: Pointer): GType +proc G_OBJECT_CLASS_NAME*(class: Pointer): cstring +proc G_VALUE_HOLDS_OBJECT*(value: Pointer): bool +proc g_object_class_install_property*(oclass: PGObjectClass, property_id: guint, + pspec: PGParamSpec){.cdecl, + dynlib: gobjectlib, importc: "g_object_class_install_property".} +proc g_object_class_find_property*(oclass: PGObjectClass, property_name: cstring): PGParamSpec{. + cdecl, dynlib: gobjectlib, importc: "g_object_class_find_property".} +proc g_object_class_list_properties*(oclass: PGObjectClass, n_properties: Pguint): PPGParamSpec{. + cdecl, dynlib: gobjectlib, importc: "g_object_class_list_properties".} +proc g_object_set_property*(anObject: PGObject, property_name: cstring, + value: PGValue){.cdecl, dynlib: gobjectlib, + importc: "g_object_set_property".} +proc g_object_get_property*(anObject: PGObject, property_name: cstring, + value: PGValue){.cdecl, dynlib: gobjectlib, + importc: "g_object_get_property".} +proc g_object_freeze_notify*(anObject: PGObject){.cdecl, dynlib: gobjectlib, + importc: "g_object_freeze_notify".} +proc g_object_notify*(anObject: PGObject, property_name: cstring){.cdecl, + dynlib: gobjectlib, importc: "g_object_notify".} +proc g_object_thaw_notify*(anObject: PGObject){.cdecl, dynlib: gobjectlib, + importc: "g_object_thaw_notify".} +proc g_object_ref*(anObject: gpointer): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_object_ref".} +proc g_object_unref*(anObject: gpointer){.cdecl, dynlib: gobjectlib, + importc: "g_object_unref".} +proc g_object_weak_ref*(anObject: PGObject, notify: TGWeakNotify, data: gpointer){. + cdecl, dynlib: gobjectlib, importc: "g_object_weak_ref".} +proc g_object_weak_unref*(anObject: PGObject, notify: TGWeakNotify, + data: gpointer){.cdecl, dynlib: gobjectlib, + importc: "g_object_weak_unref".} +proc g_object_add_weak_pointer*(anObject: PGObject, + weak_pointer_location: Pgpointer){.cdecl, + dynlib: gobjectlib, importc: "g_object_add_weak_pointer".} +proc g_object_remove_weak_pointer*(anObject: PGObject, + weak_pointer_location: Pgpointer){.cdecl, + dynlib: gobjectlib, importc: "g_object_remove_weak_pointer".} +proc g_object_get_qdata*(anObject: PGObject, quark: TGQuark): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_object_get_qdata".} +proc g_object_set_qdata*(anObject: PGObject, quark: TGQuark, data: gpointer){. + cdecl, dynlib: gobjectlib, importc: "g_object_set_qdata".} +proc g_object_set_qdata_full*(anObject: PGObject, quark: TGQuark, + data: gpointer, destroy: TGDestroyNotify){.cdecl, + dynlib: gobjectlib, importc: "g_object_set_qdata_full".} +proc g_object_steal_qdata*(anObject: PGObject, quark: TGQuark): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_object_steal_qdata".} +proc g_object_get_data*(anObject: PGObject, key: cstring): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_object_get_data".} +proc g_object_set_data*(anObject: PGObject, key: cstring, data: gpointer){. + cdecl, dynlib: gobjectlib, importc: "g_object_set_data".} +proc g_object_set_data_full*(anObject: PGObject, key: cstring, data: gpointer, + destroy: TGDestroyNotify){.cdecl, + dynlib: gobjectlib, importc: "g_object_set_data_full".} +proc g_object_steal_data*(anObject: PGObject, key: cstring): gpointer{.cdecl, + dynlib: gobjectlib, importc: "g_object_steal_data".} +proc g_object_watch_closure*(anObject: PGObject, closure: PGClosure){.cdecl, + dynlib: gobjectlib, importc: "g_object_watch_closure".} +proc g_cclosure_new_object*(callback_func: TGCallback, anObject: PGObject): PGClosure{. + cdecl, dynlib: gobjectlib, importc: "g_cclosure_new_object".} +proc g_cclosure_new_object_swap*(callback_func: TGCallback, anObject: PGObject): PGClosure{. + cdecl, dynlib: gobjectlib, importc: "g_cclosure_new_object_swap".} +proc g_closure_new_object*(sizeof_closure: guint, anObject: PGObject): PGClosure{. + cdecl, dynlib: gobjectlib, importc: "g_closure_new_object".} +proc g_value_set_object*(value: PGValue, v_object: gpointer){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_object".} +proc g_value_get_object*(value: PGValue): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_object".} +proc g_value_dup_object*(value: PGValue): PGObject{.cdecl, dynlib: gobjectlib, + importc: "g_value_dup_object".} +proc g_signal_connect_object*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, gobject: gpointer, + connect_flags: TGConnectFlags): gulong{.cdecl, + dynlib: gobjectlib, importc: "g_signal_connect_object".} +proc g_object_run_dispose*(anObject: PGObject){.cdecl, dynlib: gobjectlib, + importc: "g_object_run_dispose".} +proc g_value_set_object_take_ownership*(value: PGValue, v_object: gpointer){. + cdecl, dynlib: gobjectlib, importc: "g_value_set_object_take_ownership".} +proc G_OBJECT_WARN_INVALID_PSPEC*(anObject: gpointer, pname: cstring, + property_id: gint, pspec: gpointer) +proc G_OBJECT_WARN_INVALID_PROPERTY_ID*(anObject: gpointer, property_id: gint, + pspec: gpointer) +type + G_FLAGS_TYPE* = GType + +const + G_E* = 2.7182818284590451 + G_LN2* = 0.6931471805599452 + G_LN10* = 2.3025850929940455 + G_PI* = 3.1415926535897936 + G_PI_2* = 1.5707963267948968 + G_PI_4* = 0.7853981633974483 + G_SQRT2* = 1.4142135623730951 + G_LITTLE_ENDIAN* = 1234 + G_BIG_ENDIAN* = 4321 + G_PDP_ENDIAN* = 3412 + +proc GUINT16_SWAP_LE_BE_CONSTANT*(val: guint16): guint16 +proc GUINT32_SWAP_LE_BE_CONSTANT*(val: guint32): guint32 +type + PGEnumClass* = ptr TGEnumClass + PGEnumValue* = ptr TGEnumValue + TGEnumClass* = record + g_type_class*: TGTypeClass + minimum*: gint + maximum*: gint + n_values*: guint + values*: PGEnumValue + + TGEnumValue* = record + value*: gint + value_name*: cstring + value_nick*: cstring + + PGFlagsClass* = ptr TGFlagsClass + PGFlagsValue* = ptr TGFlagsValue + TGFlagsClass* = record + g_type_class*: TGTypeClass + mask*: guint + n_values*: guint + values*: PGFlagsValue + + TGFlagsValue* = record + value*: guint + value_name*: cstring + value_nick*: cstring + + +proc G_TYPE_IS_ENUM*(theType: GType): gboolean +proc G_ENUM_CLASS*(class: pointer): PGEnumClass +proc G_IS_ENUM_CLASS*(class: pointer): gboolean +proc G_ENUM_CLASS_TYPE*(class: pointer): GType +proc G_ENUM_CLASS_TYPE_NAME*(class: pointer): cstring +proc G_TYPE_IS_FLAGS*(theType: GType): gboolean +proc G_FLAGS_CLASS*(class: pointer): PGFlagsClass +proc G_IS_FLAGS_CLASS*(class: pointer): gboolean +proc G_FLAGS_CLASS_TYPE*(class: pointer): GType +proc G_FLAGS_CLASS_TYPE_NAME*(class: pointer): cstring +proc G_VALUE_HOLDS_ENUM*(value: pointer): gboolean +proc G_VALUE_HOLDS_FLAGS*(value: pointer): gboolean +proc g_enum_get_value*(enum_class: PGEnumClass, value: gint): PGEnumValue{. + cdecl, dynlib: gliblib, importc: "g_enum_get_value".} +proc g_enum_get_value_by_name*(enum_class: PGEnumClass, name: cstring): PGEnumValue{. + cdecl, dynlib: gliblib, importc: "g_enum_get_value_by_name".} +proc g_enum_get_value_by_nick*(enum_class: PGEnumClass, nick: cstring): PGEnumValue{. + cdecl, dynlib: gliblib, importc: "g_enum_get_value_by_nick".} +proc g_flags_get_first_value*(flags_class: PGFlagsClass, value: guint): PGFlagsValue{. + cdecl, dynlib: gliblib, importc: "g_flags_get_first_value".} +proc g_flags_get_value_by_name*(flags_class: PGFlagsClass, name: cstring): PGFlagsValue{. + cdecl, dynlib: gliblib, importc: "g_flags_get_value_by_name".} +proc g_flags_get_value_by_nick*(flags_class: PGFlagsClass, nick: cstring): PGFlagsValue{. + cdecl, dynlib: gliblib, importc: "g_flags_get_value_by_nick".} +proc g_value_set_enum*(value: PGValue, v_enum: gint){.cdecl, dynlib: gliblib, + importc: "g_value_set_enum".} +proc g_value_get_enum*(value: PGValue): gint{.cdecl, dynlib: gliblib, + importc: "g_value_get_enum".} +proc g_value_set_flags*(value: PGValue, v_flags: guint){.cdecl, dynlib: gliblib, + importc: "g_value_set_flags".} +proc g_value_get_flags*(value: PGValue): guint{.cdecl, dynlib: gliblib, + importc: "g_value_get_flags".} +proc g_enum_register_static*(name: cstring, const_static_values: PGEnumValue): GType{. + cdecl, dynlib: gliblib, importc: "g_enum_register_static".} +proc g_flags_register_static*(name: cstring, const_static_values: PGFlagsValue): GType{. + cdecl, dynlib: gliblib, importc: "g_flags_register_static".} +proc g_enum_complete_type_info*(g_enum_type: GType, info: PGTypeInfo, + const_values: PGEnumValue){.cdecl, + dynlib: gliblib, importc: "g_enum_complete_type_info".} +proc g_flags_complete_type_info*(g_flags_type: GType, info: PGTypeInfo, + const_values: PGFlagsValue){.cdecl, + dynlib: gliblib, importc: "g_flags_complete_type_info".} +const + G_MINFLOAT* = 0.0 + G_MAXFLOAT* = 1.6999999999999995E308 + G_MINDOUBLE* = G_MINFLOAT + G_MAXDOUBLE* = G_MAXFLOAT + G_MAXSHORT* = 32767 + G_MINSHORT* = - G_MAXSHORT - 1 + G_MAXUSHORT* = 2 * G_MAXSHORT + 1 + G_MAXINT* = 2147483647 + G_MININT* = - G_MAXINT - 1 + G_MAXUINT* = 4294967295 + G_MINLONG* = G_MININT + G_MAXLONG* = G_MAXINT + G_MAXULONG* = G_MAXUINT + G_MAXINT64* = high(int64) + G_MININT64* = low(int64) + +const + G_GINT16_FORMAT* = "hi" + G_GUINT16_FORMAT* = "hu" + G_GINT32_FORMAT* = 'i' + G_GUINT32_FORMAT* = 'u' + G_HAVE_GINT64* = 1 + G_GINT64_FORMAT* = "I64i" + G_GUINT64_FORMAT* = "I64u" + GLIB_SIZEOF_VOID_P* = SizeOf(Pointer) + GLIB_SIZEOF_LONG* = SizeOf(int32) + GLIB_SIZEOF_SIZE_T* = SizeOf(int32) + +type + PGSystemThread* = ptr TGSystemThread + TGSystemThread* = record + data*: array[0..3, char] + dummy_double*: float64 + dummy_pointer*: pointer + dummy_long*: int32 + + +const + GLIB_SYSDEF_POLLIN* = 1 + GLIB_SYSDEF_POLLOUT* = 4 + GLIB_SYSDEF_POLLPRI* = 2 + GLIB_SYSDEF_POLLERR* = 8 + GLIB_SYSDEF_POLLHUP* = 16 + GLIB_SYSDEF_POLLNVAL* = 32 + +proc GUINT_TO_POINTER*(i: guint): pointer +type + PGAsciiType* = ptr TGAsciiType + TGAsciiType* = int32 + +const + G_ASCII_ALNUM* = 1 shl 0 + G_ASCII_ALPHA* = 1 shl 1 + G_ASCII_CNTRL* = 1 shl 2 + G_ASCII_DIGIT* = 1 shl 3 + G_ASCII_GRAPH* = 1 shl 4 + G_ASCII_LOWER* = 1 shl 5 + G_ASCII_PRINT* = 1 shl 6 + G_ASCII_PUNCT* = 1 shl 7 + G_ASCII_SPACE* = 1 shl 8 + G_ASCII_UPPER* = 1 shl 9 + G_ASCII_XDIGIT* = 1 shl 10 + +proc g_ascii_tolower*(c: gchar): gchar{.cdecl, dynlib: gliblib, + importc: "g_ascii_tolower".} +proc g_ascii_toupper*(c: gchar): gchar{.cdecl, dynlib: gliblib, + importc: "g_ascii_toupper".} +proc g_ascii_digit_value*(c: gchar): gint{.cdecl, dynlib: gliblib, + importc: "g_ascii_digit_value".} +proc g_ascii_xdigit_value*(c: gchar): gint{.cdecl, dynlib: gliblib, + importc: "g_ascii_xdigit_value".} +const + G_STR_DELIMITERS* = "``-|> <." + +proc g_strdelimit*(str: cstring, delimiters: cstring, new_delimiter: gchar): cstring{. + cdecl, dynlib: gliblib, importc: "g_strdelimit".} +proc g_strcanon*(str: cstring, valid_chars: cstring, substitutor: gchar): cstring{. + cdecl, dynlib: gliblib, importc: "g_strcanon".} +proc g_strerror*(errnum: gint): cstring{.cdecl, dynlib: gliblib, + importc: "g_strerror".} +proc g_strsignal*(signum: gint): cstring{.cdecl, dynlib: gliblib, + importc: "g_strsignal".} +proc g_strreverse*(str: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_strreverse".} +proc g_strlcpy*(dest: cstring, src: cstring, dest_size: gsize): gsize{.cdecl, + dynlib: gliblib, importc: "g_strlcpy".} +proc g_strlcat*(dest: cstring, src: cstring, dest_size: gsize): gsize{.cdecl, + dynlib: gliblib, importc: "g_strlcat".} +proc g_strstr_len*(haystack: cstring, haystack_len: gssize, needle: cstring): cstring{. + cdecl, dynlib: gliblib, importc: "g_strstr_len".} +proc g_strrstr*(haystack: cstring, needle: cstring): cstring{.cdecl, + dynlib: gliblib, importc: "g_strrstr".} +proc g_strrstr_len*(haystack: cstring, haystack_len: gssize, needle: cstring): cstring{. + cdecl, dynlib: gliblib, importc: "g_strrstr_len".} +proc g_str_has_suffix*(str: cstring, suffix: cstring): gboolean{.cdecl, + dynlib: gliblib, importc: "g_str_has_suffix".} +proc g_str_has_prefix*(str: cstring, prefix: cstring): gboolean{.cdecl, + dynlib: gliblib, importc: "g_str_has_prefix".} +proc g_strtod*(nptr: cstring, endptr: PPgchar): gdouble{.cdecl, dynlib: gliblib, + importc: "g_strtod".} +proc g_ascii_strtod*(nptr: cstring, endptr: PPgchar): gdouble{.cdecl, + dynlib: gliblib, importc: "g_ascii_strtod".} +const + G_ASCII_DTOSTR_BUF_SIZE* = 29 + 10 + +proc g_ascii_dtostr*(buffer: cstring, buf_len: gint, d: gdouble): cstring{. + cdecl, dynlib: gliblib, importc: "g_ascii_dtostr".} +proc g_ascii_formatd*(buffer: cstring, buf_len: gint, format: cstring, + d: gdouble): cstring{.cdecl, dynlib: gliblib, + importc: "g_ascii_formatd".} +proc g_strchug*(str: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_strchug".} +proc g_strchomp*(str: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_strchomp".} +proc g_ascii_strcasecmp*(s1: cstring, s2: cstring): gint{.cdecl, + dynlib: gliblib, importc: "g_ascii_strcasecmp".} +proc g_ascii_strncasecmp*(s1: cstring, s2: cstring, n: gsize): gint{.cdecl, + dynlib: gliblib, importc: "g_ascii_strncasecmp".} +proc g_ascii_strdown*(str: cstring, len: gssize): cstring{.cdecl, + dynlib: gliblib, importc: "g_ascii_strdown".} +proc g_ascii_strup*(str: cstring, len: gssize): cstring{.cdecl, dynlib: gliblib, + importc: "g_ascii_strup".} +proc g_strdup*(str: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_strdup".} +proc g_strndup*(str: cstring, n: gsize): cstring{.cdecl, dynlib: gliblib, + importc: "g_strndup".} +proc g_strnfill*(length: gsize, fill_char: gchar): cstring{.cdecl, + dynlib: gliblib, importc: "g_strnfill".} +proc g_strcompress*(source: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_strcompress".} +proc g_strescape*(source: cstring, exceptions: cstring): cstring{.cdecl, + dynlib: gliblib, importc: "g_strescape".} +proc g_memdup*(mem: gconstpointer, byte_size: guint): gpointer{.cdecl, + dynlib: gliblib, importc: "g_memdup".} +proc g_strsplit*(str: cstring, delimiter: cstring, max_tokens: gint): PPgchar{. + cdecl, dynlib: gliblib, importc: "g_strsplit".} +proc g_strjoinv*(separator: cstring, str_array: PPgchar): cstring{.cdecl, + dynlib: gliblib, importc: "g_strjoinv".} +proc g_strfreev*(str_array: PPgchar){.cdecl, dynlib: gliblib, + importc: "g_strfreev".} +proc g_strdupv*(str_array: PPgchar): PPgchar{.cdecl, dynlib: gliblib, + importc: "g_strdupv".} +proc g_stpcpy*(dest: cstring, src: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_stpcpy".} +proc g_get_user_name*(): cstring{.cdecl, dynlib: gliblib, + importc: "g_get_user_name".} +proc g_get_real_name*(): cstring{.cdecl, dynlib: gliblib, + importc: "g_get_real_name".} +proc g_get_home_dir*(): cstring{.cdecl, dynlib: gliblib, + importc: "g_get_home_dir".} +proc g_get_tmp_dir*(): cstring{.cdecl, dynlib: gliblib, importc: "g_get_tmp_dir".} +proc g_get_prgname*(): cstring{.cdecl, dynlib: gliblib, importc: "g_get_prgname".} +proc g_set_prgname*(prgname: cstring){.cdecl, dynlib: gliblib, + importc: "g_set_prgname".} +type + PGDebugKey* = ptr TGDebugKey + TGDebugKey* = record + key*: cstring + value*: guint + + +proc g_parse_debug_string*(str: cstring, keys: PGDebugKey, nkeys: guint): guint{. + cdecl, dynlib: gliblib, importc: "g_parse_debug_string".} +proc g_path_is_absolute*(file_name: cstring): gboolean{.cdecl, dynlib: gliblib, + importc: "g_path_is_absolute".} +proc g_path_skip_root*(file_name: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_path_skip_root".} +proc g_basename*(file_name: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_basename".} +proc g_dirname*(file_name: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_path_get_dirname".} +proc g_get_current_dir*(): cstring{.cdecl, dynlib: gliblib, + importc: "g_get_current_dir".} +proc g_path_get_basename*(file_name: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_path_get_basename".} +proc g_path_get_dirname*(file_name: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_path_get_dirname".} +proc g_nullify_pointer*(nullify_location: Pgpointer){.cdecl, dynlib: gliblib, + importc: "g_nullify_pointer".} +proc g_getenv*(variable: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_getenv".} +type + TGVoidFunc* = proc (){.cdecl.} + +proc g_atexit*(func: TGVoidFunc){.cdecl, dynlib: gliblib, importc: "g_atexit".} +proc g_find_program_in_path*(program: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_find_program_in_path".} +proc g_bit_nth_lsf*(mask: gulong, nth_bit: gint): gint{.cdecl, dynlib: gliblib, + importc: "g_bit_nth_lsf".} +proc g_bit_nth_msf*(mask: gulong, nth_bit: gint): gint{.cdecl, dynlib: gliblib, + importc: "g_bit_nth_msf".} +proc g_bit_storage*(number: gulong): guint{.cdecl, dynlib: gliblib, + importc: "g_bit_storage".} +type + PPGTrashStack* = ptr PGTrashStack + PGTrashStack* = ptr TGTrashStack + TGTrashStack* = record + next*: PGTrashStack + + +proc g_trash_stack_push*(stack_p: PPGTrashStack, data_p: gpointer){.cdecl, + dynlib: gliblib, importc: "g_trash_stack_push".} +proc g_trash_stack_pop*(stack_p: PPGTrashStack): gpointer{.cdecl, + dynlib: gliblib, importc: "g_trash_stack_pop".} +proc g_trash_stack_peek*(stack_p: PPGTrashStack): gpointer{.cdecl, + dynlib: gliblib, importc: "g_trash_stack_peek".} +proc g_trash_stack_height*(stack_p: PPGTrashStack): guint{.cdecl, + dynlib: gliblib, importc: "g_trash_stack_height".} +type + PGHashTable* = pointer + TGHRFunc* = proc (key, value, user_data: gpointer): gboolean{.cdecl.} + +proc g_hash_table_new*(hash_func: TGHashFunc, key_equal_func: TGEqualFunc): PGHashTable{. + cdecl, dynlib: gliblib, importc: "g_hash_table_new".} +proc g_hash_table_new_full*(hash_func: TGHashFunc, key_equal_func: TGEqualFunc, + key_destroy_func: TGDestroyNotify, + value_destroy_func: TGDestroyNotify): PGHashTable{. + cdecl, dynlib: gliblib, importc: "g_hash_table_new_full".} +proc g_hash_table_destroy*(hash_table: PGHashTable){.cdecl, dynlib: gliblib, + importc: "g_hash_table_destroy".} +proc g_hash_table_insert*(hash_table: PGHashTable, key: gpointer, + value: gpointer){.cdecl, dynlib: gliblib, + importc: "g_hash_table_insert".} +proc g_hash_table_replace*(hash_table: PGHashTable, key: gpointer, + value: gpointer){.cdecl, dynlib: gliblib, + importc: "g_hash_table_replace".} +proc g_hash_table_remove*(hash_table: PGHashTable, key: gconstpointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_hash_table_remove".} +proc g_hash_table_steal*(hash_table: PGHashTable, key: gconstpointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_hash_table_steal".} +proc g_hash_table_lookup*(hash_table: PGHashTable, key: gconstpointer): gpointer{. + cdecl, dynlib: gliblib, importc: "g_hash_table_lookup".} +proc g_hash_table_lookup_extended*(hash_table: PGHashTable, + lookup_key: gconstpointer, + orig_key: Pgpointer, value: Pgpointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_hash_table_lookup_extended".} +proc g_hash_table_foreach*(hash_table: PGHashTable, func: TGHFunc, + user_data: gpointer){.cdecl, dynlib: gliblib, + importc: "g_hash_table_foreach".} +proc g_hash_table_foreach_remove*(hash_table: PGHashTable, func: TGHRFunc, + user_data: gpointer): guint{.cdecl, + dynlib: gliblib, importc: "g_hash_table_foreach_remove".} +proc g_hash_table_foreach_steal*(hash_table: PGHashTable, func: TGHRFunc, + user_data: gpointer): guint{.cdecl, + dynlib: gliblib, importc: "g_hash_table_foreach_steal".} +proc g_hash_table_size*(hash_table: PGHashTable): guint{.cdecl, dynlib: gliblib, + importc: "g_hash_table_size".} +proc g_str_equal*(v: gconstpointer, v2: gconstpointer): gboolean{.cdecl, + dynlib: gliblib, importc: "g_str_equal".} +proc g_str_hash*(v: gconstpointer): guint{.cdecl, dynlib: gliblib, + importc: "g_str_hash".} +proc g_int_equal*(v: gconstpointer, v2: gconstpointer): gboolean{.cdecl, + dynlib: gliblib, importc: "g_int_equal".} +proc g_int_hash*(v: gconstpointer): guint{.cdecl, dynlib: gliblib, + importc: "g_int_hash".} +proc g_direct_hash*(v: gconstpointer): guint{.cdecl, dynlib: gliblib, + importc: "g_direct_hash".} +proc g_direct_equal*(v: gconstpointer, v2: gconstpointer): gboolean{.cdecl, + dynlib: gliblib, importc: "g_direct_equal".} +proc g_quark_try_string*(str: cstring): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_quark_try_string".} +proc g_quark_from_static_string*(str: cstring): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_quark_from_static_string".} +proc g_quark_from_string*(str: cstring): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_quark_from_string".} +proc g_quark_to_string*(quark: TGQuark): cstring{.cdecl, dynlib: gliblib, + importc: "g_quark_to_string".} +const + G_MEM_ALIGN* = GLIB_SIZEOF_VOID_P + +type + PGMemVTable* = ptr TGMemVTable + TGMemVTable* = record + malloc*: proc (n_bytes: gsize): gpointer{.cdecl.} + realloc*: proc (mem: gpointer, n_bytes: gsize): gpointer{.cdecl.} + free*: proc (mem: gpointer){.cdecl.} + calloc*: proc (n_blocks: gsize, n_block_bytes: gsize): gpointer{.cdecl.} + try_malloc*: proc (n_bytes: gsize): gpointer{.cdecl.} + try_realloc*: proc (mem: gpointer, n_bytes: gsize): gpointer{.cdecl.} + + PGMemChunk* = pointer + PGAllocator* = pointer + +proc g_malloc*(n_bytes: gulong): gpointer{.cdecl, dynlib: gliblib, + importc: "g_malloc".} +proc g_malloc0*(n_bytes: gulong): gpointer{.cdecl, dynlib: gliblib, + importc: "g_malloc0".} +proc g_realloc*(mem: gpointer, n_bytes: gulong): gpointer{.cdecl, + dynlib: gliblib, importc: "g_realloc".} +proc g_free*(mem: gpointer){.cdecl, dynlib: gliblib, importc: "g_free".} +proc g_try_malloc*(n_bytes: gulong): gpointer{.cdecl, dynlib: gliblib, + importc: "g_try_malloc".} +proc g_try_realloc*(mem: gpointer, n_bytes: gulong): gpointer{.cdecl, + dynlib: gliblib, importc: "g_try_realloc".} +#proc g_new*(bytes_per_struct, n_structs: gsize): gpointer +#proc g_new0*(bytes_per_struct, n_structs: gsize): gpointer +#proc g_renew*(struct_size: gsize, OldMem: gpointer, n_structs: gsize): gpointer +proc g_mem_set_vtable*(vtable: PGMemVTable){.cdecl, dynlib: gliblib, + importc: "g_mem_set_vtable".} +proc g_mem_is_system_malloc*(): gboolean{.cdecl, dynlib: gliblib, + importc: "g_mem_is_system_malloc".} +proc g_mem_profile*(){.cdecl, dynlib: gliblib, importc: "g_mem_profile".} +proc g_chunk_new*(chunk: Pointer): Pointer +proc g_chunk_new0*(chunk: Pointer): Pointer +proc g_chunk_free*(mem_chunk: PGMemChunk, mem: gpointer) +const + G_ALLOC_ONLY* = 1 + G_ALLOC_AND_FREE* = 2 + +proc g_mem_chunk_new*(name: cstring, atom_size: gint, area_size: gulong, + theType: gint): PGMemChunk{.cdecl, dynlib: gliblib, + importc: "g_mem_chunk_new".} +proc g_mem_chunk_destroy*(mem_chunk: PGMemChunk){.cdecl, dynlib: gliblib, + importc: "g_mem_chunk_destroy".} +proc g_mem_chunk_alloc*(mem_chunk: PGMemChunk): gpointer{.cdecl, + dynlib: gliblib, importc: "g_mem_chunk_alloc".} +proc g_mem_chunk_alloc0*(mem_chunk: PGMemChunk): gpointer{.cdecl, + dynlib: gliblib, importc: "g_mem_chunk_alloc0".} +proc g_mem_chunk_free*(mem_chunk: PGMemChunk, mem: gpointer){.cdecl, + dynlib: gliblib, importc: "g_mem_chunk_free".} +proc g_mem_chunk_clean*(mem_chunk: PGMemChunk){.cdecl, dynlib: gliblib, + importc: "g_mem_chunk_clean".} +proc g_mem_chunk_reset*(mem_chunk: PGMemChunk){.cdecl, dynlib: gliblib, + importc: "g_mem_chunk_reset".} +proc g_mem_chunk_print*(mem_chunk: PGMemChunk){.cdecl, dynlib: gliblib, + importc: "g_mem_chunk_print".} +proc g_mem_chunk_info*(){.cdecl, dynlib: gliblib, importc: "g_mem_chunk_info".} +proc g_blow_chunks*(){.cdecl, dynlib: gliblib, importc: "g_blow_chunks".} +proc g_allocator_new*(name: cstring, n_preallocs: guint): PGAllocator{.cdecl, + dynlib: gliblib, importc: "g_allocator_new".} +proc g_allocator_free*(allocator: PGAllocator){.cdecl, dynlib: gliblib, + importc: "g_allocator_free".} +const + G_ALLOCATOR_LIST* = 1 + G_ALLOCATOR_SLIST* = 2 + G_ALLOCATOR_NODE* = 3 + +proc g_slist_push_allocator*(allocator: PGAllocator){.cdecl, dynlib: gliblib, + importc: "g_slist_push_allocator".} +proc g_slist_pop_allocator*(){.cdecl, dynlib: gliblib, + importc: "g_slist_pop_allocator".} +proc g_slist_alloc*(): PGSList{.cdecl, dynlib: gliblib, importc: "g_slist_alloc".} +proc g_slist_free*(list: PGSList){.cdecl, dynlib: gliblib, + importc: "g_slist_free".} +proc g_slist_free_1*(list: PGSList){.cdecl, dynlib: gliblib, + importc: "g_slist_free_1".} +proc g_slist_append*(list: PGSList, data: gpointer): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_append".} +proc g_slist_prepend*(list: PGSList, data: gpointer): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_prepend".} +proc g_slist_insert*(list: PGSList, data: gpointer, position: gint): PGSList{. + cdecl, dynlib: gliblib, importc: "g_slist_insert".} +proc g_slist_insert_sorted*(list: PGSList, data: gpointer, func: TGCompareFunc): PGSList{. + cdecl, dynlib: gliblib, importc: "g_slist_insert_sorted".} +proc g_slist_insert_before*(slist: PGSList, sibling: PGSList, data: gpointer): PGSList{. + cdecl, dynlib: gliblib, importc: "g_slist_insert_before".} +proc g_slist_concat*(list1: PGSList, list2: PGSList): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_concat".} +proc g_slist_remove*(list: PGSList, data: gconstpointer): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_remove".} +proc g_slist_remove_all*(list: PGSList, data: gconstpointer): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_remove_all".} +proc g_slist_remove_link*(list: PGSList, link: PGSList): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_remove_link".} +proc g_slist_delete_link*(list: PGSList, link: PGSList): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_delete_link".} +proc g_slist_reverse*(list: PGSList): PGSList{.cdecl, dynlib: gliblib, + importc: "g_slist_reverse".} +proc g_slist_copy*(list: PGSList): PGSList{.cdecl, dynlib: gliblib, + importc: "g_slist_copy".} +proc g_slist_nth*(list: PGSList, n: guint): PGSList{.cdecl, dynlib: gliblib, + importc: "g_slist_nth".} +proc g_slist_find*(list: PGSList, data: gconstpointer): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_find".} +proc g_slist_find_custom*(list: PGSList, data: gconstpointer, + func: TGCompareFunc): PGSList{.cdecl, dynlib: gliblib, + importc: "g_slist_find_custom".} +proc g_slist_position*(list: PGSList, llink: PGSList): gint{.cdecl, + dynlib: gliblib, importc: "g_slist_position".} +proc g_slist_index*(list: PGSList, data: gconstpointer): gint{.cdecl, + dynlib: gliblib, importc: "g_slist_index".} +proc g_slist_last*(list: PGSList): PGSList{.cdecl, dynlib: gliblib, + importc: "g_slist_last".} +proc g_slist_length*(list: PGSList): guint{.cdecl, dynlib: gliblib, + importc: "g_slist_length".} +proc g_slist_foreach*(list: PGSList, func: TGFunc, user_data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_slist_foreach".} +proc g_slist_sort*(list: PGSList, compare_func: TGCompareFunc): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_sort".} +proc g_slist_sort_with_data*(list: PGSList, compare_func: TGCompareDataFunc, + user_data: gpointer): PGSList{.cdecl, + dynlib: gliblib, importc: "g_slist_sort_with_data".} +proc g_slist_nth_data*(list: PGSList, n: guint): gpointer{.cdecl, + dynlib: gliblib, importc: "g_slist_nth_data".} +proc g_slist_next*(slist: PGSList): PGSList +proc g_list_push_allocator*(allocator: PGAllocator){.cdecl, dynlib: gliblib, + importc: "g_list_push_allocator".} +proc g_list_pop_allocator*(){.cdecl, dynlib: gliblib, + importc: "g_list_pop_allocator".} +proc g_list_alloc*(): PGList{.cdecl, dynlib: gliblib, importc: "g_list_alloc".} +proc g_list_free*(list: PGList){.cdecl, dynlib: gliblib, importc: "g_list_free".} +proc g_list_free_1*(list: PGList){.cdecl, dynlib: gliblib, + importc: "g_list_free_1".} +proc g_list_append*(list: PGList, data: gpointer): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_append".} +proc g_list_prepend*(list: PGList, data: gpointer): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_prepend".} +proc g_list_insert*(list: PGList, data: gpointer, position: gint): PGList{. + cdecl, dynlib: gliblib, importc: "g_list_insert".} +proc g_list_insert_sorted*(list: PGList, data: gpointer, func: TGCompareFunc): PGList{. + cdecl, dynlib: gliblib, importc: "g_list_insert_sorted".} +proc g_list_insert_before*(list: PGList, sibling: PGList, data: gpointer): PGList{. + cdecl, dynlib: gliblib, importc: "g_list_insert_before".} +proc g_list_concat*(list1: PGList, list2: PGList): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_concat".} +proc g_list_remove*(list: PGList, data: gconstpointer): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_remove".} +proc g_list_remove_all*(list: PGList, data: gconstpointer): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_remove_all".} +proc g_list_remove_link*(list: PGList, llink: PGList): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_remove_link".} +proc g_list_delete_link*(list: PGList, link: PGList): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_delete_link".} +proc g_list_reverse*(list: PGList): PGList{.cdecl, dynlib: gliblib, + importc: "g_list_reverse".} +proc g_list_copy*(list: PGList): PGList{.cdecl, dynlib: gliblib, + importc: "g_list_copy".} +proc g_list_nth*(list: PGList, n: guint): PGList{.cdecl, dynlib: gliblib, + importc: "g_list_nth".} +proc g_list_nth_prev*(list: PGList, n: guint): PGList{.cdecl, dynlib: gliblib, + importc: "g_list_nth_prev".} +proc g_list_find*(list: PGList, data: gconstpointer): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_find".} +proc g_list_find_custom*(list: PGList, data: gconstpointer, func: TGCompareFunc): PGList{. + cdecl, dynlib: gliblib, importc: "g_list_find_custom".} +proc g_list_position*(list: PGList, llink: PGList): gint{.cdecl, + dynlib: gliblib, importc: "g_list_position".} +proc g_list_index*(list: PGList, data: gconstpointer): gint{.cdecl, + dynlib: gliblib, importc: "g_list_index".} +proc g_list_last*(list: PGList): PGList{.cdecl, dynlib: gliblib, + importc: "g_list_last".} +proc g_list_first*(list: PGList): PGList{.cdecl, dynlib: gliblib, + importc: "g_list_first".} +proc g_list_length*(list: PGList): guint{.cdecl, dynlib: gliblib, + importc: "g_list_length".} +proc g_list_foreach*(list: PGList, func: TGFunc, user_data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_list_foreach".} +proc g_list_sort*(list: PGList, compare_func: TGCompareFunc): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_sort".} +proc g_list_sort_with_data*(list: PGList, compare_func: TGCompareDataFunc, + user_data: gpointer): PGList{.cdecl, + dynlib: gliblib, importc: "g_list_sort_with_data".} +proc g_list_nth_data*(list: PGList, n: guint): gpointer{.cdecl, dynlib: gliblib, + importc: "g_list_nth_data".} +proc g_list_previous*(list: PGList): PGList +proc g_list_next*(list: PGList): PGList +type + PGCache* = pointer + TGCacheNewFunc* = proc (key: gpointer): gpointer{.cdecl.} + TGCacheDupFunc* = proc (value: gpointer): gpointer{.cdecl.} + TGCacheDestroyFunc* = proc (value: gpointer){.cdecl.} + +proc g_cache_new*(value_new_func: TGCacheNewFunc, + value_destroy_func: TGCacheDestroyFunc, + key_dup_func: TGCacheDupFunc, + key_destroy_func: TGCacheDestroyFunc, + hash_key_func: TGHashFunc, hash_value_func: TGHashFunc, + key_equal_func: TGEqualFunc): PGCache{.cdecl, dynlib: gliblib, + importc: "g_cache_new".} +proc g_cache_destroy*(cache: PGCache){.cdecl, dynlib: gliblib, + importc: "g_cache_destroy".} +proc g_cache_insert*(cache: PGCache, key: gpointer): gpointer{.cdecl, + dynlib: gliblib, importc: "g_cache_insert".} +proc g_cache_remove*(cache: PGCache, value: gconstpointer){.cdecl, + dynlib: gliblib, importc: "g_cache_remove".} +proc g_cache_key_foreach*(cache: PGCache, func: TGHFunc, user_data: gpointer){. + cdecl, dynlib: gliblib, importc: "g_cache_key_foreach".} +proc g_cache_value_foreach*(cache: PGCache, func: TGHFunc, user_data: gpointer){. + cdecl, dynlib: gliblib, importc: "g_cache_value_foreach".} +type + PGCompletionFunc* = ptr TGCompletionFunc + TGCompletionFunc* = gchar + TGCompletionStrncmpFunc* = proc (s1: cstring, s2: cstring, n: gsize): gint{. + cdecl.} + PGCompletion* = ptr TGCompletion + TGCompletion* = record + items*: PGList + func*: TGCompletionFunc + prefix*: cstring + cache*: PGList + strncmp_func*: TGCompletionStrncmpFunc + + +proc g_completion_new*(func: TGCompletionFunc): PGCompletion{.cdecl, + dynlib: gliblib, importc: "g_completion_new".} +proc g_completion_add_items*(cmp: PGCompletion, items: PGList){.cdecl, + dynlib: gliblib, importc: "g_completion_add_items".} +proc g_completion_remove_items*(cmp: PGCompletion, items: PGList){.cdecl, + dynlib: gliblib, importc: "g_completion_remove_items".} +proc g_completion_clear_items*(cmp: PGCompletion){.cdecl, dynlib: gliblib, + importc: "g_completion_clear_items".} +proc g_completion_complete*(cmp: PGCompletion, prefix: cstring, + new_prefix: PPgchar): PGList{.cdecl, + dynlib: gliblib, importc: "g_completion_complete".} +proc g_completion_set_compare*(cmp: PGCompletion, + strncmp_func: TGCompletionStrncmpFunc){.cdecl, + dynlib: gliblib, importc: "g_completion_set_compare".} +proc g_completion_free*(cmp: PGCompletion){.cdecl, dynlib: gliblib, + importc: "g_completion_free".} +type + PGConvertError* = ptr TGConvertError + TGConvertError* = enum + G_CONVERT_ERROR_NO_CONVERSION, G_CONVERT_ERROR_ILLEGAL_SEQUENCE, + G_CONVERT_ERROR_FAILED, G_CONVERT_ERROR_PARTIAL_INPUT, + G_CONVERT_ERROR_BAD_URI, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH + +proc G_CONVERT_ERROR*(): TGQuark +proc g_convert_error_quark*(): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_convert_error_quark".} +type + PGIConv* = ptr TGIConv + TGIConv* = pointer + +proc g_iconv_open*(to_codeset: cstring, from_codeset: cstring): TGIConv{.cdecl, + dynlib: gliblib, importc: "g_iconv_open".} +proc g_iconv*(`converter`: TGIConv, inbuf: PPgchar, inbytes_left: Pgsize, + outbuf: PPgchar, outbytes_left: Pgsize): gsize{.cdecl, + dynlib: gliblib, importc: "g_iconv".} +proc g_iconv_close*(`converter`: TGIConv): gint{.cdecl, dynlib: gliblib, + importc: "g_iconv_close".} +proc g_convert*(str: cstring, len: gssize, to_codeset: cstring, + from_codeset: cstring, bytes_read: Pgsize, + bytes_written: Pgsize, error: pointer): cstring{.cdecl, + dynlib: gliblib, importc: "g_convert".} +proc g_convert_with_iconv*(str: cstring, len: gssize, `converter`: TGIConv, + bytes_read: Pgsize, bytes_written: Pgsize, + error: pointer): cstring{.cdecl, dynlib: gliblib, + importc: "g_convert_with_iconv".} +proc g_convert_with_fallback*(str: cstring, len: gssize, to_codeset: cstring, + from_codeset: cstring, fallback: cstring, + bytes_read: Pgsize, bytes_written: Pgsize, + error: pointer): cstring{.cdecl, dynlib: gliblib, + importc: "g_convert_with_fallback".} +proc g_locale_to_utf8*(opsysstring: cstring, len: gssize, bytes_read: Pgsize, + bytes_written: Pgsize, error: pointer): cstring{.cdecl, + dynlib: gliblib, importc: "g_locale_to_utf8".} +proc g_locale_from_utf8*(utf8string: cstring, len: gssize, bytes_read: Pgsize, + bytes_written: Pgsize, error: pointer): cstring{. + cdecl, dynlib: gliblib, importc: "g_locale_from_utf8".} +proc g_filename_to_utf8*(opsysstring: cstring, len: gssize, bytes_read: Pgsize, + bytes_written: Pgsize, error: pointer): cstring{. + cdecl, dynlib: gliblib, importc: "g_filename_to_utf8".} +proc g_filename_from_utf8*(utf8string: cstring, len: gssize, bytes_read: Pgsize, + bytes_written: Pgsize, error: pointer): cstring{. + cdecl, dynlib: gliblib, importc: "g_filename_from_utf8".} +proc g_filename_from_uri*(uri: cstring, hostname: PPchar, error: pointer): cstring{. + cdecl, dynlib: gliblib, importc: "g_filename_from_uri".} +proc g_filename_to_uri*(filename: cstring, hostname: cstring, error: pointer): cstring{. + cdecl, dynlib: gliblib, importc: "g_filename_to_uri".} +type + TGDataForeachFunc* = proc (key_id: TGQuark, data: gpointer, + user_data: gpointer){.cdecl.} + +proc g_datalist_init*(datalist: PPGData){.cdecl, dynlib: gliblib, + importc: "g_datalist_init".} +proc g_datalist_clear*(datalist: PPGData){.cdecl, dynlib: gliblib, + importc: "g_datalist_clear".} +proc g_datalist_id_get_data*(datalist: PPGData, key_id: TGQuark): gpointer{. + cdecl, dynlib: gliblib, importc: "g_datalist_id_get_data".} +proc g_datalist_id_set_data_full*(datalist: PPGData, key_id: TGQuark, + data: gpointer, destroy_func: TGDestroyNotify){. + cdecl, dynlib: gliblib, importc: "g_datalist_id_set_data_full".} +proc g_datalist_id_remove_no_notify*(datalist: PPGData, key_id: TGQuark): gpointer{. + cdecl, dynlib: gliblib, importc: "g_datalist_id_remove_no_notify".} +proc g_datalist_foreach*(datalist: PPGData, func: TGDataForeachFunc, + user_data: gpointer){.cdecl, dynlib: gliblib, + importc: "g_datalist_foreach".} +proc g_datalist_id_set_data*(datalist: PPGData, key_id: TGQuark, data: gpointer) +proc g_datalist_id_remove_data*(datalist: PPGData, key_id: TGQuark) +proc g_datalist_get_data*(datalist: PPGData, key_str: cstring): PPGData +proc g_datalist_set_data_full*(datalist: PPGData, key_str: cstring, + data: gpointer, destroy_func: TGDestroyNotify) +proc g_datalist_set_data*(datalist: PPGData, key_str: cstring, data: gpointer) +proc g_datalist_remove_no_notify*(datalist: PPGData, key_str: cstring) +proc g_datalist_remove_data*(datalist: PPGData, key_str: cstring) +proc g_dataset_id_get_data*(dataset_location: gconstpointer, key_id: TGQuark): gpointer{. + cdecl, dynlib: gliblib, importc: "g_dataset_id_get_data".} +proc g_dataset_id_set_data_full*(dataset_location: gconstpointer, + key_id: TGQuark, data: gpointer, + destroy_func: TGDestroyNotify){.cdecl, + dynlib: gliblib, importc: "g_dataset_id_set_data_full".} +proc g_dataset_id_remove_no_notify*(dataset_location: gconstpointer, + key_id: TGQuark): gpointer{.cdecl, + dynlib: gliblib, importc: "g_dataset_id_remove_no_notify".} +proc g_dataset_foreach*(dataset_location: gconstpointer, + func: TGDataForeachFunc, user_data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_dataset_foreach".} +proc g_dataset_id_set_data*(location: gconstpointer, key_id: TGQuark, + data: gpointer) +proc g_dataset_id_remove_data*(location: gconstpointer, key_id: TGQuark) +proc g_dataset_get_data*(location: gconstpointer, key_str: cstring): gpointer +proc g_dataset_set_data_full*(location: gconstpointer, key_str: cstring, + data: gpointer, destroy_func: TGDestroyNotify) +proc g_dataset_remove_no_notify*(location: gconstpointer, key_str: cstring) +proc g_dataset_set_data*(location: gconstpointer, key_str: cstring, + data: gpointer) +proc g_dataset_remove_data*(location: gconstpointer, key_str: cstring) +type + PGTime* = ptr TGTime + TGTime* = gint32 + PGDateYear* = ptr TGDateYear + TGDateYear* = guint16 + PGDateDay* = ptr TGDateDay + TGDateDay* = guint8 + Ptm* = ptr Ttm + Ttm* = record + tm_sec*: gint + tm_min*: gint + tm_hour*: gint + tm_mday*: gint + tm_mon*: gint + tm_year*: gint + tm_wday*: gint + tm_yday*: gint + tm_isdst*: gint + tm_gmtoff*: glong + tm_zone*: cstring + + +type + PGDateDMY* = ptr TGDateDMY + TGDateDMY* = int + +const + G_DATE_DAY* = 0 + G_DATE_MONTH* = 1 + G_DATE_YEAR* = 2 + +type + PGDateWeekday* = ptr TGDateWeekday + TGDateWeekday* = int + +const + G_DATE_BAD_WEEKDAY* = 0 + G_DATE_MONDAY* = 1 + G_DATE_TUESDAY* = 2 + G_DATE_WEDNESDAY* = 3 + G_DATE_THURSDAY* = 4 + G_DATE_FRIDAY* = 5 + G_DATE_SATURDAY* = 6 + G_DATE_SUNDAY* = 7 + +type + PGDateMonth* = ptr TGDateMonth + TGDateMonth* = int + +const + G_DATE_BAD_MONTH* = 0 + G_DATE_JANUARY* = 1 + G_DATE_FEBRUARY* = 2 + G_DATE_MARCH* = 3 + G_DATE_APRIL* = 4 + G_DATE_MAY* = 5 + G_DATE_JUNE* = 6 + G_DATE_JULY* = 7 + G_DATE_AUGUST* = 8 + G_DATE_SEPTEMBER* = 9 + G_DATE_OCTOBER* = 10 + G_DATE_NOVEMBER* = 11 + G_DATE_DECEMBER* = 12 + +const + G_DATE_BAD_JULIAN* = 0 + G_DATE_BAD_DAY* = 0 + G_DATE_BAD_YEAR* = 0 + +type + PGDate* = ptr TGDate + TGDate* = record + flag0*: int32 + flag1*: int32 + + +proc g_date_new*(): PGDate{.cdecl, dynlib: gliblib, importc: "g_date_new".} +proc g_date_new_dmy*(day: TGDateDay, month: TGDateMonth, year: TGDateYear): PGDate{. + cdecl, dynlib: gliblib, importc: "g_date_new_dmy".} +proc g_date_new_julian*(julian_day: guint32): PGDate{.cdecl, dynlib: gliblib, + importc: "g_date_new_julian".} +proc g_date_free*(date: PGDate){.cdecl, dynlib: gliblib, importc: "g_date_free".} +proc g_date_valid*(date: PGDate): gboolean{.cdecl, dynlib: gliblib, + importc: "g_date_valid".} +proc g_date_valid_month*(month: TGDateMonth): gboolean{.cdecl, dynlib: gliblib, + importc: "g_date_valid_month".} +proc g_date_valid_year*(year: TGDateYear): gboolean{.cdecl, dynlib: gliblib, + importc: "g_date_valid_year".} +proc g_date_valid_weekday*(weekday: TGDateWeekday): gboolean{.cdecl, + dynlib: gliblib, importc: "g_date_valid_weekday".} +proc g_date_valid_julian*(julian_date: guint32): gboolean{.cdecl, + dynlib: gliblib, importc: "g_date_valid_julian".} +proc g_date_get_weekday*(date: PGDate): TGDateWeekday{.cdecl, dynlib: gliblib, + importc: "g_date_get_weekday".} +proc g_date_get_month*(date: PGDate): TGDateMonth{.cdecl, dynlib: gliblib, + importc: "g_date_get_month".} +proc g_date_get_year*(date: PGDate): TGDateYear{.cdecl, dynlib: gliblib, + importc: "g_date_get_year".} +proc g_date_get_day*(date: PGDate): TGDateDay{.cdecl, dynlib: gliblib, + importc: "g_date_get_day".} +proc g_date_get_julian*(date: PGDate): guint32{.cdecl, dynlib: gliblib, + importc: "g_date_get_julian".} +proc g_date_get_day_of_year*(date: PGDate): guint{.cdecl, dynlib: gliblib, + importc: "g_date_get_day_of_year".} +proc g_date_get_monday_week_of_year*(date: PGDate): guint{.cdecl, + dynlib: gliblib, importc: "g_date_get_monday_week_of_year".} +proc g_date_get_sunday_week_of_year*(date: PGDate): guint{.cdecl, + dynlib: gliblib, importc: "g_date_get_sunday_week_of_year".} +proc g_date_clear*(date: PGDate, n_dates: guint){.cdecl, dynlib: gliblib, + importc: "g_date_clear".} +proc g_date_set_parse*(date: PGDate, str: cstring){.cdecl, dynlib: gliblib, + importc: "g_date_set_parse".} +proc g_date_set_time*(date: PGDate, time: TGTime){.cdecl, dynlib: gliblib, + importc: "g_date_set_time".} +proc g_date_set_month*(date: PGDate, month: TGDateMonth){.cdecl, + dynlib: gliblib, importc: "g_date_set_month".} +proc g_date_set_day*(date: PGDate, day: TGDateDay){.cdecl, dynlib: gliblib, + importc: "g_date_set_day".} +proc g_date_set_year*(date: PGDate, year: TGDateYear){.cdecl, dynlib: gliblib, + importc: "g_date_set_year".} +proc g_date_set_dmy*(date: PGDate, day: TGDateDay, month: TGDateMonth, + y: TGDateYear){.cdecl, dynlib: gliblib, + importc: "g_date_set_dmy".} +proc g_date_set_julian*(date: PGDate, julian_date: guint32){.cdecl, + dynlib: gliblib, importc: "g_date_set_julian".} +proc g_date_is_first_of_month*(date: PGDate): gboolean{.cdecl, dynlib: gliblib, + importc: "g_date_is_first_of_month".} +proc g_date_is_last_of_month*(date: PGDate): gboolean{.cdecl, dynlib: gliblib, + importc: "g_date_is_last_of_month".} +proc g_date_add_days*(date: PGDate, n_days: guint){.cdecl, dynlib: gliblib, + importc: "g_date_add_days".} +proc g_date_subtract_days*(date: PGDate, n_days: guint){.cdecl, dynlib: gliblib, + importc: "g_date_subtract_days".} +proc g_date_add_months*(date: PGDate, n_months: guint){.cdecl, dynlib: gliblib, + importc: "g_date_add_months".} +proc g_date_subtract_months*(date: PGDate, n_months: guint){.cdecl, + dynlib: gliblib, importc: "g_date_subtract_months".} +proc g_date_add_years*(date: PGDate, n_years: guint){.cdecl, dynlib: gliblib, + importc: "g_date_add_years".} +proc g_date_subtract_years*(date: PGDate, n_years: guint){.cdecl, + dynlib: gliblib, importc: "g_date_subtract_years".} +proc g_date_is_leap_year*(year: TGDateYear): gboolean{.cdecl, dynlib: gliblib, + importc: "g_date_is_leap_year".} +proc g_date_get_days_in_month*(month: TGDateMonth, year: TGDateYear): guint8{. + cdecl, dynlib: gliblib, importc: "g_date_get_days_in_month".} +proc g_date_get_monday_weeks_in_year*(year: TGDateYear): guint8{.cdecl, + dynlib: gliblib, importc: "g_date_get_monday_weeks_in_year".} +proc g_date_get_sunday_weeks_in_year*(year: TGDateYear): guint8{.cdecl, + dynlib: gliblib, importc: "g_date_get_sunday_weeks_in_year".} +proc g_date_days_between*(date1: PGDate, date2: PGDate): gint{.cdecl, + dynlib: gliblib, importc: "g_date_days_between".} +proc g_date_compare*(lhs: PGDate, rhs: PGDate): gint{.cdecl, dynlib: gliblib, + importc: "g_date_compare".} +proc g_date_to_struct_tm*(date: PGDate, tm: Ptm){.cdecl, dynlib: gliblib, + importc: "g_date_to_struct_tm".} +proc g_date_clamp*(date: PGDate, min_date: PGDate, max_date: PGDate){.cdecl, + dynlib: gliblib, importc: "g_date_clamp".} +proc g_date_order*(date1: PGDate, date2: PGDate){.cdecl, dynlib: gliblib, + importc: "g_date_order".} +proc g_date_strftime*(s: cstring, slen: gsize, format: cstring, date: PGDate): gsize{. + cdecl, dynlib: gliblib, importc: "g_date_strftime".} +type + PGDir* = pointer + +proc g_dir_open*(path: cstring, flags: guint, error: pointer): PGDir{.cdecl, + dynlib: gliblib, importc: "g_dir_open".} +proc g_dir_read_name*(dir: PGDir): cstring{.cdecl, dynlib: gliblib, + importc: "g_dir_read_name".} +proc g_dir_rewind*(dir: PGDir){.cdecl, dynlib: gliblib, importc: "g_dir_rewind".} +proc g_dir_close*(dir: PGDir){.cdecl, dynlib: gliblib, importc: "g_dir_close".} +type + PGFileError* = ptr TGFileError + TGFileError* = gint + +type + PGFileTest* = ptr TGFileTest + TGFileTest* = int + +const + G_FILE_TEST_IS_REGULAR* = 1 shl 0 + G_FILE_TEST_IS_SYMLINK* = 1 shl 1 + G_FILE_TEST_IS_DIR* = 1 shl 2 + G_FILE_TEST_IS_EXECUTABLE* = 1 shl 3 + G_FILE_TEST_EXISTS* = 1 shl 4 + +const + G_FILE_ERROR_EXIST* = 0 + G_FILE_ERROR_ISDIR* = 1 + G_FILE_ERROR_ACCES* = 2 + G_FILE_ERROR_NAMETOOLONG* = 3 + G_FILE_ERROR_NOENT* = 4 + G_FILE_ERROR_NOTDIR* = 5 + G_FILE_ERROR_NXIO* = 6 + G_FILE_ERROR_NODEV* = 7 + G_FILE_ERROR_ROFS* = 8 + G_FILE_ERROR_TXTBSY* = 9 + G_FILE_ERROR_FAULT* = 10 + G_FILE_ERROR_LOOP* = 11 + G_FILE_ERROR_NOSPC* = 12 + G_FILE_ERROR_NOMEM* = 13 + G_FILE_ERROR_MFILE* = 14 + G_FILE_ERROR_NFILE* = 15 + G_FILE_ERROR_BADF* = 16 + G_FILE_ERROR_INVAL* = 17 + G_FILE_ERROR_PIPE* = 18 + G_FILE_ERROR_AGAIN* = 19 + G_FILE_ERROR_INTR* = 20 + G_FILE_ERROR_IO* = 21 + G_FILE_ERROR_PERM* = 22 + G_FILE_ERROR_FAILED* = 23 + +proc G_FILE_ERROR*(): TGQuark +proc g_file_error_quark*(): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_file_error_quark".} +proc g_file_error_from_errno*(err_no: gint): TGFileError{.cdecl, + dynlib: gliblib, importc: "g_file_error_from_errno".} +proc g_file_test*(filename: cstring, test: TGFileTest): gboolean{.cdecl, + dynlib: gliblib, importc: "g_file_test".} +proc g_file_get_contents*(filename: cstring, contents: PPgchar, length: Pgsize, + error: pointer): gboolean{.cdecl, dynlib: gliblib, + importc: "g_file_get_contents".} +proc g_mkstemp*(tmpl: cstring): int32{.cdecl, dynlib: gliblib, + importc: "g_mkstemp".} +proc g_file_open_tmp*(tmpl: cstring, name_used: PPchar, error: pointer): int32{. + cdecl, dynlib: gliblib, importc: "g_file_open_tmp".} +type + PGHook* = ptr TGHook + TGHook* = record + data*: gpointer + next*: PGHook + prev*: PGHook + ref_count*: guint + hook_id*: gulong + flags*: guint + func*: gpointer + destroy*: TGDestroyNotify + + PGHookList* = ptr TGHookList + TGHookCompareFunc* = proc (new_hook: PGHook, sibling: PGHook): gint{.cdecl.} + TGHookFindFunc* = proc (hook: PGHook, data: gpointer): gboolean{.cdecl.} + TGHookMarshaller* = proc (hook: PGHook, marshal_data: gpointer){.cdecl.} + TGHookCheckMarshaller* = proc (hook: PGHook, marshal_data: gpointer): gboolean{. + cdecl.} + TGHookFunc* = proc (data: gpointer){.cdecl.} + TGHookCheckFunc* = proc (data: gpointer): gboolean{.cdecl.} + TGHookFinalizeFunc* = proc (hook_list: PGHookList, hook: PGHook){.cdecl.} + TGHookList* = record + seq_id*: gulong + flag0*: int32 + hooks*: PGHook + hook_memchunk*: PGMemChunk + finalize_hook*: TGHookFinalizeFunc + dummy*: array[0..1, gpointer] + + +type + PGHookFlagMask* = ptr TGHookFlagMask + TGHookFlagMask* = int + +const + G_HOOK_FLAG_ACTIVE* = 1 shl 0 + G_HOOK_FLAG_IN_CALL* = 1 shl 1 + G_HOOK_FLAG_MASK* = 0x0000000F + +const + G_HOOK_FLAG_USER_SHIFT* = 4 + bm_TGHookList_hook_size* = 0x0000FFFF + bp_TGHookList_hook_size* = 0 + bm_TGHookList_is_setup* = 0x00010000 + bp_TGHookList_is_setup* = 16 + +proc TGHookList_hook_size*(a: var TGHookList): guint +proc TGHookList_set_hook_size*(a: var TGHookList, `hook_size`: guint) +proc TGHookList_is_setup*(a: var TGHookList): guint +proc TGHookList_set_is_setup*(a: var TGHookList, `is_setup`: guint) +proc G_HOOK*(hook: pointer): PGHook +proc G_HOOK_FLAGS*(hook: PGHook): guint +proc G_HOOK_ACTIVE*(hook: PGHook): bool +proc G_HOOK_IN_CALL*(hook: PGHook): bool +proc G_HOOK_IS_VALID*(hook: PGHook): bool +proc G_HOOK_IS_UNLINKED*(hook: PGHook): bool +proc g_hook_list_init*(hook_list: PGHookList, hook_size: guint){.cdecl, + dynlib: gliblib, importc: "g_hook_list_init".} +proc g_hook_list_clear*(hook_list: PGHookList){.cdecl, dynlib: gliblib, + importc: "g_hook_list_clear".} +proc g_hook_alloc*(hook_list: PGHookList): PGHook{.cdecl, dynlib: gliblib, + importc: "g_hook_alloc".} +proc g_hook_free*(hook_list: PGHookList, hook: PGHook){.cdecl, dynlib: gliblib, + importc: "g_hook_free".} +proc g_hook_ref*(hook_list: PGHookList, hook: PGHook){.cdecl, dynlib: gliblib, + importc: "g_hook_ref".} +proc g_hook_unref*(hook_list: PGHookList, hook: PGHook){.cdecl, dynlib: gliblib, + importc: "g_hook_unref".} +proc g_hook_destroy*(hook_list: PGHookList, hook_id: gulong): gboolean{.cdecl, + dynlib: gliblib, importc: "g_hook_destroy".} +proc g_hook_destroy_link*(hook_list: PGHookList, hook: PGHook){.cdecl, + dynlib: gliblib, importc: "g_hook_destroy_link".} +proc g_hook_prepend*(hook_list: PGHookList, hook: PGHook){.cdecl, + dynlib: gliblib, importc: "g_hook_prepend".} +proc g_hook_insert_before*(hook_list: PGHookList, sibling: PGHook, hook: PGHook){. + cdecl, dynlib: gliblib, importc: "g_hook_insert_before".} +proc g_hook_insert_sorted*(hook_list: PGHookList, hook: PGHook, + func: TGHookCompareFunc){.cdecl, dynlib: gliblib, + importc: "g_hook_insert_sorted".} +proc g_hook_get*(hook_list: PGHookList, hook_id: gulong): PGHook{.cdecl, + dynlib: gliblib, importc: "g_hook_get".} +proc g_hook_find*(hook_list: PGHookList, need_valids: gboolean, + func: TGHookFindFunc, data: gpointer): PGHook{.cdecl, + dynlib: gliblib, importc: "g_hook_find".} +proc g_hook_find_data*(hook_list: PGHookList, need_valids: gboolean, + data: gpointer): PGHook{.cdecl, dynlib: gliblib, + importc: "g_hook_find_data".} +proc g_hook_find_func*(hook_list: PGHookList, need_valids: gboolean, + func: gpointer): PGHook{.cdecl, dynlib: gliblib, + importc: "g_hook_find_func".} +proc g_hook_find_func_data*(hook_list: PGHookList, need_valids: gboolean, + func: gpointer, data: gpointer): PGHook{.cdecl, + dynlib: gliblib, importc: "g_hook_find_func_data".} +proc g_hook_first_valid*(hook_list: PGHookList, may_be_in_call: gboolean): PGHook{. + cdecl, dynlib: gliblib, importc: "g_hook_first_valid".} +proc g_hook_next_valid*(hook_list: PGHookList, hook: PGHook, + may_be_in_call: gboolean): PGHook{.cdecl, + dynlib: gliblib, importc: "g_hook_next_valid".} +proc g_hook_compare_ids*(new_hook: PGHook, sibling: PGHook): gint{.cdecl, + dynlib: gliblib, importc: "g_hook_compare_ids".} +proc g_hook_append*(hook_list: PGHookList, hook: PGHook) +proc g_hook_list_invoke_check*(hook_list: PGHookList, may_recurse: gboolean){. + cdecl, dynlib: gliblib, importc: "g_hook_list_invoke_check".} +proc g_hook_list_marshal*(hook_list: PGHookList, may_recurse: gboolean, + marshaller: TGHookMarshaller, marshal_data: gpointer){. + cdecl, dynlib: gliblib, importc: "g_hook_list_marshal".} +proc g_hook_list_marshal_check*(hook_list: PGHookList, may_recurse: gboolean, + marshaller: TGHookCheckMarshaller, + marshal_data: gpointer){.cdecl, dynlib: gliblib, + importc: "g_hook_list_marshal_check".} +type + PGThreadPool* = ptr TGThreadPool + TGThreadPool* = record + func*: TGFunc + user_data*: gpointer + exclusive*: gboolean + + +proc g_thread_pool_new*(func: TGFunc, user_data: gpointer, max_threads: gint, + exclusive: gboolean, error: pointer): PGThreadPool{. + cdecl, dynlib: gliblib, importc: "g_thread_pool_new".} +proc g_thread_pool_push*(pool: PGThreadPool, data: gpointer, error: pointer){. + cdecl, dynlib: gliblib, importc: "g_thread_pool_push".} +proc g_thread_pool_set_max_threads*(pool: PGThreadPool, max_threads: gint, + error: pointer){.cdecl, dynlib: gliblib, + importc: "g_thread_pool_set_max_threads".} +proc g_thread_pool_get_max_threads*(pool: PGThreadPool): gint{.cdecl, + dynlib: gliblib, importc: "g_thread_pool_get_max_threads".} +proc g_thread_pool_get_num_threads*(pool: PGThreadPool): guint{.cdecl, + dynlib: gliblib, importc: "g_thread_pool_get_num_threads".} +proc g_thread_pool_unprocessed*(pool: PGThreadPool): guint{.cdecl, + dynlib: gliblib, importc: "g_thread_pool_unprocessed".} +proc g_thread_pool_free*(pool: PGThreadPool, immediate: gboolean, wait: gboolean){. + cdecl, dynlib: gliblib, importc: "g_thread_pool_free".} +proc g_thread_pool_set_max_unused_threads*(max_threads: gint){.cdecl, + dynlib: gliblib, importc: "g_thread_pool_set_max_unused_threads".} +proc g_thread_pool_get_max_unused_threads*(): gint{.cdecl, dynlib: gliblib, + importc: "g_thread_pool_get_max_unused_threads".} +proc g_thread_pool_get_num_unused_threads*(): guint{.cdecl, dynlib: gliblib, + importc: "g_thread_pool_get_num_unused_threads".} +proc g_thread_pool_stop_unused_threads*(){.cdecl, dynlib: gliblib, + importc: "g_thread_pool_stop_unused_threads".} +type + PGTimer* = pointer + +const + G_USEC_PER_SEC* = 1000000 + +proc g_timer_new*(): PGTimer{.cdecl, dynlib: gliblib, importc: "g_timer_new".} +proc g_timer_destroy*(timer: PGTimer){.cdecl, dynlib: gliblib, + importc: "g_timer_destroy".} +proc g_timer_start*(timer: PGTimer){.cdecl, dynlib: gliblib, + importc: "g_timer_start".} +proc g_timer_stop*(timer: PGTimer){.cdecl, dynlib: gliblib, + importc: "g_timer_stop".} +proc g_timer_reset*(timer: PGTimer){.cdecl, dynlib: gliblib, + importc: "g_timer_reset".} +proc g_timer_elapsed*(timer: PGTimer, microseconds: Pgulong): gdouble{.cdecl, + dynlib: gliblib, importc: "g_timer_elapsed".} +proc g_usleep*(microseconds: gulong){.cdecl, dynlib: gliblib, + importc: "g_usleep".} +proc g_time_val_add*(time: PGTimeVal, microseconds: glong){.cdecl, + dynlib: gliblib, importc: "g_time_val_add".} +type + Pgunichar* = ptr gunichar + gunichar* = guint32 + Pgunichar2* = ptr gunichar2 + gunichar2* = guint16 + PGUnicodeType* = ptr TGUnicodeType + TGUnicodeType* = enum + G_UNICODE_CONTROL, G_UNICODE_FORMAT, G_UNICODE_UNASSIGNED, + G_UNICODE_PRIVATE_USE, G_UNICODE_SURROGATE, G_UNICODE_LOWERCASE_LETTER, + G_UNICODE_MODIFIER_LETTER, G_UNICODE_OTHER_LETTER, + G_UNICODE_TITLECASE_LETTER, G_UNICODE_UPPERCASE_LETTER, + G_UNICODE_COMBINING_MARK, G_UNICODE_ENCLOSING_MARK, + G_UNICODE_NON_SPACING_MARK, G_UNICODE_DECIMAL_NUMBER, + G_UNICODE_LETTER_NUMBER, G_UNICODE_OTHER_NUMBER, + G_UNICODE_CONNECT_PUNCTUATION, G_UNICODE_DASH_PUNCTUATION, + G_UNICODE_CLOSE_PUNCTUATION, G_UNICODE_FINAL_PUNCTUATION, + G_UNICODE_INITIAL_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, + G_UNICODE_OPEN_PUNCTUATION, G_UNICODE_CURRENCY_SYMBOL, + G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MATH_SYMBOL, G_UNICODE_OTHER_SYMBOL, + G_UNICODE_LINE_SEPARATOR, G_UNICODE_PARAGRAPH_SEPARATOR, + G_UNICODE_SPACE_SEPARATOR + PGUnicodeBreakType* = ptr TGUnicodeBreakType + TGUnicodeBreakType* = enum + G_UNICODE_BREAK_MANDATORY, G_UNICODE_BREAK_CARRIAGE_RETURN, + G_UNICODE_BREAK_LINE_FEED, G_UNICODE_BREAK_COMBINING_MARK, + G_UNICODE_BREAK_SURROGATE, G_UNICODE_BREAK_ZERO_WIDTH_SPACE, + G_UNICODE_BREAK_INSEPARABLE, G_UNICODE_BREAK_NON_BREAKING_GLUE, + G_UNICODE_BREAK_CONTINGENT, G_UNICODE_BREAK_SPACE, G_UNICODE_BREAK_AFTER, + G_UNICODE_BREAK_BEFORE, G_UNICODE_BREAK_BEFORE_AND_AFTER, + G_UNICODE_BREAK_HYPHEN, G_UNICODE_BREAK_NON_STARTER, + G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, + G_UNICODE_BREAK_QUOTATION, G_UNICODE_BREAK_EXCLAMATION, + G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_NUMERIC, + G_UNICODE_BREAK_INFIX_SEPARATOR, G_UNICODE_BREAK_SYMBOL, + G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX, + G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_AMBIGUOUS, + G_UNICODE_BREAK_UNKNOWN + +proc g_get_charset*(charset: PPchar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_get_charset".} +proc g_unichar_isalnum*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isalnum".} +proc g_unichar_isalpha*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isalpha".} +proc g_unichar_iscntrl*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_iscntrl".} +proc g_unichar_isdigit*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isdigit".} +proc g_unichar_isgraph*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isgraph".} +proc g_unichar_islower*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_islower".} +proc g_unichar_isprint*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isprint".} +proc g_unichar_ispunct*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_ispunct".} +proc g_unichar_isspace*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isspace".} +proc g_unichar_isupper*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isupper".} +proc g_unichar_isxdigit*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isxdigit".} +proc g_unichar_istitle*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_istitle".} +proc g_unichar_isdefined*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_isdefined".} +proc g_unichar_iswide*(c: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_iswide".} +proc g_unichar_toupper*(c: gunichar): gunichar{.cdecl, dynlib: gliblib, + importc: "g_unichar_toupper".} +proc g_unichar_tolower*(c: gunichar): gunichar{.cdecl, dynlib: gliblib, + importc: "g_unichar_tolower".} +proc g_unichar_totitle*(c: gunichar): gunichar{.cdecl, dynlib: gliblib, + importc: "g_unichar_totitle".} +proc g_unichar_digit_value*(c: gunichar): gint{.cdecl, dynlib: gliblib, + importc: "g_unichar_digit_value".} +proc g_unichar_xdigit_value*(c: gunichar): gint{.cdecl, dynlib: gliblib, + importc: "g_unichar_xdigit_value".} +proc g_unichar_type*(c: gunichar): TGUnicodeType{.cdecl, dynlib: gliblib, + importc: "g_unichar_type".} +proc g_unichar_break_type*(c: gunichar): TGUnicodeBreakType{.cdecl, + dynlib: gliblib, importc: "g_unichar_break_type".} +proc g_unicode_canonical_ordering*(str: Pgunichar, len: gsize){.cdecl, + dynlib: gliblib, importc: "g_unicode_canonical_ordering".} +proc g_unicode_canonical_decomposition*(ch: gunichar, result_len: Pgsize): Pgunichar{. + cdecl, dynlib: gliblib, importc: "g_unicode_canonical_decomposition".} +proc g_utf8_next_char*(p: pguchar): pguchar +proc g_utf8_get_char*(p: cstring): gunichar{.cdecl, dynlib: gliblib, + importc: "g_utf8_get_char".} +proc g_utf8_get_char_validated*(p: cstring, max_len: gssize): gunichar{.cdecl, + dynlib: gliblib, importc: "g_utf8_get_char_validated".} +proc g_utf8_offset_to_pointer*(str: cstring, offset: glong): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_offset_to_pointer".} +proc g_utf8_pointer_to_offset*(str: cstring, pos: cstring): glong{.cdecl, + dynlib: gliblib, importc: "g_utf8_pointer_to_offset".} +proc g_utf8_prev_char*(p: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_utf8_prev_char".} +proc g_utf8_find_next_char*(p: cstring, `end`: cstring): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_find_next_char".} +proc g_utf8_find_prev_char*(str: cstring, p: cstring): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_find_prev_char".} +proc g_utf8_strlen*(p: cstring, max: gssize): glong{.cdecl, dynlib: gliblib, + importc: "g_utf8_strlen".} +proc g_utf8_strncpy*(dest: cstring, src: cstring, n: gsize): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_strncpy".} +proc g_utf8_strchr*(p: cstring, len: gssize, c: gunichar): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_strchr".} +proc g_utf8_strrchr*(p: cstring, len: gssize, c: gunichar): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_strrchr".} +proc g_utf8_to_utf16*(str: cstring, len: glong, items_read: Pglong, + items_written: Pglong, error: pointer): Pgunichar2{. + cdecl, dynlib: gliblib, importc: "g_utf8_to_utf16".} +proc g_utf8_to_ucs4*(str: cstring, len: glong, items_read: Pglong, + items_written: Pglong, error: pointer): Pgunichar{.cdecl, + dynlib: gliblib, importc: "g_utf8_to_ucs4".} +proc g_utf8_to_ucs4_fast*(str: cstring, len: glong, items_written: Pglong): Pgunichar{. + cdecl, dynlib: gliblib, importc: "g_utf8_to_ucs4_fast".} +proc g_utf16_to_ucs4*(str: Pgunichar2, len: glong, items_read: Pglong, + items_written: Pglong, error: pointer): Pgunichar{.cdecl, + dynlib: gliblib, importc: "g_utf16_to_ucs4".} +proc g_utf16_to_utf8*(str: Pgunichar2, len: glong, items_read: Pglong, + items_written: Pglong, error: pointer): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf16_to_utf8".} +proc g_ucs4_to_utf16*(str: Pgunichar, len: glong, items_read: Pglong, + items_written: Pglong, error: pointer): Pgunichar2{. + cdecl, dynlib: gliblib, importc: "g_ucs4_to_utf16".} +proc g_ucs4_to_utf8*(str: Pgunichar, len: glong, items_read: Pglong, + items_written: Pglong, error: pointer): cstring{.cdecl, + dynlib: gliblib, importc: "g_ucs4_to_utf8".} +proc g_unichar_to_utf8*(c: gunichar, outbuf: cstring): gint{.cdecl, + dynlib: gliblib, importc: "g_unichar_to_utf8".} +proc g_utf8_validate*(str: cstring, max_len: gssize, `end`: PPgchar): gboolean{. + cdecl, dynlib: gliblib, importc: "g_utf8_validate".} +proc g_unichar_validate*(ch: gunichar): gboolean{.cdecl, dynlib: gliblib, + importc: "g_unichar_validate".} +proc g_utf8_strup*(str: cstring, len: gssize): cstring{.cdecl, dynlib: gliblib, + importc: "g_utf8_strup".} +proc g_utf8_strdown*(str: cstring, len: gssize): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_strdown".} +proc g_utf8_casefold*(str: cstring, len: gssize): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_casefold".} +type + PGNormalizeMode* = ptr TGNormalizeMode + TGNormalizeMode* = gint + +const + G_NORMALIZE_DEFAULT* = 0 + G_NORMALIZE_NFD* = G_NORMALIZE_DEFAULT + G_NORMALIZE_DEFAULT_COMPOSE* = 1 + G_NORMALIZE_NFC* = G_NORMALIZE_DEFAULT_COMPOSE + G_NORMALIZE_ALL* = 2 + G_NORMALIZE_NFKD* = G_NORMALIZE_ALL + G_NORMALIZE_ALL_COMPOSE* = 3 + G_NORMALIZE_NFKC* = G_NORMALIZE_ALL_COMPOSE + +proc g_utf8_normalize*(str: cstring, len: gssize, mode: TGNormalizeMode): cstring{. + cdecl, dynlib: gliblib, importc: "g_utf8_normalize".} +proc g_utf8_collate*(str1: cstring, str2: cstring): gint{.cdecl, + dynlib: gliblib, importc: "g_utf8_collate".} +proc g_utf8_collate_key*(str: cstring, len: gssize): cstring{.cdecl, + dynlib: gliblib, importc: "g_utf8_collate_key".} +type + PGString* = ptr TGString + TGString* = record + str*: cstring + len*: gsize + allocated_len*: gsize + + PGStringChunk* = pointer + +proc g_string_chunk_new*(size: gsize): PGStringChunk{.cdecl, dynlib: gliblib, + importc: "g_string_chunk_new".} +proc g_string_chunk_free*(chunk: PGStringChunk){.cdecl, dynlib: gliblib, + importc: "g_string_chunk_free".} +proc g_string_chunk_insert*(chunk: PGStringChunk, str: cstring): cstring{.cdecl, + dynlib: gliblib, importc: "g_string_chunk_insert".} +proc g_string_chunk_insert_const*(chunk: PGStringChunk, str: cstring): cstring{. + cdecl, dynlib: gliblib, importc: "g_string_chunk_insert_const".} +proc g_string_new*(init: cstring): PGString{.cdecl, dynlib: gliblib, + importc: "g_string_new".} +proc g_string_new_len*(init: cstring, len: gssize): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_new_len".} +proc g_string_sized_new*(dfl_size: gsize): PGString{.cdecl, dynlib: gliblib, + importc: "g_string_sized_new".} +proc g_string_free*(str: PGString, free_segment: gboolean): cstring{.cdecl, + dynlib: gliblib, importc: "g_string_free".} +proc g_string_equal*(v: PGString, v2: PGString): gboolean{.cdecl, + dynlib: gliblib, importc: "g_string_equal".} +proc g_string_hash*(str: PGString): guint{.cdecl, dynlib: gliblib, + importc: "g_string_hash".} +proc g_string_assign*(str: PGString, rval: cstring): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_assign".} +proc g_string_truncate*(str: PGString, len: gsize): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_truncate".} +proc g_string_set_size*(str: PGString, len: gsize): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_set_size".} +proc g_string_insert_len*(str: PGString, pos: gssize, val: cstring, len: gssize): PGString{. + cdecl, dynlib: gliblib, importc: "g_string_insert_len".} +proc g_string_append*(str: PGString, val: cstring): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_append".} +proc g_string_append_len*(str: PGString, val: cstring, len: gssize): PGString{. + cdecl, dynlib: gliblib, importc: "g_string_append_len".} +proc g_string_append_c*(str: PGString, c: gchar): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_append_c".} +proc g_string_append_unichar*(str: PGString, wc: gunichar): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_append_unichar".} +proc g_string_prepend*(str: PGString, val: cstring): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_prepend".} +proc g_string_prepend_c*(str: PGString, c: gchar): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_prepend_c".} +proc g_string_prepend_unichar*(str: PGString, wc: gunichar): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_prepend_unichar".} +proc g_string_prepend_len*(str: PGString, val: cstring, len: gssize): PGString{. + cdecl, dynlib: gliblib, importc: "g_string_prepend_len".} +proc g_string_insert*(str: PGString, pos: gssize, val: cstring): PGString{. + cdecl, dynlib: gliblib, importc: "g_string_insert".} +proc g_string_insert_c*(str: PGString, pos: gssize, c: gchar): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_insert_c".} +proc g_string_insert_unichar*(str: PGString, pos: gssize, wc: gunichar): PGString{. + cdecl, dynlib: gliblib, importc: "g_string_insert_unichar".} +proc g_string_erase*(str: PGString, pos: gssize, len: gssize): PGString{.cdecl, + dynlib: gliblib, importc: "g_string_erase".} +proc g_string_ascii_down*(str: PGString): PGString{.cdecl, dynlib: gliblib, + importc: "g_string_ascii_down".} +proc g_string_ascii_up*(str: PGString): PGString{.cdecl, dynlib: gliblib, + importc: "g_string_ascii_up".} +proc g_string_down*(str: PGString): PGString{.cdecl, dynlib: gliblib, + importc: "g_string_down".} +proc g_string_up*(str: PGString): PGString{.cdecl, dynlib: gliblib, + importc: "g_string_up".} +type + PGIOError* = ptr TGIOError + TGIOError* = enum + G_IO_ERROR_NONE, G_IO_ERROR_AGAIN, G_IO_ERROR_INVAL, G_IO_ERROR_UNKNOWN + +proc G_IO_CHANNEL_ERROR*(): TGQuark +type + PGIOChannelError* = ptr TGIOChannelError + TGIOChannelError* = enum + G_IO_CHANNEL_ERROR_FBIG, G_IO_CHANNEL_ERROR_INVAL, G_IO_CHANNEL_ERROR_IO, + G_IO_CHANNEL_ERROR_ISDIR, G_IO_CHANNEL_ERROR_NOSPC, G_IO_CHANNEL_ERROR_NXIO, + G_IO_CHANNEL_ERROR_OVERFLOW, G_IO_CHANNEL_ERROR_PIPE, + G_IO_CHANNEL_ERROR_FAILED + PGIOStatus* = ptr TGIOStatus + TGIOStatus* = enum + G_IO_STATUS_ERROR, G_IO_STATUS_NORMAL, G_IO_STATUS_EOF, G_IO_STATUS_AGAIN + PGSeekType* = ptr TGSeekType + TGSeekType* = enum + G_SEEK_CUR, G_SEEK_SET, G_SEEK_END + PGIOCondition* = ptr TGIOCondition + TGIOCondition* = gint + +const + G_IO_IN* = GLIB_SYSDEF_POLLIN + G_IO_OUT* = GLIB_SYSDEF_POLLOUT + G_IO_PRI* = GLIB_SYSDEF_POLLPRI + G_IO_ERR* = GLIB_SYSDEF_POLLERR + G_IO_HUP* = GLIB_SYSDEF_POLLHUP + G_IO_NVAL* = GLIB_SYSDEF_POLLNVAL + +type + PGIOFlags* = ptr TGIOFlags + TGIOFlags* = gint + +const + G_IO_FLAG_APPEND* = 1 shl 0 + G_IO_FLAG_NONBLOCK* = 1 shl 1 + G_IO_FLAG_IS_READABLE* = 1 shl 2 + G_IO_FLAG_IS_WRITEABLE* = 1 shl 3 + G_IO_FLAG_IS_SEEKABLE* = 1 shl 4 + G_IO_FLAG_MASK* = (1 shl 5) - 1 + G_IO_FLAG_GET_MASK* = G_IO_FLAG_MASK + G_IO_FLAG_SET_MASK* = G_IO_FLAG_APPEND or G_IO_FLAG_NONBLOCK + +type + PGIOChannel* = ptr TGIOChannel + TGIOFunc* = proc (source: PGIOChannel, condition: TGIOCondition, + data: gpointer): gboolean{.cdecl.} + PGIOFuncs* = ptr TGIOFuncs + TGIOFuncs* = record + io_read*: proc (channel: PGIOChannel, buf: cstring, count: gsize, + bytes_read: Pgsize, err: pointer): TGIOStatus{.cdecl.} + io_write*: proc (channel: PGIOChannel, buf: cstring, count: gsize, + bytes_written: Pgsize, err: pointer): TGIOStatus{.cdecl.} + io_seek*: proc (channel: PGIOChannel, offset: gint64, theType: TGSeekType, + err: pointer): TGIOStatus{.cdecl.} + io_close*: proc (channel: PGIOChannel, err: pointer): TGIOStatus{.cdecl.} + io_create_watch*: proc (channel: PGIOChannel, condition: TGIOCondition): PGSource{. + cdecl.} + io_free*: proc (channel: PGIOChannel){.cdecl.} + io_set_flags*: proc (channel: PGIOChannel, flags: TGIOFlags, err: pointer): TGIOStatus{. + cdecl.} + io_get_flags*: proc (channel: PGIOChannel): TGIOFlags{.cdecl.} + + TGIOChannel* = record + ref_count*: guint + funcs*: PGIOFuncs + encoding*: cstring + read_cd*: TGIConv + write_cd*: TGIConv + line_term*: cstring + line_term_len*: guint + buf_size*: gsize + read_buf*: PGString + encoded_read_buf*: PGString + write_buf*: PGString + partial_write_buf*: array[0..5, gchar] + flag0*: guint16 + reserved1*: gpointer + reserved2*: gpointer + + +const + bm_TGIOChannel_use_buffer* = 0x00000001 + bp_TGIOChannel_use_buffer* = 0 + bm_TGIOChannel_do_encode* = 0x00000002 + bp_TGIOChannel_do_encode* = 1 + bm_TGIOChannel_close_on_unref* = 0x00000004 + bp_TGIOChannel_close_on_unref* = 2 + bm_TGIOChannel_is_readable* = 0x00000008 + bp_TGIOChannel_is_readable* = 3 + bm_TGIOChannel_is_writeable* = 0x00000010 + bp_TGIOChannel_is_writeable* = 4 + bm_TGIOChannel_is_seekable* = 0x00000020 + bp_TGIOChannel_is_seekable* = 5 + +proc TGIOChannel_use_buffer*(a: var TGIOChannel): guint +proc TGIOChannel_set_use_buffer*(a: var TGIOChannel, `use_buffer`: guint) +proc TGIOChannel_do_encode*(a: var TGIOChannel): guint +proc TGIOChannel_set_do_encode*(a: var TGIOChannel, `do_encode`: guint) +proc TGIOChannel_close_on_unref*(a: var TGIOChannel): guint +proc TGIOChannel_set_close_on_unref*(a: var TGIOChannel, `close_on_unref`: guint) +proc TGIOChannel_is_readable*(a: var TGIOChannel): guint +proc TGIOChannel_set_is_readable*(a: var TGIOChannel, `is_readable`: guint) +proc TGIOChannel_is_writeable*(a: var TGIOChannel): guint +proc TGIOChannel_set_is_writeable*(a: var TGIOChannel, `is_writeable`: guint) +proc TGIOChannel_is_seekable*(a: var TGIOChannel): guint +proc TGIOChannel_set_is_seekable*(a: var TGIOChannel, `is_seekable`: guint) +proc g_io_channel_init*(channel: PGIOChannel){.cdecl, dynlib: gliblib, + importc: "g_io_channel_init".} +proc g_io_channel_ref*(channel: PGIOChannel){.cdecl, dynlib: gliblib, + importc: "g_io_channel_ref".} +proc g_io_channel_unref*(channel: PGIOChannel){.cdecl, dynlib: gliblib, + importc: "g_io_channel_unref".} +proc g_io_channel_read*(channel: PGIOChannel, buf: cstring, count: gsize, + bytes_read: Pgsize): TGIOError{.cdecl, dynlib: gliblib, + importc: "g_io_channel_read".} +proc g_io_channel_write*(channel: PGIOChannel, buf: cstring, count: gsize, + bytes_written: Pgsize): TGIOError{.cdecl, + dynlib: gliblib, importc: "g_io_channel_write".} +proc g_io_channel_seek*(channel: PGIOChannel, offset: gint64, + theType: TGSeekType): TGIOError{.cdecl, dynlib: gliblib, + importc: "g_io_channel_seek".} +proc g_io_channel_close*(channel: PGIOChannel){.cdecl, dynlib: gliblib, + importc: "g_io_channel_close".} +proc g_io_channel_shutdown*(channel: PGIOChannel, flush: gboolean, err: pointer): TGIOStatus{. + cdecl, dynlib: gliblib, importc: "g_io_channel_shutdown".} +proc g_io_add_watch_full*(channel: PGIOChannel, priority: gint, + condition: TGIOCondition, func: TGIOFunc, + user_data: gpointer, notify: TGDestroyNotify): guint{. + cdecl, dynlib: gliblib, importc: "g_io_add_watch_full".} +proc g_io_create_watch*(channel: PGIOChannel, condition: TGIOCondition): PGSource{. + cdecl, dynlib: gliblib, importc: "g_io_create_watch".} +proc g_io_add_watch*(channel: PGIOChannel, condition: TGIOCondition, + func: TGIOFunc, user_data: gpointer): guint{.cdecl, + dynlib: gliblib, importc: "g_io_add_watch".} +proc g_io_channel_set_buffer_size*(channel: PGIOChannel, size: gsize){.cdecl, + dynlib: gliblib, importc: "g_io_channel_set_buffer_size".} +proc g_io_channel_get_buffer_size*(channel: PGIOChannel): gsize{.cdecl, + dynlib: gliblib, importc: "g_io_channel_get_buffer_size".} +proc g_io_channel_get_buffer_condition*(channel: PGIOChannel): TGIOCondition{. + cdecl, dynlib: gliblib, importc: "g_io_channel_get_buffer_condition".} +proc g_io_channel_set_flags*(channel: PGIOChannel, flags: TGIOFlags, + error: pointer): TGIOStatus{.cdecl, + dynlib: gliblib, importc: "g_io_channel_set_flags".} +proc g_io_channel_get_flags*(channel: PGIOChannel): TGIOFlags{.cdecl, + dynlib: gliblib, importc: "g_io_channel_get_flags".} +proc g_io_channel_set_line_term*(channel: PGIOChannel, line_term: cstring, + length: gint){.cdecl, dynlib: gliblib, + importc: "g_io_channel_set_line_term".} +proc g_io_channel_get_line_term*(channel: PGIOChannel, length: Pgint): cstring{. + cdecl, dynlib: gliblib, importc: "g_io_channel_get_line_term".} +proc g_io_channel_set_buffered*(channel: PGIOChannel, buffered: gboolean){. + cdecl, dynlib: gliblib, importc: "g_io_channel_set_buffered".} +proc g_io_channel_get_buffered*(channel: PGIOChannel): gboolean{.cdecl, + dynlib: gliblib, importc: "g_io_channel_get_buffered".} +proc g_io_channel_set_encoding*(channel: PGIOChannel, encoding: cstring, + error: pointer): TGIOStatus{.cdecl, + dynlib: gliblib, importc: "g_io_channel_set_encoding".} +proc g_io_channel_get_encoding*(channel: PGIOChannel): cstring{.cdecl, + dynlib: gliblib, importc: "g_io_channel_get_encoding".} +proc g_io_channel_set_close_on_unref*(channel: PGIOChannel, do_close: gboolean){. + cdecl, dynlib: gliblib, importc: "g_io_channel_set_close_on_unref".} +proc g_io_channel_get_close_on_unref*(channel: PGIOChannel): gboolean{.cdecl, + dynlib: gliblib, importc: "g_io_channel_get_close_on_unref".} +proc g_io_channel_flush*(channel: PGIOChannel, error: pointer): TGIOStatus{. + cdecl, dynlib: gliblib, importc: "g_io_channel_flush".} +proc g_io_channel_read_line*(channel: PGIOChannel, str_return: PPgchar, + length: Pgsize, terminator_pos: Pgsize, + error: pointer): TGIOStatus{.cdecl, + dynlib: gliblib, importc: "g_io_channel_read_line".} +proc g_io_channel_read_line_string*(channel: PGIOChannel, buffer: PGString, + terminator_pos: Pgsize, error: pointer): TGIOStatus{. + cdecl, dynlib: gliblib, importc: "g_io_channel_read_line_string".} +proc g_io_channel_read_to_end*(channel: PGIOChannel, str_return: PPgchar, + length: Pgsize, error: pointer): TGIOStatus{. + cdecl, dynlib: gliblib, importc: "g_io_channel_read_to_end".} +proc g_io_channel_read_chars*(channel: PGIOChannel, buf: cstring, count: gsize, + bytes_read: Pgsize, error: pointer): TGIOStatus{. + cdecl, dynlib: gliblib, importc: "g_io_channel_read_chars".} +proc g_io_channel_read_unichar*(channel: PGIOChannel, thechar: Pgunichar, + error: pointer): TGIOStatus{.cdecl, + dynlib: gliblib, importc: "g_io_channel_read_unichar".} +proc g_io_channel_write_chars*(channel: PGIOChannel, buf: cstring, + count: gssize, bytes_written: Pgsize, + error: pointer): TGIOStatus{.cdecl, + dynlib: gliblib, importc: "g_io_channel_write_chars".} +proc g_io_channel_write_unichar*(channel: PGIOChannel, thechar: gunichar, + error: pointer): TGIOStatus{.cdecl, + dynlib: gliblib, importc: "g_io_channel_write_unichar".} +proc g_io_channel_seek_position*(channel: PGIOChannel, offset: gint64, + theType: TGSeekType, error: pointer): TGIOStatus{. + cdecl, dynlib: gliblib, importc: "g_io_channel_seek_position".} +proc g_io_channel_new_file*(filename: cstring, mode: cstring, error: pointer): PGIOChannel{. + cdecl, dynlib: gliblib, importc: "g_io_channel_new_file".} +proc g_io_channel_error_quark*(): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_io_channel_error_quark".} +proc g_io_channel_error_from_errno*(en: gint): TGIOChannelError{.cdecl, + dynlib: gliblib, importc: "g_io_channel_error_from_errno".} +proc g_io_channel_unix_new*(fd: int32): PGIOChannel{.cdecl, dynlib: gliblib, + importc: "g_io_channel_unix_new".} +proc g_io_channel_unix_get_fd*(channel: PGIOChannel): gint{.cdecl, + dynlib: gliblib, importc: "g_io_channel_unix_get_fd".} +const + G_LOG_LEVEL_USER_SHIFT* = 8 + +type + PGLogLevelFlags* = ptr TGLogLevelFlags + TGLogLevelFlags* = int32 + +const + G_LOG_FLAG_RECURSION* = 1 shl 0 + G_LOG_FLAG_FATAL* = 1 shl 1 + G_LOG_LEVEL_ERROR* = 1 shl 2 + G_LOG_LEVEL_CRITICAL* = 1 shl 3 + G_LOG_LEVEL_WARNING* = 1 shl 4 + G_LOG_LEVEL_MESSAGE* = 1 shl 5 + G_LOG_LEVEL_INFO* = 1 shl 6 + G_LOG_LEVEL_DEBUG* = 1 shl 7 + G_LOG_LEVEL_MASK* = not 3 + +const + G_LOG_FATAL_MASK* = 5 + +type + TGLogFunc* = proc (log_domain: cstring, log_level: TGLogLevelFlags, + TheMessage: cstring, user_data: gpointer){.cdecl.} + +proc g_log_set_handler*(log_domain: cstring, log_levels: TGLogLevelFlags, + log_func: TGLogFunc, user_data: gpointer): guint{.cdecl, + dynlib: gliblib, importc: "g_log_set_handler".} +proc g_log_remove_handler*(log_domain: cstring, handler_id: guint){.cdecl, + dynlib: gliblib, importc: "g_log_remove_handler".} +proc g_log_default_handler*(log_domain: cstring, log_level: TGLogLevelFlags, + TheMessage: cstring, unused_data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_log_default_handler".} +proc g_log_set_fatal_mask*(log_domain: cstring, fatal_mask: TGLogLevelFlags): TGLogLevelFlags{. + cdecl, dynlib: gliblib, importc: "g_log_set_fatal_mask".} +proc g_log_set_always_fatal*(fatal_mask: TGLogLevelFlags): TGLogLevelFlags{. + cdecl, dynlib: gliblib, importc: "g_log_set_always_fatal".} +proc `g_log_fallback_handler`*(log_domain: cstring, log_level: TGLogLevelFlags, + message: cstring, unused_data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_log_fallback_handler".} +const + G_LOG_DOMAIN* = nil + +when false: + proc g_error*(format: cstring){.varargs.} + proc g_message*(format: cstring){.varargs.} + proc g_critical*(format: cstring){.varargs.} + proc g_warning*(format: cstring){.varargs.} + +type + TGPrintFunc* = proc (str: cstring) + +proc g_set_print_handler*(func: TGPrintFunc): TGPrintFunc{.cdecl, + dynlib: gliblib, importc: "g_set_print_handler".} +proc g_set_printerr_handler*(func: TGPrintFunc): TGPrintFunc{.cdecl, + dynlib: gliblib, importc: "g_set_printerr_handler".} +type + PGMarkupError* = ptr TGMarkupError + TGMarkupError* = enum + G_MARKUP_ERROR_BAD_UTF8, G_MARKUP_ERROR_EMPTY, G_MARKUP_ERROR_PARSE, + G_MARKUP_ERROR_UNKNOWN_ELEMENT, G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, + G_MARKUP_ERROR_INVALID_CONTENT + +proc G_MARKUP_ERROR*(): TGQuark +proc g_markup_error_quark*(): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_markup_error_quark".} +type + PGMarkupParseFlags* = ptr TGMarkupParseFlags + TGMarkupParseFlags* = int + +const + G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG* = 1 shl 0 + +type + PGMarkupParseContext* = ptr TGMarkupParseContext + TGMarkupParseContext* = pointer + PGMarkupParser* = ptr TGMarkupParser + TGMarkupParser* = record + start_element*: proc (context: PGMarkupParseContext, element_name: cstring, + attribute_names: PPgchar, attribute_values: PPgchar, + user_data: gpointer, error: pointer){.cdecl.} + end_element*: proc (context: PGMarkupParseContext, element_name: cstring, + user_data: gpointer, error: pointer){.cdecl.} + text*: proc (context: PGMarkupParseContext, text: cstring, text_len: gsize, + user_data: gpointer, error: pointer){.cdecl.} + passthrough*: proc (context: PGMarkupParseContext, + passthrough_text: cstring, text_len: gsize, + user_data: gpointer, error: pointer){.cdecl.} + error*: proc (context: PGMarkupParseContext, error: pointer, + user_data: gpointer){.cdecl.} + + +proc g_markup_parse_context_new*(parser: PGMarkupParser, + flags: TGMarkupParseFlags, user_data: gpointer, + user_data_dnotify: TGDestroyNotify): PGMarkupParseContext{. + cdecl, dynlib: gliblib, importc: "g_markup_parse_context_new".} +proc g_markup_parse_context_free*(context: PGMarkupParseContext){.cdecl, + dynlib: gliblib, importc: "g_markup_parse_context_free".} +proc g_markup_parse_context_parse*(context: PGMarkupParseContext, text: cstring, + text_len: gssize, error: pointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_markup_parse_context_parse".} +proc g_markup_parse_context_end_parse*(context: PGMarkupParseContext, + error: pointer): gboolean{.cdecl, + dynlib: gliblib, importc: "g_markup_parse_context_end_parse".} +proc g_markup_parse_context_get_position*(context: PGMarkupParseContext, + line_number: Pgint, char_number: Pgint){.cdecl, dynlib: gliblib, + importc: "g_markup_parse_context_get_position".} +proc g_markup_escape_text*(text: cstring, length: gssize): cstring{.cdecl, + dynlib: gliblib, importc: "g_markup_escape_text".} +type + PGNode* = ptr TGNode + TGNode* = record + data*: gpointer + next*: PGNode + prev*: PGNode + parent*: PGNode + children*: PGNode + + PGTraverseFlags* = ptr TGTraverseFlags + TGTraverseFlags* = gint + +const + G_TRAVERSE_LEAFS* = 1 shl 0 + G_TRAVERSE_NON_LEAFS* = 1 shl 1 + G_TRAVERSE_ALL* = G_TRAVERSE_LEAFS or G_TRAVERSE_NON_LEAFS + G_TRAVERSE_MASK* = 0x00000003 + +type + PGTraverseType* = ptr TGTraverseType + TGTraverseType* = enum + G_IN_ORDER, G_PRE_ORDER, G_POST_ORDER, G_LEVEL_ORDER + TGNodeTraverseFunc* = proc (node: PGNode, data: gpointer): gboolean{.cdecl.} + TGNodeForeachFunc* = proc (node: PGNode, data: gpointer){.cdecl.} + +proc G_NODE_IS_ROOT*(node: PGNode): bool +proc G_NODE_IS_LEAF*(node: PGNode): bool +proc g_node_push_allocator*(allocator: PGAllocator){.cdecl, dynlib: gliblib, + importc: "g_node_push_allocator".} +proc g_node_pop_allocator*(){.cdecl, dynlib: gliblib, + importc: "g_node_pop_allocator".} +proc g_node_new*(data: gpointer): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_new".} +proc g_node_destroy*(root: PGNode){.cdecl, dynlib: gliblib, + importc: "g_node_destroy".} +proc g_node_unlink*(node: PGNode){.cdecl, dynlib: gliblib, + importc: "g_node_unlink".} +proc g_node_copy*(node: PGNode): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_copy".} +proc g_node_insert*(parent: PGNode, position: gint, node: PGNode): PGNode{. + cdecl, dynlib: gliblib, importc: "g_node_insert".} +proc g_node_insert_before*(parent: PGNode, sibling: PGNode, node: PGNode): PGNode{. + cdecl, dynlib: gliblib, importc: "g_node_insert_before".} +proc g_node_insert_after*(parent: PGNode, sibling: PGNode, node: PGNode): PGNode{. + cdecl, dynlib: gliblib, importc: "g_node_insert_after".} +proc g_node_prepend*(parent: PGNode, node: PGNode): PGNode{.cdecl, + dynlib: gliblib, importc: "g_node_prepend".} +proc g_node_n_nodes*(root: PGNode, flags: TGTraverseFlags): guint{.cdecl, + dynlib: gliblib, importc: "g_node_n_nodes".} +proc g_node_get_root*(node: PGNode): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_get_root".} +proc g_node_is_ancestor*(node: PGNode, descendant: PGNode): gboolean{.cdecl, + dynlib: gliblib, importc: "g_node_is_ancestor".} +proc g_node_depth*(node: PGNode): guint{.cdecl, dynlib: gliblib, + importc: "g_node_depth".} +proc g_node_find*(root: PGNode, order: TGTraverseType, flags: TGTraverseFlags, + data: gpointer): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_find".} +proc g_node_append*(parent: PGNode, node: PGNode): PGNode +proc g_node_insert_data*(parent: PGNode, position: gint, data: gpointer): PGNode +proc g_node_insert_data_before*(parent: PGNode, sibling: PGNode, data: gpointer): PGNode +proc g_node_prepend_data*(parent: PGNode, data: gpointer): PGNode +proc g_node_append_data*(parent: PGNode, data: gpointer): PGNode +proc g_node_traverse*(root: PGNode, order: TGTraverseType, + flags: TGTraverseFlags, max_depth: gint, + func: TGNodeTraverseFunc, data: gpointer): guint{.cdecl, + dynlib: gliblib, importc: "g_node_traverse".} +proc g_node_max_height*(root: PGNode): guint{.cdecl, dynlib: gliblib, + importc: "g_node_max_height".} +proc g_node_children_foreach*(node: PGNode, flags: TGTraverseFlags, + func: TGNodeForeachFunc, data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_node_children_foreach".} +proc g_node_reverse_children*(node: PGNode){.cdecl, dynlib: gliblib, + importc: "g_node_reverse_children".} +proc g_node_n_children*(node: PGNode): guint{.cdecl, dynlib: gliblib, + importc: "g_node_n_children".} +proc g_node_nth_child*(node: PGNode, n: guint): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_nth_child".} +proc g_node_last_child*(node: PGNode): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_last_child".} +proc g_node_find_child*(node: PGNode, flags: TGTraverseFlags, data: gpointer): PGNode{. + cdecl, dynlib: gliblib, importc: "g_node_find_child".} +proc g_node_child_position*(node: PGNode, child: PGNode): gint{.cdecl, + dynlib: gliblib, importc: "g_node_child_position".} +proc g_node_child_index*(node: PGNode, data: gpointer): gint{.cdecl, + dynlib: gliblib, importc: "g_node_child_index".} +proc g_node_first_sibling*(node: PGNode): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_first_sibling".} +proc g_node_last_sibling*(node: PGNode): PGNode{.cdecl, dynlib: gliblib, + importc: "g_node_last_sibling".} +proc g_node_prev_sibling*(node: PGNode): PGNode +proc g_node_next_sibling*(node: PGNode): PGNode +proc g_node_first_child*(node: PGNode): PGNode +type + PGTree* = pointer + TGTraverseFunc* = proc (key: gpointer, value: gpointer, data: gpointer): gboolean{. + cdecl.} + +proc g_tree_new*(key_compare_func: TGCompareFunc): PGTree{.cdecl, + dynlib: gliblib, importc: "g_tree_new".} +proc g_tree_new_with_data*(key_compare_func: TGCompareDataFunc, + key_compare_data: gpointer): PGTree{.cdecl, + dynlib: gliblib, importc: "g_tree_new_with_data".} +proc g_tree_new_full*(key_compare_func: TGCompareDataFunc, + key_compare_data: gpointer, + key_destroy_func: TGDestroyNotify, + value_destroy_func: TGDestroyNotify): PGTree{.cdecl, + dynlib: gliblib, importc: "g_tree_new_full".} +proc g_tree_destroy*(tree: PGTree){.cdecl, dynlib: gliblib, + importc: "g_tree_destroy".} +proc g_tree_insert*(tree: PGTree, key: gpointer, value: gpointer){.cdecl, + dynlib: gliblib, importc: "g_tree_insert".} +proc g_tree_replace*(tree: PGTree, key: gpointer, value: gpointer){.cdecl, + dynlib: gliblib, importc: "g_tree_replace".} +proc g_tree_remove*(tree: PGTree, key: gconstpointer){.cdecl, dynlib: gliblib, + importc: "g_tree_remove".} +proc g_tree_steal*(tree: PGTree, key: gconstpointer){.cdecl, dynlib: gliblib, + importc: "g_tree_steal".} +proc g_tree_lookup*(tree: PGTree, key: gconstpointer): gpointer{.cdecl, + dynlib: gliblib, importc: "g_tree_lookup".} +proc g_tree_lookup_extended*(tree: PGTree, lookup_key: gconstpointer, + orig_key: Pgpointer, value: Pgpointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_tree_lookup_extended".} +proc g_tree_foreach*(tree: PGTree, func: TGTraverseFunc, user_data: gpointer){. + cdecl, dynlib: gliblib, importc: "g_tree_foreach".} +proc g_tree_search*(tree: PGTree, search_func: TGCompareFunc, + user_data: gconstpointer): gpointer{.cdecl, dynlib: gliblib, + importc: "g_tree_search".} +proc g_tree_height*(tree: PGTree): gint{.cdecl, dynlib: gliblib, + importc: "g_tree_height".} +proc g_tree_nnodes*(tree: PGTree): gint{.cdecl, dynlib: gliblib, + importc: "g_tree_nnodes".} +type + PGPatternSpec* = pointer + +proc g_pattern_spec_new*(pattern: cstring): PGPatternSpec{.cdecl, + dynlib: gliblib, importc: "g_pattern_spec_new".} +proc g_pattern_spec_free*(pspec: PGPatternSpec){.cdecl, dynlib: gliblib, + importc: "g_pattern_spec_free".} +proc g_pattern_spec_equal*(pspec1: PGPatternSpec, pspec2: PGPatternSpec): gboolean{. + cdecl, dynlib: gliblib, importc: "g_pattern_spec_equal".} +proc g_pattern_match*(pspec: PGPatternSpec, string_length: guint, str: cstring, + string_reversed: cstring): gboolean{.cdecl, + dynlib: gliblib, importc: "g_pattern_match".} +proc g_pattern_match_string*(pspec: PGPatternSpec, str: cstring): gboolean{. + cdecl, dynlib: gliblib, importc: "g_pattern_match_string".} +proc g_pattern_match_simple*(pattern: cstring, str: cstring): gboolean{.cdecl, + dynlib: gliblib, importc: "g_pattern_match_simple".} +proc g_spaced_primes_closest*(num: guint): guint{.cdecl, dynlib: gliblib, + importc: "g_spaced_primes_closest".} +proc g_qsort_with_data*(pbase: gconstpointer, total_elems: gint, size: gsize, + compare_func: TGCompareDataFunc, user_data: gpointer){. + cdecl, dynlib: gliblib, importc: "g_qsort_with_data".} +type + PGQueue* = ptr TGQueue + TGQueue* = record + head*: PGList + tail*: PGList + length*: guint + + +proc g_queue_new*(): PGQueue{.cdecl, dynlib: gliblib, importc: "g_queue_new".} +proc g_queue_free*(queue: PGQueue){.cdecl, dynlib: gliblib, + importc: "g_queue_free".} +proc g_queue_push_head*(queue: PGQueue, data: gpointer){.cdecl, dynlib: gliblib, + importc: "g_queue_push_head".} +proc g_queue_push_tail*(queue: PGQueue, data: gpointer){.cdecl, dynlib: gliblib, + importc: "g_queue_push_tail".} +proc g_queue_pop_head*(queue: PGQueue): gpointer{.cdecl, dynlib: gliblib, + importc: "g_queue_pop_head".} +proc g_queue_pop_tail*(queue: PGQueue): gpointer{.cdecl, dynlib: gliblib, + importc: "g_queue_pop_tail".} +proc g_queue_is_empty*(queue: PGQueue): gboolean{.cdecl, dynlib: gliblib, + importc: "g_queue_is_empty".} +proc g_queue_peek_head*(queue: PGQueue): gpointer{.cdecl, dynlib: gliblib, + importc: "g_queue_peek_head".} +proc g_queue_peek_tail*(queue: PGQueue): gpointer{.cdecl, dynlib: gliblib, + importc: "g_queue_peek_tail".} +proc g_queue_push_head_link*(queue: PGQueue, link: PGList){.cdecl, + dynlib: gliblib, importc: "g_queue_push_head_link".} +proc g_queue_push_tail_link*(queue: PGQueue, link: PGList){.cdecl, + dynlib: gliblib, importc: "g_queue_push_tail_link".} +proc g_queue_pop_head_link*(queue: PGQueue): PGList{.cdecl, dynlib: gliblib, + importc: "g_queue_pop_head_link".} +proc g_queue_pop_tail_link*(queue: PGQueue): PGList{.cdecl, dynlib: gliblib, + importc: "g_queue_pop_tail_link".} +type + PGRand* = pointer + +proc g_rand_new_with_seed*(seed: guint32): PGRand{.cdecl, dynlib: gliblib, + importc: "g_rand_new_with_seed".} +proc g_rand_new*(): PGRand{.cdecl, dynlib: gliblib, importc: "g_rand_new".} +proc g_rand_free*(rand: PGRand){.cdecl, dynlib: gliblib, importc: "g_rand_free".} +proc g_rand_set_seed*(rand: PGRand, seed: guint32){.cdecl, dynlib: gliblib, + importc: "g_rand_set_seed".} +proc g_rand_boolean*(rand: PGRand): gboolean +proc g_rand_int*(rand: PGRand): guint32{.cdecl, dynlib: gliblib, + importc: "g_rand_int".} +proc g_rand_int_range*(rand: PGRand, `begin`: gint32, `end`: gint32): gint32{. + cdecl, dynlib: gliblib, importc: "g_rand_int_range".} +proc g_rand_double*(rand: PGRand): gdouble{.cdecl, dynlib: gliblib, + importc: "g_rand_double".} +proc g_rand_double_range*(rand: PGRand, `begin`: gdouble, `end`: gdouble): gdouble{. + cdecl, dynlib: gliblib, importc: "g_rand_double_range".} +proc g_random_set_seed*(seed: guint32){.cdecl, dynlib: gliblib, + importc: "g_random_set_seed".} +proc g_random_boolean*(): gboolean +proc g_random_int*(): guint32{.cdecl, dynlib: gliblib, importc: "g_random_int".} +proc g_random_int_range*(`begin`: gint32, `end`: gint32): gint32{.cdecl, + dynlib: gliblib, importc: "g_random_int_range".} +proc g_random_double*(): gdouble{.cdecl, dynlib: gliblib, + importc: "g_random_double".} +proc g_random_double_range*(`begin`: gdouble, `end`: gdouble): gdouble{.cdecl, + dynlib: gliblib, importc: "g_random_double_range".} +type + PGTuples* = ptr TGTuples + TGTuples* = record + len*: guint + + PGRelation* = pointer + +proc g_relation_new*(fields: gint): PGRelation{.cdecl, dynlib: gliblib, + importc: "g_relation_new".} +proc g_relation_destroy*(relation: PGRelation){.cdecl, dynlib: gliblib, + importc: "g_relation_destroy".} +proc g_relation_index*(relation: PGRelation, field: gint, hash_func: TGHashFunc, + key_equal_func: TGEqualFunc){.cdecl, dynlib: gliblib, + importc: "g_relation_index".} +proc g_relation_delete*(relation: PGRelation, key: gconstpointer, field: gint): gint{. + cdecl, dynlib: gliblib, importc: "g_relation_delete".} +proc g_relation_select*(relation: PGRelation, key: gconstpointer, field: gint): PGTuples{. + cdecl, dynlib: gliblib, importc: "g_relation_select".} +proc g_relation_count*(relation: PGRelation, key: gconstpointer, field: gint): gint{. + cdecl, dynlib: gliblib, importc: "g_relation_count".} +proc g_relation_print*(relation: PGRelation){.cdecl, dynlib: gliblib, + importc: "g_relation_print".} +proc g_tuples_destroy*(tuples: PGTuples){.cdecl, dynlib: gliblib, + importc: "g_tuples_destroy".} +proc g_tuples_index*(tuples: PGTuples, index: gint, field: gint): gpointer{. + cdecl, dynlib: gliblib, importc: "g_tuples_index".} +type + PGTokenType* = ptr TGTokenType + TGTokenType* = gint + +const + G_TOKEN_LEFT_PAREN* = 40 + G_TOKEN_RIGHT_PAREN* = 41 + G_TOKEN_LEFT_CURLY* = 123 + G_TOKEN_RIGHT_CURLY* = 125 + G_TOKEN_LEFT_BRACE* = 91 + G_TOKEN_RIGHT_BRACE* = 93 + G_TOKEN_EQUAL_SIGN* = 61 + G_TOKEN_COMMA* = 44 + G_TOKEN_NONE* = 256 + G_TOKEN_ERROR* = 257 + G_TOKEN_CHAR* = 258 + G_TOKEN_OCTAL* = 260 + G_TOKEN_INT* = 261 + G_TOKEN_HEX* = 262 + G_TOKEN_FLOAT* = 263 + G_TOKEN_STRING* = 264 + G_TOKEN_SYMBOL* = 265 + G_TOKEN_IDENTIFIER* = 266 + G_TOKEN_IDENTIFIER_NULL* = 267 + G_TOKEN_COMMENT_SINGLE* = 268 + G_TOKEN_COMMENT_MULTI* = 269 + G_TOKEN_LAST* = 270 + +type + PGScanner* = ptr TGScanner + PGScannerConfig* = ptr TGScannerConfig + PGTokenValue* = ptr TGTokenValue + TGTokenValue* = record + v_float*: gdouble + + TGScannerMsgFunc* = proc (scanner: PGScanner, message: cstring, + error: gboolean){.cdecl.} + TGScanner* = record + user_data*: gpointer + max_parse_errors*: guint + parse_errors*: guint + input_name*: cstring + qdata*: PGData + config*: PGScannerConfig + token*: TGTokenType + value*: TGTokenValue + line*: guint + position*: guint + next_token*: TGTokenType + next_value*: TGTokenValue + next_line*: guint + next_position*: guint + symbol_table*: PGHashTable + input_fd*: gint + text*: cstring + text_end*: cstring + buffer*: cstring + scope_id*: guint + msg_handler*: TGScannerMsgFunc + + TGScannerConfig* = record + cset_skip_characters*: cstring + cset_identifier_first*: cstring + cset_identifier_nth*: cstring + cpair_comment_single*: cstring + flag0*: int32 + padding_dummy*: guint + + +const + G_CSET_A_2_Z_UCASE* = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + G_CSET_a_2_z_lcase* = "abcdefghijklmnopqrstuvwxyz" + G_CSET_DIGITS* = "0123456789" + +const + bm_TGScannerConfig_case_sensitive* = 0x00000001 + bp_TGScannerConfig_case_sensitive* = 0 + bm_TGScannerConfig_skip_comment_multi* = 0x00000002 + bp_TGScannerConfig_skip_comment_multi* = 1 + bm_TGScannerConfig_skip_comment_single* = 0x00000004 + bp_TGScannerConfig_skip_comment_single* = 2 + bm_TGScannerConfig_scan_comment_multi* = 0x00000008 + bp_TGScannerConfig_scan_comment_multi* = 3 + bm_TGScannerConfig_scan_identifier* = 0x00000010 + bp_TGScannerConfig_scan_identifier* = 4 + bm_TGScannerConfig_scan_identifier_1char* = 0x00000020 + bp_TGScannerConfig_scan_identifier_1char* = 5 + bm_TGScannerConfig_scan_identifier_NULL* = 0x00000040 + bp_TGScannerConfig_scan_identifier_NULL* = 6 + bm_TGScannerConfig_scan_symbols* = 0x00000080 + bp_TGScannerConfig_scan_symbols* = 7 + bm_TGScannerConfig_scan_binary* = 0x00000100 + bp_TGScannerConfig_scan_binary* = 8 + bm_TGScannerConfig_scan_octal* = 0x00000200 + bp_TGScannerConfig_scan_octal* = 9 + bm_TGScannerConfig_scan_float* = 0x00000400 + bp_TGScannerConfig_scan_float* = 10 + bm_TGScannerConfig_scan_hex* = 0x00000800 + bp_TGScannerConfig_scan_hex* = 11 + bm_TGScannerConfig_scan_hex_dollar* = 0x00001000 + bp_TGScannerConfig_scan_hex_dollar* = 12 + bm_TGScannerConfig_scan_string_sq* = 0x00002000 + bp_TGScannerConfig_scan_string_sq* = 13 + bm_TGScannerConfig_scan_string_dq* = 0x00004000 + bp_TGScannerConfig_scan_string_dq* = 14 + bm_TGScannerConfig_numbers_2_int* = 0x00008000 + bp_TGScannerConfig_numbers_2_int* = 15 + bm_TGScannerConfig_int_2_float* = 0x00010000 + bp_TGScannerConfig_int_2_float* = 16 + bm_TGScannerConfig_identifier_2_string* = 0x00020000 + bp_TGScannerConfig_identifier_2_string* = 17 + bm_TGScannerConfig_char_2_token* = 0x00040000 + bp_TGScannerConfig_char_2_token* = 18 + bm_TGScannerConfig_symbol_2_token* = 0x00080000 + bp_TGScannerConfig_symbol_2_token* = 19 + bm_TGScannerConfig_scope_0_fallback* = 0x00100000 + bp_TGScannerConfig_scope_0_fallback* = 20 + +proc TGScannerConfig_case_sensitive*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_case_sensitive*(a: var TGScannerConfig, + `case_sensitive`: guint) +proc TGScannerConfig_skip_comment_multi*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_skip_comment_multi*(a: var TGScannerConfig, + `skip_comment_multi`: guint) +proc TGScannerConfig_skip_comment_single*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_skip_comment_single*(a: var TGScannerConfig, + `skip_comment_single`: guint) +proc TGScannerConfig_scan_comment_multi*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_comment_multi*(a: var TGScannerConfig, + `scan_comment_multi`: guint) +proc TGScannerConfig_scan_identifier*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_identifier*(a: var TGScannerConfig, + `scan_identifier`: guint) +proc TGScannerConfig_scan_identifier_1char*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_identifier_1char*(a: var TGScannerConfig, + `scan_identifier_1char`: guint) +proc TGScannerConfig_scan_identifier_NULL*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_identifier_NULL*(a: var TGScannerConfig, + `scan_identifier_NULL`: guint) +proc TGScannerConfig_scan_symbols*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_symbols*(a: var TGScannerConfig, + `scan_symbols`: guint) +proc TGScannerConfig_scan_binary*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_binary*(a: var TGScannerConfig, + `scan_binary`: guint) +proc TGScannerConfig_scan_octal*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_octal*(a: var TGScannerConfig, `scan_octal`: guint) +proc TGScannerConfig_scan_float*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_float*(a: var TGScannerConfig, `scan_float`: guint) +proc TGScannerConfig_scan_hex*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_hex*(a: var TGScannerConfig, `scan_hex`: guint) +proc TGScannerConfig_scan_hex_dollar*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_hex_dollar*(a: var TGScannerConfig, + `scan_hex_dollar`: guint) +proc TGScannerConfig_scan_string_sq*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_string_sq*(a: var TGScannerConfig, + `scan_string_sq`: guint) +proc TGScannerConfig_scan_string_dq*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scan_string_dq*(a: var TGScannerConfig, + `scan_string_dq`: guint) +proc TGScannerConfig_numbers_2_int*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_numbers_2_int*(a: var TGScannerConfig, + `numbers_2_int`: guint) +proc TGScannerConfig_int_2_float*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_int_2_float*(a: var TGScannerConfig, + `int_2_float`: guint) +proc TGScannerConfig_identifier_2_string*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_identifier_2_string*(a: var TGScannerConfig, + `identifier_2_string`: guint) +proc TGScannerConfig_char_2_token*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_char_2_token*(a: var TGScannerConfig, + `char_2_token`: guint) +proc TGScannerConfig_symbol_2_token*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_symbol_2_token*(a: var TGScannerConfig, + `symbol_2_token`: guint) +proc TGScannerConfig_scope_0_fallback*(a: var TGScannerConfig): guint +proc TGScannerConfig_set_scope_0_fallback*(a: var TGScannerConfig, + `scope_0_fallback`: guint) +proc g_scanner_new*(config_templ: PGScannerConfig): PGScanner{.cdecl, + dynlib: gliblib, importc: "g_scanner_new".} +proc g_scanner_destroy*(scanner: PGScanner){.cdecl, dynlib: gliblib, + importc: "g_scanner_destroy".} +proc g_scanner_input_file*(scanner: PGScanner, input_fd: gint){.cdecl, + dynlib: gliblib, importc: "g_scanner_input_file".} +proc g_scanner_sync_file_offset*(scanner: PGScanner){.cdecl, dynlib: gliblib, + importc: "g_scanner_sync_file_offset".} +proc g_scanner_input_text*(scanner: PGScanner, text: cstring, text_len: guint){. + cdecl, dynlib: gliblib, importc: "g_scanner_input_text".} +proc g_scanner_get_next_token*(scanner: PGScanner): TGTokenType{.cdecl, + dynlib: gliblib, importc: "g_scanner_get_next_token".} +proc g_scanner_peek_next_token*(scanner: PGScanner): TGTokenType{.cdecl, + dynlib: gliblib, importc: "g_scanner_peek_next_token".} +proc g_scanner_cur_token*(scanner: PGScanner): TGTokenType{.cdecl, + dynlib: gliblib, importc: "g_scanner_cur_token".} +proc g_scanner_cur_value*(scanner: PGScanner): TGTokenValue{.cdecl, + dynlib: gliblib, importc: "g_scanner_cur_value".} +proc g_scanner_cur_line*(scanner: PGScanner): guint{.cdecl, dynlib: gliblib, + importc: "g_scanner_cur_line".} +proc g_scanner_cur_position*(scanner: PGScanner): guint{.cdecl, dynlib: gliblib, + importc: "g_scanner_cur_position".} +proc g_scanner_eof*(scanner: PGScanner): gboolean{.cdecl, dynlib: gliblib, + importc: "g_scanner_eof".} +proc g_scanner_set_scope*(scanner: PGScanner, scope_id: guint): guint{.cdecl, + dynlib: gliblib, importc: "g_scanner_set_scope".} +proc g_scanner_scope_add_symbol*(scanner: PGScanner, scope_id: guint, + symbol: cstring, value: gpointer){.cdecl, + dynlib: gliblib, importc: "g_scanner_scope_add_symbol".} +proc g_scanner_scope_remove_symbol*(scanner: PGScanner, scope_id: guint, + symbol: cstring){.cdecl, dynlib: gliblib, + importc: "g_scanner_scope_remove_symbol".} +proc g_scanner_scope_lookup_symbol*(scanner: PGScanner, scope_id: guint, + symbol: cstring): gpointer{.cdecl, + dynlib: gliblib, importc: "g_scanner_scope_lookup_symbol".} +proc g_scanner_scope_foreach_symbol*(scanner: PGScanner, scope_id: guint, + func: TGHFunc, user_data: gpointer){.cdecl, + dynlib: gliblib, importc: "g_scanner_scope_foreach_symbol".} +proc g_scanner_lookup_symbol*(scanner: PGScanner, symbol: cstring): gpointer{. + cdecl, dynlib: gliblib, importc: "g_scanner_lookup_symbol".} +proc g_scanner_unexp_token*(scanner: PGScanner, expected_token: TGTokenType, + identifier_spec: cstring, symbol_spec: cstring, + symbol_name: cstring, `message`: cstring, + is_error: gint){.cdecl, dynlib: gliblib, + importc: "g_scanner_unexp_token".} +proc G_SHELL_ERROR*(): TGQuark +type + PGShellError* = ptr TGShellError + TGShellError* = enum + G_SHELL_ERROR_BAD_QUOTING, G_SHELL_ERROR_EMPTY_STRING, G_SHELL_ERROR_FAILED + +proc g_shell_error_quark*(): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_shell_error_quark".} +proc g_shell_quote*(unquoted_string: cstring): cstring{.cdecl, dynlib: gliblib, + importc: "g_shell_quote".} +proc g_shell_unquote*(quoted_string: cstring, error: pointer): cstring{.cdecl, + dynlib: gliblib, importc: "g_shell_unquote".} +proc g_shell_parse_argv*(command_line: cstring, argcp: Pgint, argvp: PPPgchar, + error: pointer): gboolean{.cdecl, dynlib: gliblib, + importc: "g_shell_parse_argv".} +proc G_SPAWN_ERROR*(): TGQuark +type + PGSpawnError* = ptr TGSpawnError + TGSpawnError* = enum + G_SPAWN_ERROR_FORK, G_SPAWN_ERROR_READ, G_SPAWN_ERROR_CHDIR, + G_SPAWN_ERROR_ACCES, G_SPAWN_ERROR_PERM, G_SPAWN_ERROR_2BIG, + G_SPAWN_ERROR_NOEXEC, G_SPAWN_ERROR_NAMETOOLONG, G_SPAWN_ERROR_NOENT, + G_SPAWN_ERROR_NOMEM, G_SPAWN_ERROR_NOTDIR, G_SPAWN_ERROR_LOOP, + G_SPAWN_ERROR_TXTBUSY, G_SPAWN_ERROR_IO, G_SPAWN_ERROR_NFILE, + G_SPAWN_ERROR_MFILE, G_SPAWN_ERROR_INVAL, G_SPAWN_ERROR_ISDIR, + G_SPAWN_ERROR_LIBBAD, G_SPAWN_ERROR_FAILED + TGSpawnChildSetupFunc* = proc (user_data: gpointer){.cdecl.} + PGSpawnFlags* = ptr TGSpawnFlags + TGSpawnFlags* = int + +const + G_SPAWN_LEAVE_DESCRIPTORS_OPEN* = 1 shl 0 + G_SPAWN_DO_NOT_REAP_CHILD* = 1 shl 1 + G_SPAWN_SEARCH_PATH* = 1 shl 2 + G_SPAWN_STDOUT_TO_DEV_NULL* = 1 shl 3 + G_SPAWN_STDERR_TO_DEV_NULL* = 1 shl 4 + G_SPAWN_CHILD_INHERITS_STDIN* = 1 shl 5 + G_SPAWN_FILE_AND_ARGV_ZERO* = 1 shl 6 + +proc g_spawn_error_quark*(): TGQuark{.cdecl, dynlib: gliblib, + importc: "g_spawn_error_quark".} +proc g_spawn_async*(working_directory: cstring, argv: PPgchar, envp: PPgchar, + flags: TGSpawnFlags, child_setup: TGSpawnChildSetupFunc, + user_data: gpointer, child_pid: Pgint, error: pointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_spawn_async".} +proc g_spawn_async_with_pipes*(working_directory: cstring, argv: PPgchar, + envp: PPgchar, flags: TGSpawnFlags, + child_setup: TGSpawnChildSetupFunc, + user_data: gpointer, child_pid: Pgint, + standard_input: Pgint, standard_output: Pgint, + standard_error: Pgint, error: pointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_spawn_async_with_pipes".} +proc g_spawn_sync*(working_directory: cstring, argv: PPgchar, envp: PPgchar, + flags: TGSpawnFlags, child_setup: TGSpawnChildSetupFunc, + user_data: gpointer, standard_output: PPgchar, + standard_error: PPgchar, exit_status: Pgint, error: pointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_spawn_sync".} +proc g_spawn_command_line_sync*(command_line: cstring, standard_output: PPgchar, + standard_error: PPgchar, exit_status: Pgint, + error: pointer): gboolean{.cdecl, + dynlib: gliblib, importc: "g_spawn_command_line_sync".} +proc g_spawn_command_line_async*(command_line: cstring, error: pointer): gboolean{. + cdecl, dynlib: gliblib, importc: "g_spawn_command_line_async".} +proc G_TYPE_IS_BOXED*(theType: GType): gboolean +proc G_VALUE_HOLDS_BOXED*(value: PGValue): gboolean +proc G_TYPE_CLOSURE*(): GType +proc G_TYPE_VALUE*(): GType +proc G_TYPE_VALUE_ARRAY*(): GType +proc G_TYPE_GSTRING*(): GType +proc g_boxed_copy*(boxed_type: GType, src_boxed: gconstpointer): gpointer{. + cdecl, dynlib: gobjectlib, importc: "g_boxed_copy".} +proc g_boxed_free*(boxed_type: GType, boxed: gpointer){.cdecl, + dynlib: gobjectlib, importc: "g_boxed_free".} +proc g_value_set_boxed*(value: PGValue, v_boxed: gconstpointer){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_boxed".} +proc g_value_set_static_boxed*(value: PGValue, v_boxed: gconstpointer){.cdecl, + dynlib: gobjectlib, importc: "g_value_set_static_boxed".} +proc g_value_get_boxed*(value: PGValue): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_boxed".} +proc g_value_dup_boxed*(value: PGValue): gpointer{.cdecl, dynlib: gobjectlib, + importc: "g_value_dup_boxed".} +proc g_boxed_type_register_static*(name: cstring, boxed_copy: TGBoxedCopyFunc, + boxed_free: TGBoxedFreeFunc): GType{.cdecl, + dynlib: gobjectlib, importc: "g_boxed_type_register_static".} +proc g_value_set_boxed_take_ownership*(value: PGValue, v_boxed: gconstpointer){. + cdecl, dynlib: gobjectlib, importc: "g_value_set_boxed_take_ownership".} +proc g_closure_get_type*(): GType{.cdecl, dynlib: gobjectlib, + importc: "g_closure_get_type".} +proc g_value_get_type*(): GType{.cdecl, dynlib: gobjectlib, + importc: "g_value_get_type".} +proc g_value_array_get_type*(): GType{.cdecl, dynlib: gobjectlib, + importc: "g_value_array_get_type".} +proc g_gstring_get_type*(): GType{.cdecl, dynlib: gobjectlib, + importc: "g_gstring_get_type".} +type + PGModule* = pointer + TGModuleFlags* = int32 + TGModuleCheckInit* = proc (module: PGModule): cstring{.cdecl.} + TGModuleUnload* = proc (module: PGModule){.cdecl.} + +const + G_MODULE_BIND_LAZY* = 1 shl 0 + G_MODULE_BIND_MASK* = 1 + +proc g_module_supported*(): gboolean{.cdecl, dynlib: gmodulelib, + importc: "g_module_supported".} +proc g_module_open*(file_name: cstring, flags: TGModuleFlags): PGModule{.cdecl, + dynlib: gmodulelib, importc: "g_module_open".} +proc g_module_close*(module: PGModule): gboolean{.cdecl, dynlib: gmodulelib, + importc: "g_module_close".} +proc g_module_make_resident*(module: PGModule){.cdecl, dynlib: gmodulelib, + importc: "g_module_make_resident".} +proc g_module_error*(): cstring{.cdecl, dynlib: gmodulelib, + importc: "g_module_error".} +proc g_module_symbol*(module: PGModule, symbol_name: cstring, symbol: Pgpointer): gboolean{. + cdecl, dynlib: gmodulelib, importc: "g_module_symbol".} +proc g_module_name*(module: PGModule): cstring{.cdecl, dynlib: gmodulelib, + importc: "g_module_name".} +proc g_module_build_path*(directory: cstring, module_name: cstring): cstring{. + cdecl, dynlib: gmodulelib, importc: "g_module_build_path".} +proc g_cclosure_marshal_VOID__VOID*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__VOID".} +proc g_cclosure_marshal_VOID__BOOLEAN*(closure: PGClosure, + return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__BOOLEAN".} +proc g_cclosure_marshal_VOID__CHAR*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__CHAR".} +proc g_cclosure_marshal_VOID__UCHAR*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__UCHAR".} +proc g_cclosure_marshal_VOID__INT*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__INT".} +proc g_cclosure_marshal_VOID__UINT*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__UINT".} +proc g_cclosure_marshal_VOID__LONG*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__LONG".} +proc g_cclosure_marshal_VOID__ULONG*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__ULONG".} +proc g_cclosure_marshal_VOID__ENUM*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__ENUM".} +proc g_cclosure_marshal_VOID__FLAGS*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__FLAGS".} +proc g_cclosure_marshal_VOID__FLOAT*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__FLOAT".} +proc g_cclosure_marshal_VOID__DOUBLE*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__DOUBLE".} +proc g_cclosure_marshal_VOID__STRING*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__STRING".} +proc g_cclosure_marshal_VOID__PARAM*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__PARAM".} +proc g_cclosure_marshal_VOID__BOXED*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__BOXED".} +proc g_cclosure_marshal_VOID__POINTER*(closure: PGClosure, + return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__POINTER".} +proc g_cclosure_marshal_VOID__OBJECT*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__OBJECT".} +proc g_cclosure_marshal_STRING__OBJECT_POINTER*(closure: PGClosure, + return_value: PGValue, n_param_values: GUInt, param_values: PGValue, + invocation_hint: GPointer, marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_STRING__OBJECT_POINTER".} +proc g_cclosure_marshal_VOID__UINT_POINTER*(closure: PGClosure, + return_value: PGValue, n_param_values: GUInt, param_values: PGValue, + invocation_hint: GPointer, marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_VOID__UINT_POINTER".} +proc g_cclosure_marshal_BOOLEAN__FLAGS*(closure: PGClosure, + return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gobjectlib, importc: "g_cclosure_marshal_BOOLEAN__FLAGS".} +proc g_cclosure_marshal_BOOL__FLAGS*(closure: PGClosure, return_value: PGValue, + n_param_values: GUInt, + param_values: PGValue, + invocation_hint: GPointer, + marshal_data: GPointer){.cdecl, + dynlib: gliblib, importc: "g_cclosure_marshal_BOOLEAN__FLAGS".} +proc GUINT16_SWAP_LE_BE_CONSTANT*(val: guint16): guint16 = + Result = ((val and 0x000000FF) shl 8) or ((val and 0x0000FF00) shr 8) + +proc GUINT32_SWAP_LE_BE_CONSTANT*(val: guint32): guint32 = + Result = ((val and 0x000000FF) shl 24) or ((val and 0x0000FF00) shl 8) or + ((val and 0x00FF0000) shr 8) or ((val and 0xFF000000) shr 24) + +proc GUINT_TO_POINTER*(i: guint): pointer = + Result = cast[Pointer](TAddress(i)) + +type + PGArray = pointer + +when false: + proc g_array_append_val*(a: PGArray, v: gpointer): PGArray = + result = g_array_append_vals(a, addr(v), 1) + + proc g_array_prepend_val*(a: PGArray, v: gpointer): PGArray = + result = g_array_prepend_vals(a, addr(v), 1) + + proc g_array_insert_val*(a: PGArray, i: guint, v: gpointer): PGArray = + result = g_array_insert_vals(a, i, addr(v), 1) + + proc g_ptr_array_index*(parray: PGPtrArray, index: guint): gpointer = + result = cast[PGPointer](cast[int](parray ^. pdata) + + index * SizeOf(GPointer))^ + + proc G_THREAD_ERROR*(): TGQuark = + result = g_thread_error_quark() + + proc g_mutex_lock*(mutex: PGMutex) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.mutex_lock(mutex) + + proc g_mutex_trylock*(mutex: PGMutex): gboolean = + if g_threads_got_initialized: + result = g_thread_functions_for_glib_use.mutex_trylock(mutex) + else: + result = true + + proc g_mutex_unlock*(mutex: PGMutex) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.mutex_unlock(mutex) + + proc g_mutex_free*(mutex: PGMutex) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.mutex_free(mutex) + + proc g_cond_wait*(cond: PGCond, mutex: PGMutex) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.cond_wait(cond, mutex) + + proc g_cond_timed_wait*(cond: PGCond, mutex: PGMutex, end_time: PGTimeVal): gboolean = + if g_threads_got_initialized: + result = g_thread_functions_for_glib_use.cond_timed_wait(cond, mutex, + end_time) + else: + result = true + + proc g_thread_supported*(): gboolean = + result = g_threads_got_initialized + + proc g_mutex_new*(): PGMutex = + result = g_thread_functions_for_glib_use.mutex_new() + + proc g_cond_new*(): PGCond = + result = g_thread_functions_for_glib_use.cond_new() + + proc g_cond_signal*(cond: PGCond) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.cond_signal(cond) + + proc g_cond_broadcast*(cond: PGCond) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.cond_broadcast(cond) + + proc g_cond_free*(cond: PGCond) = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.cond_free(cond) + + proc g_private_new*(dest: TGDestroyNotify): PGPrivate = + result = g_thread_functions_for_glib_use.private_new(dest) + + proc g_private_get*(private_key: PGPrivate): gpointer = + if g_threads_got_initialized: + result = g_thread_functions_for_glib_use.private_get(private_key) + else: + result = private_key + + proc g_private_set*(private_key: var PGPrivate, data: gpointer) = + if g_threads_got_initialized: + nil + else: + private_key = data + + proc g_thread_yield*() = + if g_threads_got_initialized: + g_thread_functions_for_glib_use.thread_yield + + proc g_thread_create*(func: TGThreadFunc, data: gpointer, joinable: gboolean, + error: pointer): PGThread = + result = g_thread_create_full(func, data, 0, joinable, false, + G_THREAD_PRIORITY_NORMAL, error) + + proc g_static_mutex_get_mutex*(mutex: PPGMutex): PGMutex = + result = g_static_mutex_get_mutex_impl(mutex) + + proc g_static_mutex_lock*(mutex: PGStaticMutex) = + g_mutex_lock(g_static_mutex_get_mutex_impl(PPGMutex(mutex))) + + proc g_static_mutex_trylock*(mutex: PGStaticMutex): gboolean = + result = g_mutex_trylock(g_static_mutex_get_mutex(PPGMutex(mutex))) + + proc g_static_mutex_unlock*(mutex: PGStaticMutex) = + g_mutex_unlock(g_static_mutex_get_mutex_impl(PPGMutex(mutex))) + + proc g_main_new*(is_running: gboolean): PGMainLoop = + result = g_main_loop_new(nil, is_running) + + proc g_main_iteration*(may_block: gboolean): gboolean = + result = g_main_context_iteration(nil, may_block) + + proc g_main_pending*(): gboolean = + result = g_main_context_pending(nil) + + proc g_main_set_poll_func*(func: TGPollFunc) = + g_main_context_set_poll_func(nil, func) + +proc g_slist_next*(slist: PGSList): PGSList = + if slist != nil: + result = slist.next + else: + result = nil + +proc g_new*(bytes_per_struct, n_structs: int): gpointer = + result = g_malloc(n_structs * bytes_per_struct) + +proc g_new0*(bytes_per_struct, n_structs: int): gpointer = + result = g_malloc0(n_structs * bytes_per_struct) + +proc g_renew*(struct_size: int, OldMem: gpointer, n_structs: int): gpointer = + result = g_realloc(OldMem, struct_size * n_structs) + +proc g_chunk_new*(chunk: Pointer): Pointer = + result = g_mem_chunk_alloc(chunk) + +proc g_chunk_new0*(chunk: Pointer): Pointer = + result = g_mem_chunk_alloc0(chunk) + +proc g_chunk_free*(mem_chunk: PGMemChunk, mem: gpointer) = + g_mem_chunk_free(mem_chunk, mem) + +proc g_list_previous*(list: PGList): PGList = + if list != nil: + result = list.prev + else: + result = nil + +proc g_list_next*(list: PGList): PGList = + if list != nil: + result = list.next + else: + result = nil + +proc G_CONVERT_ERROR*(): TGQuark = + result = g_convert_error_quark() + +proc g_datalist_id_set_data*(datalist: PPGData, key_id: TGQuark, data: gpointer) = + g_datalist_id_set_data_full(datalist, key_id, data, TGDestroyNotify(nil)) + +proc g_datalist_id_remove_data*(datalist: PPGData, key_id: TGQuark) = + g_datalist_id_set_data(datalist, key_id, nil) + +proc g_datalist_get_data*(datalist: PPGData, key_str: cstring): PPGData = + result = cast[PPGData](g_datalist_id_get_data(datalist, + g_quark_try_string(key_str))) + +proc g_datalist_set_data_full*(datalist: PPGData, key_str: cstring, + data: gpointer, destroy_func: TGDestroyNotify) = + g_datalist_id_set_data_full(datalist, g_quark_from_string(key_str), data, + destroy_func) + +proc g_datalist_set_data*(datalist: PPGData, key_str: cstring, data: gpointer) = + g_datalist_set_data_full(datalist, key_str, data, nil) + +proc g_datalist_remove_no_notify*(datalist: PPGData, key_str: cstring) = + discard g_datalist_id_remove_no_notify(datalist, g_quark_try_string(key_str)) + +proc g_datalist_remove_data*(datalist: PPGData, key_str: cstring) = + g_datalist_id_set_data(datalist, g_quark_try_string(key_str), nil) + +proc g_dataset_id_set_data*(location: gconstpointer, key_id: TGQuark, + data: gpointer) = + g_dataset_id_set_data_full(location, key_id, data, nil) + +proc g_dataset_id_remove_data*(location: gconstpointer, key_id: TGQuark) = + g_dataset_id_set_data(location, key_id, nil) + +proc g_dataset_get_data*(location: gconstpointer, key_str: cstring): gpointer = + result = g_dataset_id_get_data(location, g_quark_try_string(key_str)) + +proc g_dataset_set_data_full*(location: gconstpointer, key_str: cstring, + data: gpointer, destroy_func: TGDestroyNotify) = + g_dataset_id_set_data_full(location, g_quark_from_string(key_str), data, + destroy_func) + +proc g_dataset_remove_no_notify*(location: gconstpointer, key_str: cstring) = + discard g_dataset_id_remove_no_notify(location, g_quark_try_string(key_str)) + +proc g_dataset_set_data*(location: gconstpointer, key_str: cstring, + data: gpointer) = + g_dataset_set_data_full(location, key_str, data, nil) + +proc g_dataset_remove_data*(location: gconstpointer, key_str: cstring) = + g_dataset_id_set_data(location, g_quark_try_string(key_str), nil) + +proc G_FILE_ERROR*(): TGQuark = + result = g_file_error_quark() + +proc TGHookList_hook_size*(a: var TGHookList): guint = + result = (a.flag0 and bm_TGHookList_hook_size) shr bp_TGHookList_hook_size + +proc TGHookList_set_hook_size*(a: var TGHookList, `hook_size`: guint) = + a.flag0 = a.flag0 or + ((`hook_size` shl bp_TGHookList_hook_size) and bm_TGHookList_hook_size) + +proc TGHookList_is_setup*(a: var TGHookList): guint = + result = (a.flag0 and bm_TGHookList_is_setup) shr bp_TGHookList_is_setup + +proc TGHookList_set_is_setup*(a: var TGHookList, `is_setup`: guint) = + a.flag0 = a.flag0 or + ((`is_setup` shl bp_TGHookList_is_setup) and bm_TGHookList_is_setup) + +proc G_HOOK*(hook: pointer): PGHook = + result = cast[PGHook](hook) + +proc G_HOOK_FLAGS*(hook: PGHook): guint = + result = hook.flags + +proc G_HOOK_ACTIVE*(hook: PGHook): bool = + result = (hook.flags and G_HOOK_FLAG_ACTIVE) != 0 + +proc G_HOOK_IN_CALL*(hook: PGHook): bool = + result = (hook.flags and G_HOOK_FLAG_IN_CALL) != 0 + +proc G_HOOK_IS_VALID*(hook: PGHook): bool = + result = (hook.hook_id != 0) and G_HOOK_ACTIVE(hook) + +proc G_HOOK_IS_UNLINKED*(hook: PGHook): bool = + result = (hook.next == nil) and (hook.prev == nil) and + (hook.hook_id == 0) and (hook.ref_count == 0) + +proc g_hook_append*(hook_list: PGHookList, hook: PGHook) = + g_hook_insert_before(hook_list, nil, hook) + +proc G_IO_CHANNEL_ERROR*(): TGQuark = + result = g_io_channel_error_quark() + +proc TGIOChannel_use_buffer*(a: var TGIOChannel): guint = + result = (a.flag0 and bm_TGIOChannel_use_buffer) shr + bp_TGIOChannel_use_buffer + +proc TGIOChannel_set_use_buffer*(a: var TGIOChannel, `use_buffer`: guint) = + a.flag0 = a.flag0 or + ((`use_buffer` shl bp_TGIOChannel_use_buffer) and + bm_TGIOChannel_use_buffer) + +proc TGIOChannel_do_encode*(a: var TGIOChannel): guint = + result = (a.flag0 and bm_TGIOChannel_do_encode) shr + bp_TGIOChannel_do_encode + +proc TGIOChannel_set_do_encode*(a: var TGIOChannel, `do_encode`: guint) = + a.flag0 = a.flag0 or + ((`do_encode` shl bp_TGIOChannel_do_encode) and + bm_TGIOChannel_do_encode) + +proc TGIOChannel_close_on_unref*(a: var TGIOChannel): guint = + result = (a.flag0 and bm_TGIOChannel_close_on_unref) shr + bp_TGIOChannel_close_on_unref + +proc TGIOChannel_set_close_on_unref*(a: var TGIOChannel, `close_on_unref`: guint) = + a.flag0 = a.flag0 or + ((`close_on_unref` shl bp_TGIOChannel_close_on_unref) and + bm_TGIOChannel_close_on_unref) + +proc TGIOChannel_is_readable*(a: var TGIOChannel): guint = + result = (a.flag0 and bm_TGIOChannel_is_readable) shr + bp_TGIOChannel_is_readable + +proc TGIOChannel_set_is_readable*(a: var TGIOChannel, `is_readable`: guint) = + a.flag0 = a.flag0 or + ((`is_readable` shl bp_TGIOChannel_is_readable) and + bm_TGIOChannel_is_readable) + +proc TGIOChannel_is_writeable*(a: var TGIOChannel): guint = + result = (a.flag0 and bm_TGIOChannel_is_writeable) shr + bp_TGIOChannel_is_writeable + +proc TGIOChannel_set_is_writeable*(a: var TGIOChannel, `is_writeable`: guint) = + a.flag0 = a.flag0 or + ((`is_writeable` shl bp_TGIOChannel_is_writeable) and + bm_TGIOChannel_is_writeable) + +proc TGIOChannel_is_seekable*(a: var TGIOChannel): guint = + result = (a.flag0 and bm_TGIOChannel_is_seekable) shr + bp_TGIOChannel_is_seekable + +proc TGIOChannel_set_is_seekable*(a: var TGIOChannel, `is_seekable`: guint) = + a.flag0 = a.flag0 or + ((`is_seekable` shl bp_TGIOChannel_is_seekable) and + bm_TGIOChannel_is_seekable) + +proc g_utf8_next_char*(p: pguchar): pguchar = + result = cast[pguchar](cast[TAddress](p)+1) # p + ord((g_utf8_skip + p^ )^ ) + +when false: + proc GLIB_CHECK_VERSION*(major, minor, micro: guint): bool = + result = ((GLIB_MAJOR_VERSION > major) or + ((GLIB_MAJOR_VERSION == major) and (GLIB_MINOR_VERSION > minor)) or + ((GLIB_MAJOR_VERSION == major) and (GLIB_MINOR_VERSION == minor) and + (GLIB_MICRO_VERSION >= micro))) + + proc g_error*(format: cstring) = + g_log(G_LOG_DOMAIN, G_LOG_LEVEL_ERROR, format) + + proc g_message*(format: cstring) = + g_log(G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, format) + + proc g_critical*(format: cstring) = + g_log(G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL, format) + + proc g_warning*(format: cstring) = + g_log(G_LOG_DOMAIN, G_LOG_LEVEL_WARNING, format) + +proc G_MARKUP_ERROR*(): TGQuark = + result = g_markup_error_quark() + +proc G_NODE_IS_ROOT*(node: PGNode): bool = + result = (node . parent == nil) and (node . next == nil) and + (node . prev == nil) + +proc G_NODE_IS_LEAF*(node: PGNode): bool = + result = node . children == nil + +proc g_node_append*(parent: PGNode, node: PGNode): PGNode = + result = g_node_insert_before(parent, nil, node) + +proc g_node_insert_data*(parent: PGNode, position: gint, data: gpointer): PGNode = + result = g_node_insert(parent, position, g_node_new(data)) + +proc g_node_insert_data_before*(parent: PGNode, sibling: PGNode, data: gpointer): PGNode = + result = g_node_insert_before(parent, sibling, g_node_new(data)) + +proc g_node_prepend_data*(parent: PGNode, data: gpointer): PGNode = + result = g_node_prepend(parent, g_node_new(data)) + +proc g_node_append_data*(parent: PGNode, data: gpointer): PGNode = + result = g_node_insert_before(parent, nil, g_node_new(data)) + +proc g_node_prev_sibling*(node: PGNode): PGNode = + if node != nil: + result = node.prev + else: + result = nil + +proc g_node_next_sibling*(node: PGNode): PGNode = + if node != nil: + result = node.next + else: + result = nil + +proc g_node_first_child*(node: PGNode): PGNode = + if node != nil: + result = node.children + else: + result = nil + +proc g_rand_boolean*(rand: PGRand): gboolean = + result = ((g_rand_int(rand)) and (1 shl 15)) != 0 + +proc g_random_boolean*(): gboolean = + result = (g_random_int() and (1 shl 15)) != 0 + +proc TGScannerConfig_case_sensitive*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_case_sensitive) shr + bp_TGScannerConfig_case_sensitive + +proc TGScannerConfig_set_case_sensitive*(a: var TGScannerConfig, + `case_sensitive`: guint) = + a.flag0 = a.flag0 or + ((`case_sensitive` shl bp_TGScannerConfig_case_sensitive) and + bm_TGScannerConfig_case_sensitive) + +proc TGScannerConfig_skip_comment_multi*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_skip_comment_multi) shr + bp_TGScannerConfig_skip_comment_multi + +proc TGScannerConfig_set_skip_comment_multi*(a: var TGScannerConfig, + `skip_comment_multi`: guint) = + a.flag0 = a.flag0 or + ((`skip_comment_multi` shl bp_TGScannerConfig_skip_comment_multi) and + bm_TGScannerConfig_skip_comment_multi) + +proc TGScannerConfig_skip_comment_single*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_skip_comment_single) shr + bp_TGScannerConfig_skip_comment_single + +proc TGScannerConfig_set_skip_comment_single*(a: var TGScannerConfig, + `skip_comment_single`: guint) = + a.flag0 = a.flag0 or + ((`skip_comment_single` shl bp_TGScannerConfig_skip_comment_single) and + bm_TGScannerConfig_skip_comment_single) + +proc TGScannerConfig_scan_comment_multi*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_comment_multi) shr + bp_TGScannerConfig_scan_comment_multi + +proc TGScannerConfig_set_scan_comment_multi*(a: var TGScannerConfig, + `scan_comment_multi`: guint) = + a.flag0 = a.flag0 or + ((`scan_comment_multi` shl bp_TGScannerConfig_scan_comment_multi) and + bm_TGScannerConfig_scan_comment_multi) + +proc TGScannerConfig_scan_identifier*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_identifier) shr + bp_TGScannerConfig_scan_identifier + +proc TGScannerConfig_set_scan_identifier*(a: var TGScannerConfig, + `scan_identifier`: guint) = + a.flag0 = a.flag0 or + ((`scan_identifier` shl bp_TGScannerConfig_scan_identifier) and + bm_TGScannerConfig_scan_identifier) + +proc TGScannerConfig_scan_identifier_1char*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_identifier_1char) shr + bp_TGScannerConfig_scan_identifier_1char + +proc TGScannerConfig_set_scan_identifier_1char*(a: var TGScannerConfig, + `scan_identifier_1char`: guint) = + a.flag0 = a.flag0 or + ((`scan_identifier_1char` shl bp_TGScannerConfig_scan_identifier_1char) and + bm_TGScannerConfig_scan_identifier_1char) + +proc TGScannerConfig_scan_identifier_NULL*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_identifier_NULL) shr + bp_TGScannerConfig_scan_identifier_NULL + +proc TGScannerConfig_set_scan_identifier_NULL*(a: var TGScannerConfig, + `scan_identifier_NULL`: guint) = + a.flag0 = a.flag0 or + ((`scan_identifier_NULL` shl bp_TGScannerConfig_scan_identifier_NULL) and + bm_TGScannerConfig_scan_identifier_NULL) + +proc TGScannerConfig_scan_symbols*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_symbols) shr + bp_TGScannerConfig_scan_symbols + +proc TGScannerConfig_set_scan_symbols*(a: var TGScannerConfig, + `scan_symbols`: guint) = + a.flag0 = a.flag0 or + ((`scan_symbols` shl bp_TGScannerConfig_scan_symbols) and + bm_TGScannerConfig_scan_symbols) + +proc TGScannerConfig_scan_binary*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_binary) shr + bp_TGScannerConfig_scan_binary + +proc TGScannerConfig_set_scan_binary*(a: var TGScannerConfig, + `scan_binary`: guint) = + a.flag0 = a.flag0 or + ((`scan_binary` shl bp_TGScannerConfig_scan_binary) and + bm_TGScannerConfig_scan_binary) + +proc TGScannerConfig_scan_octal*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_octal) shr + bp_TGScannerConfig_scan_octal + +proc TGScannerConfig_set_scan_octal*(a: var TGScannerConfig, `scan_octal`: guint) = + a.flag0 = a.flag0 or + ((`scan_octal` shl bp_TGScannerConfig_scan_octal) and + bm_TGScannerConfig_scan_octal) + +proc TGScannerConfig_scan_float*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_float) shr + bp_TGScannerConfig_scan_float + +proc TGScannerConfig_set_scan_float*(a: var TGScannerConfig, `scan_float`: guint) = + a.flag0 = a.flag0 or + ((`scan_float` shl bp_TGScannerConfig_scan_float) and + bm_TGScannerConfig_scan_float) + +proc TGScannerConfig_scan_hex*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_hex) shr + bp_TGScannerConfig_scan_hex + +proc TGScannerConfig_set_scan_hex*(a: var TGScannerConfig, `scan_hex`: guint) = + a.flag0 = a.flag0 or + ((`scan_hex` shl bp_TGScannerConfig_scan_hex) and + bm_TGScannerConfig_scan_hex) + +proc TGScannerConfig_scan_hex_dollar*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_hex_dollar) shr + bp_TGScannerConfig_scan_hex_dollar + +proc TGScannerConfig_set_scan_hex_dollar*(a: var TGScannerConfig, + `scan_hex_dollar`: guint) = + a.flag0 = a.flag0 or + ((`scan_hex_dollar` shl bp_TGScannerConfig_scan_hex_dollar) and + bm_TGScannerConfig_scan_hex_dollar) + +proc TGScannerConfig_scan_string_sq*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_string_sq) shr + bp_TGScannerConfig_scan_string_sq + +proc TGScannerConfig_set_scan_string_sq*(a: var TGScannerConfig, + `scan_string_sq`: guint) = + a.flag0 = a.flag0 or + ((`scan_string_sq` shl bp_TGScannerConfig_scan_string_sq) and + bm_TGScannerConfig_scan_string_sq) + +proc TGScannerConfig_scan_string_dq*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scan_string_dq) shr + bp_TGScannerConfig_scan_string_dq + +proc TGScannerConfig_set_scan_string_dq*(a: var TGScannerConfig, + `scan_string_dq`: guint) = + a.flag0 = a.flag0 or + ((`scan_string_dq` shl bp_TGScannerConfig_scan_string_dq) and + bm_TGScannerConfig_scan_string_dq) + +proc TGScannerConfig_numbers_2_int*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_numbers_2_int) shr + bp_TGScannerConfig_numbers_2_int + +proc TGScannerConfig_set_numbers_2_int*(a: var TGScannerConfig, + `numbers_2_int`: guint) = + a.flag0 = a.flag0 or + ((`numbers_2_int` shl bp_TGScannerConfig_numbers_2_int) and + bm_TGScannerConfig_numbers_2_int) + +proc TGScannerConfig_int_2_float*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_int_2_float) shr + bp_TGScannerConfig_int_2_float + +proc TGScannerConfig_set_int_2_float*(a: var TGScannerConfig, + `int_2_float`: guint) = + a.flag0 = a.flag0 or + ((`int_2_float` shl bp_TGScannerConfig_int_2_float) and + bm_TGScannerConfig_int_2_float) + +proc TGScannerConfig_identifier_2_string*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_identifier_2_string) shr + bp_TGScannerConfig_identifier_2_string + +proc TGScannerConfig_set_identifier_2_string*(a: var TGScannerConfig, + `identifier_2_string`: guint) = + a.flag0 = a.flag0 or + ((`identifier_2_string` shl bp_TGScannerConfig_identifier_2_string) and + bm_TGScannerConfig_identifier_2_string) + +proc TGScannerConfig_char_2_token*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_char_2_token) shr + bp_TGScannerConfig_char_2_token + +proc TGScannerConfig_set_char_2_token*(a: var TGScannerConfig, + `char_2_token`: guint) = + a.flag0 = a.flag0 or + ((`char_2_token` shl bp_TGScannerConfig_char_2_token) and + bm_TGScannerConfig_char_2_token) + +proc TGScannerConfig_symbol_2_token*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_symbol_2_token) shr + bp_TGScannerConfig_symbol_2_token + +proc TGScannerConfig_set_symbol_2_token*(a: var TGScannerConfig, + `symbol_2_token`: guint) = + a.flag0 = a.flag0 or + ((`symbol_2_token` shl bp_TGScannerConfig_symbol_2_token) and + bm_TGScannerConfig_symbol_2_token) + +proc TGScannerConfig_scope_0_fallback*(a: var TGScannerConfig): guint = + result = (a.flag0 and bm_TGScannerConfig_scope_0_fallback) shr + bp_TGScannerConfig_scope_0_fallback + +proc TGScannerConfig_set_scope_0_fallback*(a: var TGScannerConfig, + `scope_0_fallback`: guint) = + a.flag0 = a.flag0 or + ((`scope_0_fallback` shl bp_TGScannerConfig_scope_0_fallback) and + bm_TGScannerConfig_scope_0_fallback) + +proc g_scanner_freeze_symbol_table*(scanner: PGScanner) = + if Scanner == nil: nil + +proc g_scanner_thaw_symbol_table*(scanner: PGScanner) = + if Scanner == nil: nil + +proc G_SHELL_ERROR*(): TGQuark = + result = g_shell_error_quark() + +proc G_SPAWN_ERROR*(): TGQuark = + result = g_spawn_error_quark() + +when false: + proc g_ascii_isalnum*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_ALNUM) != 0 + + proc g_ascii_isalpha*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_ALPHA) != 0 + + proc g_ascii_iscntrl*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_CNTRL) != 0 + + proc g_ascii_isdigit*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_DIGIT) != 0 + + proc g_ascii_isgraph*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_GRAPH) != 0 + + proc g_ascii_islower*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_LOWER) != 0 + + proc g_ascii_isprint*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_PRINT) != 0 + + proc g_ascii_ispunct*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_PUNCT) != 0 + + proc g_ascii_isspace*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_SPACE) != 0 + + proc g_ascii_isupper*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_UPPER) != 0 + + proc g_ascii_isxdigit*(c: gchar): bool = + result = ((g_ascii_table[guchar(c)]) and G_ASCII_XDIGIT) != 0 + + proc g_strstrip*(str: cstring): cstring = + result = g_strchomp(g_strchug(str)) + +proc G_TYPE_MAKE_FUNDAMENTAL*(x: int32): GType = + result = GType(x shl G_TYPE_FUNDAMENTAL_SHIFT) + +proc G_TYPE_IS_FUNDAMENTAL*(theType: GType): bool = + result = theType <= G_TYPE_FUNDAMENTAL_MAX + +proc G_TYPE_IS_DERIVED*(theType: GType): bool = + result = theType > G_TYPE_FUNDAMENTAL_MAX + +proc G_TYPE_IS_INTERFACE*(theType: GType): bool = + result = (G_TYPE_FUNDAMENTAL(theType)) == G_TYPE_INTERFACE + +proc G_TYPE_IS_CLASSED*(theType: GType): gboolean = + result = private_g_type_test_flags(theType, G_TYPE_FLAG_CLASSED) + +proc G_TYPE_IS_INSTANTIATABLE*(theType: GType): bool = + result = private_g_type_test_flags(theType, G_TYPE_FLAG_INSTANTIATABLE) + +proc G_TYPE_IS_DERIVABLE*(theType: GType): bool = + result = private_g_type_test_flags(theType, G_TYPE_FLAG_DERIVABLE) + +proc G_TYPE_IS_DEEP_DERIVABLE*(theType: GType): bool = + result = private_g_type_test_flags(theType, G_TYPE_FLAG_DEEP_DERIVABLE) + +proc G_TYPE_IS_ABSTRACT*(theType: GType): bool = + result = private_g_type_test_flags(theType, G_TYPE_FLAG_ABSTRACT) + +proc G_TYPE_IS_VALUE_ABSTRACT*(theType: GType): bool = + result = private_g_type_test_flags(theType, G_TYPE_FLAG_VALUE_ABSTRACT) + +proc G_TYPE_IS_VALUE_TYPE*(theType: GType): bool = + result = private_g_type_check_is_value_type(theType) + +proc G_TYPE_HAS_VALUE_TABLE*(theType: GType): bool = + result = (g_type_value_table_peek(theType)) != nil + +proc G_TYPE_CHECK_INSTANCE*(instance: Pointer): gboolean = + result = private_g_type_check_instance(cast[PGTypeInstance](instance)) + +proc G_TYPE_CHECK_INSTANCE_CAST*(instance: Pointer, g_type: GType): PGTypeInstance = + result = cast[PGTypeInstance](private_g_type_check_instance_cast( + cast[PGTypeInstance](instance), g_type)) + +proc G_TYPE_CHECK_INSTANCE_TYPE*(instance: Pointer, g_type: GType): bool = + result = private_g_type_check_instance_is_a( + cast[PGTypeInstance](instance), g_type) + +proc G_TYPE_INSTANCE_GET_CLASS*(instance: Pointer, g_type: GType): PGTypeClass = + result = cast[PGTypeInstance](Instance).g_class + result = private_g_type_check_class_cast(result, g_type) + +proc G_TYPE_INSTANCE_GET_INTERFACE*(instance: Pointer, g_type: GType): Pointer = + result = g_type_interface_peek((cast[PGTypeInstance](instance)).g_class, g_type) + +proc G_TYPE_CHECK_CLASS_CAST*(g_class: pointer, g_type: GType): Pointer = + result = private_g_type_check_class_cast(cast[PGTypeClass](g_class), g_type) + +proc G_TYPE_CHECK_CLASS_TYPE*(g_class: pointer, g_type: GType): bool = + result = private_g_type_check_class_is_a(cast[PGTypeClass](g_class), g_type) + +proc G_TYPE_CHECK_VALUE*(value: Pointer): bool = + result = private_g_type_check_value(cast[PGValue](Value)) + +proc G_TYPE_CHECK_VALUE_TYPE*(value: pointer, g_type: GType): bool = + result = private_g_type_check_value_holds(cast[PGValue](value), g_type) + +proc G_TYPE_FROM_INSTANCE*(instance: Pointer): GType = + result = G_TYPE_FROM_CLASS((cast[PGTypeInstance](instance)) . g_class) + +proc G_TYPE_FROM_CLASS*(g_class: Pointer): GType = + result = (cast[PGTypeClass](g_class)) . g_type + +proc G_TYPE_FROM_INTERFACE*(g_iface: Pointer): GType = + result = (cast[PGTypeInterface](g_iface)) . g_type + +proc G_TYPE_IS_VALUE*(theType: GType): bool = + result = private_g_type_check_is_value_type(theType) + +proc G_IS_VALUE*(value: Pointer): bool = + result = G_TYPE_CHECK_VALUE(value) + +proc G_VALUE_TYPE*(value: Pointer): GType = + result = (cast[PGValue](value)) . g_type + +proc G_VALUE_TYPE_NAME*(value: Pointer): cstring = + result = g_type_name(G_VALUE_TYPE(value)) + +proc G_VALUE_HOLDS*(value: pointer, g_type: GType): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, g_type) + +proc G_TYPE_IS_PARAM*(theType: GType): bool = + result = (G_TYPE_FUNDAMENTAL(theType)) == G_TYPE_PARAM + +proc G_PARAM_SPEC*(pspec: Pointer): PGParamSpec = + result = cast[PGParamSpec](G_TYPE_CHECK_INSTANCE_CAST(pspec, G_TYPE_PARAM)) + +proc G_IS_PARAM_SPEC*(pspec: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(pspec, G_TYPE_PARAM) + +proc G_PARAM_SPEC_CLASS*(pclass: Pointer): PGParamSpecClass = + result = cast[PGParamSpecClass]( + G_TYPE_CHECK_CLASS_CAST(pclass, G_TYPE_PARAM)) + +proc G_IS_PARAM_SPEC_CLASS*(pclass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(pclass, G_TYPE_PARAM) + +proc G_PARAM_SPEC_GET_CLASS*(pspec: Pointer): PGParamSpecClass = + result = cast[PGParamSpecClass](G_TYPE_INSTANCE_GET_CLASS(pspec, G_TYPE_PARAM)) + +proc G_PARAM_SPEC_TYPE*(pspec: Pointer): GType = + result = G_TYPE_FROM_INSTANCE(pspec) + +proc G_PARAM_SPEC_TYPE_NAME*(pspec: Pointer): cstring = + result = g_type_name(G_PARAM_SPEC_TYPE(pspec)) + +proc G_PARAM_SPEC_VALUE_TYPE*(pspec: Pointer): GType = + result = (G_PARAM_SPEC(pspec)) . value_type + +proc G_VALUE_HOLDS_PARAM*(value: Pointer): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_PARAM) + +proc G_CLOSURE_NEEDS_MARSHAL*(closure: Pointer): bool = + result = cast[PGClosure](closure).marshal == nil + +proc G_CLOSURE_N_NOTIFIERS*(cl: PGClosure): int32 = + result = ((meta_marshal(cl) + ((n_guards(cl)) shl 1)) + (n_fnotifiers(cl))) + + (n_inotifiers(cl)) + +proc G_CCLOSURE_SWAP_DATA*(cclosure: PGClosure): int32 = + result = derivative_flag(cclosure) + +proc G_CALLBACK*(f: pointer): TGCallback = + result = cast[TGCallback](f) + +proc ref_count*(a: var TGClosure): guint = + result = (a.flag0 and bm_TGClosure_ref_count) shr bp_TGClosure_ref_count + +proc set_ref_count*(a: var TGClosure, `ref_count`: guint) = + a.flag0 = a.flag0 or + ((`ref_count` shl bp_TGClosure_ref_count) and bm_TGClosure_ref_count) + +proc meta_marshal*(a: PGClosure): guint = + result = (a . flag0 and bm_TGClosure_meta_marshal) shr + bp_TGClosure_meta_marshal + +proc set_meta_marshal*(a: var TGClosure, `meta_marshal`: guint) = + a.flag0 = a.flag0 or + ((`meta_marshal` shl bp_TGClosure_meta_marshal) and + bm_TGClosure_meta_marshal) + +proc n_guards*(a: PGClosure): guint = + result = (a . flag0 and bm_TGClosure_n_guards) shr bp_TGClosure_n_guards + +proc set_n_guards*(a: var TGClosure, `n_guards`: guint) = + a.flag0 = a.flag0 or + ((`n_guards` shl bp_TGClosure_n_guards) and bm_TGClosure_n_guards) + +proc n_fnotifiers*(a: PGClosure): guint = + result = (a . flag0 and bm_TGClosure_n_fnotifiers) shr + bp_TGClosure_n_fnotifiers + +proc set_n_fnotifiers*(a: var TGClosure, `n_fnotifiers`: guint) = + a.flag0 = a.flag0 or + ((`n_fnotifiers` shl bp_TGClosure_n_fnotifiers) and + bm_TGClosure_n_fnotifiers) + +proc n_inotifiers*(a: PGClosure): guint = + result = (a . flag0 and bm_TGClosure_n_inotifiers) shr + bp_TGClosure_n_inotifiers + +proc set_n_inotifiers*(a: var TGClosure, `n_inotifiers`: guint) = + a.flag0 = a.flag0 or + ((`n_inotifiers` shl bp_TGClosure_n_inotifiers) and + bm_TGClosure_n_inotifiers) + +proc in_inotify*(a: var TGClosure): guint = + result = (a.flag0 and bm_TGClosure_in_inotify) shr bp_TGClosure_in_inotify + +proc set_in_inotify*(a: var TGClosure, `in_inotify`: guint) = + a.flag0 = a.flag0 or + ((`in_inotify` shl bp_TGClosure_in_inotify) and bm_TGClosure_in_inotify) + +proc floating*(a: var TGClosure): guint = + result = (a.flag0 and bm_TGClosure_floating) shr bp_TGClosure_floating + +proc set_floating*(a: var TGClosure, `floating`: guint) = + a.flag0 = a.flag0 or + ((`floating` shl bp_TGClosure_floating) and bm_TGClosure_floating) + +proc derivative_flag*(a: PGClosure): guint = + result = (a . flag0 and bm_TGClosure_derivative_flag) shr + bp_TGClosure_derivative_flag + +proc set_derivative_flag*(a: var TGClosure, `derivative_flag`: guint) = + a.flag0 = a.flag0 or + ((`derivative_flag` shl bp_TGClosure_derivative_flag) and + bm_TGClosure_derivative_flag) + +proc in_marshal*(a: var TGClosure): guint = + result = (a.flag0 and bm_TGClosure_in_marshal) shr bp_TGClosure_in_marshal + +proc set_in_marshal*(a: var TGClosure, in_marshal: guint) = + a.flag0 = a.flag0 or + ((in_marshal shl bp_TGClosure_in_marshal) and bm_TGClosure_in_marshal) + +proc is_invalid*(a: var TGClosure): guint = + result = (a.flag0 and bm_TGClosure_is_invalid) shr bp_TGClosure_is_invalid + +proc set_is_invalid*(a: var TGClosure, is_invalid: guint) = + a.flag0 = a.flag0 or + ((is_invalid shl bp_TGClosure_is_invalid) and bm_TGClosure_is_invalid) + +proc g_signal_connect*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer): gulong = + result = g_signal_connect_data(instance, detailed_signal, c_handler, data, + nil, TGConnectFlags(0)) + +proc g_signal_connect_after*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer): gulong = + result = g_signal_connect_data(instance, detailed_signal, c_handler, data, + nil, G_CONNECT_AFTER) + +proc g_signal_connect_swapped*(instance: gpointer, detailed_signal: cstring, + c_handler: TGCallback, data: gpointer): gulong = + result = g_signal_connect_data(instance, detailed_signal, c_handler, data, + nil, G_CONNECT_SWAPPED) + +proc g_signal_handlers_disconnect_by_func*(instance: gpointer, + func, data: gpointer): guint = + result = g_signal_handlers_disconnect_matched(instance, + TGSignalMatchType(G_SIGNAL_MATCH_FUNC or G_SIGNAL_MATCH_DATA), 0, 0, nil, + func, data) + +proc g_signal_handlers_block_by_func*(instance: gpointer, func, data: gpointer) = + discard g_signal_handlers_block_matched(instance, TGSignalMatchType( + G_SIGNAL_MATCH_FUNC or G_SIGNAL_MATCH_DATA), 0, 0, nil, func, data) + +proc g_signal_handlers_unblock_by_func*(instance: gpointer, func, data: gpointer) = + discard g_signal_handlers_unblock_matched(instance, TGSignalMatchType( + G_SIGNAL_MATCH_FUNC or G_SIGNAL_MATCH_DATA), 0, 0, nil, func, data) + +proc G_TYPE_IS_OBJECT*(theType: GType): bool = + result = (G_TYPE_FUNDAMENTAL(theType)) == G_TYPE_OBJECT + +proc G_OBJECT*(anObject: pointer): PGObject = + result = cast[PGObject](G_TYPE_CHECK_INSTANCE_CAST(anObject, G_TYPE_OBJECT)) + +proc G_OBJECT_CLASS*(class: Pointer): PGObjectClass = + result = cast[PGObjectClass](G_TYPE_CHECK_CLASS_CAST(class, G_TYPE_OBJECT)) + +proc G_IS_OBJECT*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, G_TYPE_OBJECT) + +proc G_IS_OBJECT_CLASS*(class: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(class, G_TYPE_OBJECT) + +proc G_OBJECT_GET_CLASS*(anObject: pointer): PGObjectClass = + result = cast[PGObjectClass](G_TYPE_INSTANCE_GET_CLASS(anObject, G_TYPE_OBJECT)) + +proc G_OBJECT_TYPE*(anObject: pointer): GType = + result = G_TYPE_FROM_INSTANCE(anObject) + +proc G_OBJECT_TYPE_NAME*(anObject: pointer): cstring = + result = g_type_name(G_OBJECT_TYPE(anObject)) + +proc G_OBJECT_CLASS_TYPE*(class: Pointer): GType = + result = G_TYPE_FROM_CLASS(class) + +proc G_OBJECT_CLASS_NAME*(class: Pointer): cstring = + result = g_type_name(G_OBJECT_CLASS_TYPE(class)) + +proc G_VALUE_HOLDS_OBJECT*(value: Pointer): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_OBJECT) + +proc G_OBJECT_WARN_INVALID_PROPERTY_ID*(anObject: gpointer, property_id: gint, + pspec: gpointer) = + G_OBJECT_WARN_INVALID_PSPEC(anObject, "property", property_id, pspec) + +proc G_OBJECT_WARN_INVALID_PSPEC*(anObject: gpointer, pname: cstring, + property_id: gint, pspec: gpointer) = + var + theObject: PGObject + pspec2: PGParamSpec + property_id: guint + theObject = cast[PGObject](anObject) + pspec2 = cast[PGParamSpec](pspec) + property_id = (property_id) + write(stdout, "invalid thingy\n") + #g_warning("%s: invalid %s id %u for \"%s\" of type `%s\' in `%s\'", "", pname, + # `property_id`, `pspec` . name, + # g_type_name(G_PARAM_SPEC_TYPE(`pspec`)), + # G_OBJECT_TYPE_NAME(theobject)) + +proc G_TYPE_TYPE_PLUGIN*(): GType = + result = g_type_plugin_get_type() + +proc G_TYPE_PLUGIN*(inst: Pointer): PGTypePlugin = + result = PGTypePlugin(G_TYPE_CHECK_INSTANCE_CAST(inst, G_TYPE_TYPE_PLUGIN())) + +proc G_TYPE_PLUGIN_CLASS*(vtable: Pointer): PGTypePluginClass = + result = cast[PGTypePluginClass](G_TYPE_CHECK_CLASS_CAST(vtable, + G_TYPE_TYPE_PLUGIN())) + +proc G_IS_TYPE_PLUGIN*(inst: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(inst, G_TYPE_TYPE_PLUGIN()) + +proc G_IS_TYPE_PLUGIN_CLASS*(vtable: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(vtable, G_TYPE_TYPE_PLUGIN()) + +proc G_TYPE_PLUGIN_GET_CLASS*(inst: Pointer): PGTypePluginClass = + result = cast[PGTypePluginClass](G_TYPE_INSTANCE_GET_INTERFACE(inst, + G_TYPE_TYPE_PLUGIN())) + +proc G_TYPE_IS_ENUM*(theType: GType): gboolean = + result = (G_TYPE_FUNDAMENTAL(theType) == G_TYPE_ENUM) + +proc G_ENUM_CLASS*(class: pointer): PGEnumClass = + result = cast[PGEnumClass](G_TYPE_CHECK_CLASS_CAST(class, G_TYPE_ENUM)) + +proc G_IS_ENUM_CLASS*(class: pointer): gboolean = + result = G_TYPE_CHECK_CLASS_TYPE(class, G_TYPE_ENUM) + +proc G_ENUM_CLASS_TYPE*(class: pointer): GType = + result = G_TYPE_FROM_CLASS(class) + +proc G_ENUM_CLASS_TYPE_NAME*(class: pointer): cstring = + result = g_type_name(G_ENUM_CLASS_TYPE(class)) + +proc G_TYPE_IS_FLAGS*(theType: GType): gboolean = + result = (G_TYPE_FUNDAMENTAL(theType)) == G_TYPE_FLAGS + +proc G_FLAGS_CLASS*(class: pointer): PGFlagsClass = + result = cast[PGFlagsClass](G_TYPE_CHECK_CLASS_CAST(class, G_TYPE_FLAGS)) + +proc G_IS_FLAGS_CLASS*(class: pointer): gboolean = + result = G_TYPE_CHECK_CLASS_TYPE(class, G_TYPE_FLAGS) + +proc G_FLAGS_CLASS_TYPE*(class: pointer): GType = + result = G_TYPE_FROM_CLASS(class) + +proc G_FLAGS_CLASS_TYPE_NAME*(class: pointer): cstring = + result = g_type_name(G_FLAGS_TYPE(cast[TAddress](class))) + +proc G_VALUE_HOLDS_ENUM*(value: pointer): gboolean = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_ENUM) + +proc G_VALUE_HOLDS_FLAGS*(value: pointer): gboolean = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_FLAGS) + +proc CLAMP*(x, MinX, MaxX: int): int = + if x < MinX: + result = MinX + elif x > MaxX: + result = MaxX + else: + result = x + +proc GPOINTER_TO_SIZE*(p: GPointer): GSize = + result = GSize(cast[TAddress](p)) + +proc GSIZE_TO_POINTER*(s: GSize): GPointer = + result = cast[GPointer](s) + +proc G_VALUE_HOLDS_CHAR*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_CHAR) + +proc G_VALUE_HOLDS_UCHAR*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_UCHAR) + +proc G_VALUE_HOLDS_BOOLEAN*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_BOOLEAN) + +proc G_VALUE_HOLDS_INT*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_INT) + +proc G_VALUE_HOLDS_UINT*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_UINT) + +proc G_VALUE_HOLDS_LONG*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_LONG) + +proc G_VALUE_HOLDS_ULONG*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_ULONG) + +proc G_VALUE_HOLDS_INT64*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_INT64) + +proc G_VALUE_HOLDS_UINT64*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_UINT64) + +proc G_VALUE_HOLDS_FLOAT*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_FLOAT) + +proc G_VALUE_HOLDS_DOUBLE*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_DOUBLE) + +proc G_VALUE_HOLDS_STRING*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_STRING) + +proc G_VALUE_HOLDS_POINTER*(value: PGValue): bool = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_POINTER) + +proc G_TYPE_IS_BOXED*(theType: GType): gboolean = + result = (G_TYPE_FUNDAMENTAL(theType)) == G_TYPE_BOXED + +proc G_VALUE_HOLDS_BOXED*(value: PGValue): gboolean = + result = G_TYPE_CHECK_VALUE_TYPE(value, G_TYPE_BOXED) + +proc G_TYPE_CLOSURE*(): GType = + result = g_closure_get_type() + +proc G_TYPE_VALUE*(): GType = + result = g_value_get_type() + +proc G_TYPE_VALUE_ARRAY*(): GType = + result = g_value_array_get_type() + +proc G_TYPE_GSTRING*(): GType = + result = g_gstring_get_type() diff --git a/lib/base/gtk/gtk2.nim b/lib/base/gtk/gtk2.nim new file mode 100755 index 000000000..6c7a2ce9f --- /dev/null +++ b/lib/base/gtk/gtk2.nim @@ -0,0 +1,17226 @@ +import + glib2, atk, pango, gdk2pixbuf, gdk2 + +when defined(win32): + const + gtklib = "libgtk-win32-2.0-0.dll" +elif defined(darwin): + const + gtklib = "gtk-x11-2.0" + # linklib gtk-x11-2.0 + # linklib gdk-x11-2.0 + # linklib pango-1.0.0 + # linklib glib-2.0.0 + # linklib gobject-2.0.0 + # linklib gdk_pixbuf-2.0.0 + # linklib atk-1.0.0 +else: + const + gtklib = "libgtk-x11-2.0.so" +type + PPPchar* = PPPgchar + +const + GTK_MAX_COMPOSE_LEN* = 7 + +type + PGtkObject* = ptr TGtkObject + PPGtkObject* = ptr PGtkObject + PGtkArg* = ptr TGtkArg + PGtkType* = ptr TGtkType + TGtkType* = GType + PGtkWidget* = ptr TGtkWidget + PGtkMisc* = ptr TGtkMisc + PGtkLabel* = ptr TGtkLabel + PGtkMenu* = ptr TGtkMenu + PGtkAnchorType* = ptr TGtkAnchorType + TGtkAnchorType* = int32 + PGtkArrowType* = ptr TGtkArrowType + TGtkArrowType* = int32 + PGtkAttachOptions* = ptr TGtkAttachOptions + TGtkAttachOptions* = int32 + PGtkButtonBoxStyle* = ptr TGtkButtonBoxStyle + TGtkButtonBoxStyle* = int32 + PGtkCurveType* = ptr TGtkCurveType + TGtkCurveType* = int32 + PGtkDeleteType* = ptr TGtkDeleteType + TGtkDeleteType* = int32 + PGtkDirectionType* = ptr TGtkDirectionType + TGtkDirectionType* = int32 + PGtkExpanderStyle* = ptr TGtkExpanderStyle + TGtkExpanderStyle* = int32 + PPGtkIconSize* = ptr PGtkIconSize + PGtkIconSize* = ptr TGtkIconSize + TGtkIconSize* = int32 + PGtkTextDirection* = ptr TGtkTextDirection + TGtkTextDirection* = int32 + PGtkJustification* = ptr TGtkJustification + TGtkJustification* = int32 + PGtkMenuDirectionType* = ptr TGtkMenuDirectionType + TGtkMenuDirectionType* = int32 + PGtkMetricType* = ptr TGtkMetricType + TGtkMetricType* = int32 + PGtkMovementStep* = ptr TGtkMovementStep + TGtkMovementStep* = int32 + PGtkOrientation* = ptr TGtkOrientation + TGtkOrientation* = int32 + PGtkCornerType* = ptr TGtkCornerType + TGtkCornerType* = int32 + PGtkPackType* = ptr TGtkPackType + TGtkPackType* = int32 + PGtkPathPriorityType* = ptr TGtkPathPriorityType + TGtkPathPriorityType* = int32 + PGtkPathType* = ptr TGtkPathType + TGtkPathType* = int32 + PGtkPolicyType* = ptr TGtkPolicyType + TGtkPolicyType* = int32 + PGtkPositionType* = ptr TGtkPositionType + TGtkPositionType* = int32 + PGtkReliefStyle* = ptr TGtkReliefStyle + TGtkReliefStyle* = int32 + PGtkResizeMode* = ptr TGtkResizeMode + TGtkResizeMode* = int32 + PGtkScrollType* = ptr TGtkScrollType + TGtkScrollType* = int32 + PGtkSelectionMode* = ptr TGtkSelectionMode + TGtkSelectionMode* = int32 + PGtkShadowType* = ptr TGtkShadowType + TGtkShadowType* = int32 + PGtkStateType* = ptr TGtkStateType + TGtkStateType* = int32 + PGtkSubmenuDirection* = ptr TGtkSubmenuDirection + TGtkSubmenuDirection* = int32 + PGtkSubmenuPlacement* = ptr TGtkSubmenuPlacement + TGtkSubmenuPlacement* = int32 + PGtkToolbarStyle* = ptr TGtkToolbarStyle + TGtkToolbarStyle* = int32 + PGtkUpdateType* = ptr TGtkUpdateType + TGtkUpdateType* = int32 + PGtkVisibility* = ptr TGtkVisibility + TGtkVisibility* = int32 + PGtkWindowPosition* = ptr TGtkWindowPosition + TGtkWindowPosition* = int32 + PGtkWindowType* = ptr TGtkWindowType + TGtkWindowType* = int32 + PGtkWrapMode* = ptr TGtkWrapMode + TGtkWrapMode* = int32 + PGtkSortType* = ptr TGtkSortType + TGtkSortType* = int32 + PGtkStyle* = ptr TGtkStyle + PPGtkTreeModel* = ptr PGtkTreeModel + PGtkTreeModel* = pointer + PGtkTreePath* = pointer + PGtkTreeIter* = ptr TGtkTreeIter + PGtkSelectionData* = ptr TGtkSelectionData + PGtkTextTagTable* = ptr TGtkTextTagTable + PGtkTextBTreeNode* = pointer + PGtkTextBTree* = pointer + PGtkTextLine* = ptr TGtkTextLine + PGtkTreeViewColumn* = ptr TGtkTreeViewColumn + PGtkTreeView* = ptr TGtkTreeView + TGtkTreeViewColumnDropFunc* = proc (tree_view: PGtkTreeView, + column: PGtkTreeViewColumn, + prev_column: PGtkTreeViewColumn, + next_column: PGtkTreeViewColumn, + data: gpointer): gboolean{.cdecl.} + TGtkTreeViewMappingFunc* = proc (tree_view: PGtkTreeView, path: PGtkTreePath, + user_data: gpointer){.cdecl.} + TGtkTreeViewSearchEqualFunc* = proc (model: PGtkTreeModel, column: gint, + key: cstring, iter: PGtkTreeIter, + search_data: gpointer): gboolean{.cdecl.} + TGtkTreeDestroyCountFunc* = proc (tree_view: PGtkTreeView, path: PGtkTreePath, + children: gint, user_data: gpointer){.cdecl.} + PGtkTreeViewDropPosition* = ptr TGtkTreeViewDropPosition + TGtkTreeViewDropPosition* = enum + GTK_TREE_VIEW_DROP_BEFORE, GTK_TREE_VIEW_DROP_AFTER, + GTK_TREE_VIEW_DROP_INTO_OR_BEFORE, GTK_TREE_VIEW_DROP_INTO_OR_AFTER + PGtkObjectFlags* = ptr TGtkObjectFlags + TGtkObjectFlags* = int32 + TGtkObject* = object of TGObject + flags*: guint32 + + PGtkObjectClass* = ptr TGtkObjectClass + TGtkObjectClass* = object of TGObjectClass + set_arg*: proc (anObject: PGtkObject, arg: PGtkArg, arg_id: guint){.cdecl.} + get_arg*: proc (anObject: PGtkObject, arg: PGtkArg, arg_id: guint){.cdecl.} + destroy*: proc (anObject: PGtkObject){.cdecl.} + + PGtkFundamentalType* = ptr TGtkFundamentalType + TGtkFundamentalType* = GType + TGtkFunction* = proc (data: gpointer): gboolean{.cdecl.} + TGtkDestroyNotify* = proc (data: gpointer){.cdecl.} + TGtkCallbackMarshal* = proc (anObject: PGtkObject, data: gpointer, + n_args: guint, args: PGtkArg){.cdecl.} + TGtkSignalFuncProc* = proc () + TGtkSignalFunc* = proc (para1: TGtkSignalFuncProc){.cdecl.} + PGtkSignalMarshaller* = ptr TGtkSignalMarshaller + TGtkSignalMarshaller* = TGSignalCMarshaller + TGtkArgSignalData* = record + f*: TGtkSignalFunc + d*: gpointer + + TGtkArg* = record + `type`*: TGtkType + name*: cstring + d*: gdouble # was a union type + + PGtkTypeInfo* = ptr TGtkTypeInfo + TGtkTypeInfo* = record + type_name*: cstring + object_size*: guint + class_size*: guint + class_init_func*: pointer #TGtkClassInitFunc + object_init_func*: pointer #TGtkObjectInitFunc + reserved_1*: gpointer + reserved_2*: gpointer + base_class_init_func*: pointer #TGtkClassInitFunc + + PGtkEnumValue* = ptr TGtkEnumValue + TGtkEnumValue* = TGEnumValue + PGtkFlagValue* = ptr TGtkFlagValue + TGtkFlagValue* = TGFlagsValue + PGtkWidgetFlags* = ptr TGtkWidgetFlags + TGtkWidgetFlags* = int32 + PGtkWidgetHelpType* = ptr TGtkWidgetHelpType + TGtkWidgetHelpType* = enum + GTK_WIDGET_HELP_TOOLTIP, GTK_WIDGET_HELP_WHATS_THIS + PGtkAllocation* = ptr TGtkAllocation + TGtkAllocation* = TGdkRectangle + TGtkCallback* = proc (widget: PGtkWidget, data: gpointer){.cdecl.} + PGtkRequisition* = ptr TGtkRequisition + TGtkRequisition* = record + width*: gint + height*: gint + + TGtkWidget* = object of TGtkObject + private_flags*: guint16 + state*: guint8 + saved_state*: guint8 + name*: cstring + style*: PGtkStyle + requisition*: TGtkRequisition + allocation*: TGtkAllocation + window*: PGdkWindow + parent*: PGtkWidget + + PGtkWidgetClass* = ptr TGtkWidgetClass + TGtkWidgetClass* = object of TGtkObjectClass + activate_signal*: guint + set_scroll_adjustments_signal*: guint + dispatch_child_properties_changed*: proc (widget: PGtkWidget, + n_pspecs: guint, pspecs: PPGParamSpec){.cdecl.} + show*: proc (widget: PGtkWidget){.cdecl.} + show_all*: proc (widget: PGtkWidget){.cdecl.} + hide*: proc (widget: PGtkWidget){.cdecl.} + hide_all*: proc (widget: PGtkWidget){.cdecl.} + map*: proc (widget: PGtkWidget){.cdecl.} + unmap*: proc (widget: PGtkWidget){.cdecl.} + realize*: proc (widget: PGtkWidget){.cdecl.} + unrealize*: proc (widget: PGtkWidget){.cdecl.} + size_request*: proc (widget: PGtkWidget, requisition: PGtkRequisition){. + cdecl.} + size_allocate*: proc (widget: PGtkWidget, allocation: PGtkAllocation){.cdecl.} + state_changed*: proc (widget: PGtkWidget, previous_state: TGtkStateType){. + cdecl.} + parent_set*: proc (widget: PGtkWidget, previous_parent: PGtkWidget){.cdecl.} + hierarchy_changed*: proc (widget: PGtkWidget, previous_toplevel: PGtkWidget){. + cdecl.} + style_set*: proc (widget: PGtkWidget, previous_style: PGtkStyle){.cdecl.} + direction_changed*: proc (widget: PGtkWidget, + previous_direction: TGtkTextDirection){.cdecl.} + grab_notify*: proc (widget: PGtkWidget, was_grabbed: gboolean){.cdecl.} + child_notify*: proc (widget: PGtkWidget, pspec: PGParamSpec){.cdecl.} + mnemonic_activate*: proc (widget: PGtkWidget, group_cycling: gboolean): gboolean{. + cdecl.} + grab_focus*: proc (widget: PGtkWidget){.cdecl.} + focus*: proc (widget: PGtkWidget, direction: TGtkDirectionType): gboolean{. + cdecl.} + event*: proc (widget: PGtkWidget, event: PGdkEvent): gboolean{.cdecl.} + button_press_event*: proc (widget: PGtkWidget, event: PGdkEventButton): gboolean{. + cdecl.} + button_release_event*: proc (widget: PGtkWidget, event: PGdkEventButton): gboolean{. + cdecl.} + scroll_event*: proc (widget: PGtkWidget, event: PGdkEventScroll): gboolean{. + cdecl.} + motion_notify_event*: proc (widget: PGtkWidget, event: PGdkEventMotion): gboolean{. + cdecl.} + delete_event*: proc (widget: PGtkWidget, event: PGdkEventAny): gboolean{. + cdecl.} + destroy_event*: proc (widget: PGtkWidget, event: PGdkEventAny): gboolean{. + cdecl.} + expose_event*: proc (widget: PGtkWidget, event: PGdkEventExpose): gboolean{. + cdecl.} + key_press_event*: proc (widget: PGtkWidget, event: PGdkEventKey): gboolean{. + cdecl.} + key_release_event*: proc (widget: PGtkWidget, event: PGdkEventKey): gboolean{. + cdecl.} + enter_notify_event*: proc (widget: PGtkWidget, event: PGdkEventCrossing): gboolean{. + cdecl.} + leave_notify_event*: proc (widget: PGtkWidget, event: PGdkEventCrossing): gboolean{. + cdecl.} + configure_event*: proc (widget: PGtkWidget, event: PGdkEventConfigure): gboolean{. + cdecl.} + focus_in_event*: proc (widget: PGtkWidget, event: PGdkEventFocus): gboolean{. + cdecl.} + focus_out_event*: proc (widget: PGtkWidget, event: PGdkEventFocus): gboolean{. + cdecl.} + map_event*: proc (widget: PGtkWidget, event: PGdkEventAny): gboolean{.cdecl.} + unmap_event*: proc (widget: PGtkWidget, event: PGdkEventAny): gboolean{. + cdecl.} + property_notify_event*: proc (widget: PGtkWidget, event: PGdkEventProperty): gboolean{. + cdecl.} + selection_clear_event*: proc (widget: PGtkWidget, event: PGdkEventSelection): gboolean{. + cdecl.} + selection_request_event*: proc (widget: PGtkWidget, + event: PGdkEventSelection): gboolean{.cdecl.} + selection_notify_event*: proc (widget: PGtkWidget, event: PGdkEventSelection): gboolean{. + cdecl.} + proximity_in_event*: proc (widget: PGtkWidget, event: PGdkEventProximity): gboolean{. + cdecl.} + proximity_out_event*: proc (widget: PGtkWidget, event: PGdkEventProximity): gboolean{. + cdecl.} + visibility_notify_event*: proc (widget: PGtkWidget, + event: PGdkEventVisibility): gboolean{.cdecl.} + client_event*: proc (widget: PGtkWidget, event: PGdkEventClient): gboolean{. + cdecl.} + no_expose_event*: proc (widget: PGtkWidget, event: PGdkEventAny): gboolean{. + cdecl.} + window_state_event*: proc (widget: PGtkWidget, event: PGdkEventWindowState): gboolean{. + cdecl.} + selection_get*: proc (widget: PGtkWidget, selection_data: PGtkSelectionData, + info: guint, time: guint){.cdecl.} + selection_received*: proc (widget: PGtkWidget, + selection_data: PGtkSelectionData, time: guint){. + cdecl.} + drag_begin*: proc (widget: PGtkWidget, context: PGdkDragContext){.cdecl.} + drag_end*: proc (widget: PGtkWidget, context: PGdkDragContext){.cdecl.} + drag_data_get*: proc (widget: PGtkWidget, context: PGdkDragContext, + selection_data: PGtkSelectionData, info: guint, + time: guint){.cdecl.} + drag_data_delete*: proc (widget: PGtkWidget, context: PGdkDragContext){. + cdecl.} + drag_leave*: proc (widget: PGtkWidget, context: PGdkDragContext, time: guint){. + cdecl.} + drag_motion*: proc (widget: PGtkWidget, context: PGdkDragContext, x: gint, + y: gint, time: guint): gboolean{.cdecl.} + drag_drop*: proc (widget: PGtkWidget, context: PGdkDragContext, x: gint, + y: gint, time: guint): gboolean{.cdecl.} + drag_data_received*: proc (widget: PGtkWidget, context: PGdkDragContext, + x: gint, y: gint, + selection_data: PGtkSelectionData, info: guint, + time: guint){.cdecl.} + popup_menu*: proc (widget: PGtkWidget): gboolean{.cdecl.} + show_help*: proc (widget: PGtkWidget, help_type: TGtkWidgetHelpType): gboolean{. + cdecl.} + get_accessible*: proc (widget: PGtkWidget): PAtkObject{.cdecl.} + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + gtk_reserved5*: proc (){.cdecl.} + gtk_reserved6*: proc (){.cdecl.} + gtk_reserved7*: proc (){.cdecl.} + gtk_reserved8*: proc (){.cdecl.} + + PGtkWidgetAuxInfo* = ptr TGtkWidgetAuxInfo + TGtkWidgetAuxInfo* = record + x*: gint + y*: gint + width*: gint + height*: gint + flag0*: guint16 + + PGtkWidgetShapeInfo* = ptr TGtkWidgetShapeInfo + TGtkWidgetShapeInfo* = record + offset_x*: gint16 + offset_y*: gint16 + shape_mask*: PGdkBitmap + + TGtkMisc* = object of TGtkWidget + xalign*: gfloat + yalign*: gfloat + xpad*: guint16 + ypad*: guint16 + + PGtkMiscClass* = ptr TGtkMiscClass + TGtkMiscClass* = object of TGtkWidgetClass + + PGtkAccelFlags* = ptr TGtkAccelFlags + TGtkAccelFlags* = int32 + PGtkAccelGroup* = ptr TGtkAccelGroup + PGtkAccelGroupEntry* = ptr TGtkAccelGroupEntry + TGtkAccelGroupActivate* = proc (accel_group: PGtkAccelGroup, + acceleratable: PGObject, keyval: guint, + modifier: TGdkModifierType): gboolean{.cdecl.} + TGtkAccelGroup* = object of TGObject + lock_count*: guint + modifier_mask*: TGdkModifierType + acceleratables*: PGSList + n_accels*: guint + priv_accels*: PGtkAccelGroupEntry + + PGtkAccelGroupClass* = ptr TGtkAccelGroupClass + TGtkAccelGroupClass* = object of TGObjectClass + accel_changed*: proc (accel_group: PGtkAccelGroup, keyval: guint, + modifier: TGdkModifierType, accel_closure: PGClosure){. + cdecl.} + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + + PGtkAccelKey* = ptr TGtkAccelKey + TGtkAccelKey* = record + accel_key*: guint + accel_mods*: TGdkModifierType + flag0*: guint16 + + TGtkAccelGroupEntry* = record + key*: TGtkAccelKey + closure*: PGClosure + accel_path_quark*: TGQuark + + Tgtk_accel_group_find_func* = proc (key: PGtkAccelKey, closure: PGClosure, + data: gpointer): gboolean{.cdecl.} + PGtkContainer* = ptr TGtkContainer + TGtkContainer* = object of TGtkWidget + focus_child*: PGtkWidget + GtkContainer_flag0*: int32 + + PGtkContainerClass* = ptr TGtkContainerClass + TGtkContainerClass* = object of TGtkWidgetClass + add*: proc (container: PGtkContainer, widget: PGtkWidget){.cdecl.} + remove*: proc (container: PGtkContainer, widget: PGtkWidget){.cdecl.} + check_resize*: proc (container: PGtkContainer){.cdecl.} + forall*: proc (container: PGtkContainer, include_internals: gboolean, + callback: TGtkCallback, callback_data: gpointer){.cdecl.} + set_focus_child*: proc (container: PGtkContainer, widget: PGtkWidget){.cdecl.} + child_type*: proc (container: PGtkContainer): TGtkType{.cdecl.} + composite_name*: proc (container: PGtkContainer, child: PGtkWidget): cstring{. + cdecl.} + set_child_property*: proc (container: PGtkContainer, child: PGtkWidget, + property_id: guint, value: PGValue, + pspec: PGParamSpec){.cdecl.} + get_child_property*: proc (container: PGtkContainer, child: PGtkWidget, + property_id: guint, value: PGValue, + pspec: PGParamSpec){.cdecl.} + gtk_reserved20: proc (){.cdecl.} + gtk_reserved21: proc (){.cdecl.} + gtk_reserved23: proc (){.cdecl.} + gtk_reserved24: proc (){.cdecl.} + + PGtkBin* = ptr TGtkBin + TGtkBin* = object of TGtkContainer + child*: PGtkWidget + + PGtkBinClass* = ptr TGtkBinClass + TGtkBinClass* = object of TGtkContainerClass + + PGtkWindowGeometryInfo* = pointer + PGtkWindowGroup* = ptr TGtkWindowGroup + PGtkWindow* = ptr TGtkWindow + TGtkWindow* = object of TGtkBin + title*: cstring + wmclass_name*: cstring + wmclass_class*: cstring + wm_role*: cstring + focus_widget*: PGtkWidget + default_widget*: PGtkWidget + transient_parent*: PGtkWindow + geometry_info*: PGtkWindowGeometryInfo + frame*: PGdkWindow + group*: PGtkWindowGroup + configure_request_count*: guint16 + gtkwindow_flag0*: int32 + frame_left*: guint + frame_top*: guint + frame_right*: guint + frame_bottom*: guint + keys_changed_handler*: guint + mnemonic_modifier*: TGdkModifierType + screen*: PGdkScreen + + PGtkWindowClass* = ptr TGtkWindowClass + TGtkWindowClass* = object of TGtkBinClass + set_focus*: proc (window: PGtkWindow, focus: PGtkWidget){.cdecl.} + frame_event*: proc (window: PGtkWindow, event: PGdkEvent): gboolean{.cdecl.} + activate_focus*: proc (window: PGtkWindow){.cdecl.} + activate_default*: proc (window: PGtkWindow){.cdecl.} + move_focus*: proc (window: PGtkWindow, direction: TGtkDirectionType){.cdecl.} + keys_changed*: proc (window: PGtkWindow){.cdecl.} + gtk_reserved30: proc (){.cdecl.} + gtk_reserved31: proc (){.cdecl.} + gtk_reserved32: proc (){.cdecl.} + gtk_reserved33: proc (){.cdecl.} + + TGtkWindowGroup* = object of TGObject + grabs*: PGSList + + PGtkWindowGroupClass* = ptr TGtkWindowGroupClass + TGtkWindowGroupClass* = object of TGObjectClass + gtk_reserved40: proc (){.cdecl.} + gtk_reserved41: proc (){.cdecl.} + gtk_reserved42: proc (){.cdecl.} + gtk_reserved43: proc (){.cdecl.} + + TGtkWindowKeysForeachFunc* = proc (window: PGtkWindow, keyval: guint, + modifiers: TGdkModifierType, + is_mnemonic: gboolean, data: gpointer){. + cdecl.} + PGtkLabelSelectionInfo* = pointer + TGtkLabel* = object of TGtkMisc + `label`*: cstring + GtkLabel_flag0*: guint16 + mnemonic_keyval*: guint + text*: cstring + attrs*: PPangoAttrList + effective_attrs*: PPangoAttrList + layout*: PPangoLayout + mnemonic_widget*: PGtkWidget + mnemonic_window*: PGtkWindow + select_info*: PGtkLabelSelectionInfo + + PGtkLabelClass* = ptr TGtkLabelClass + TGtkLabelClass* = object of TGtkMiscClass + move_cursor*: proc (`label`: PGtkLabel, step: TGtkMovementStep, count: gint, + extend_selection: gboolean){.cdecl.} + copy_clipboard*: proc (`label`: PGtkLabel){.cdecl.} + populate_popup*: proc (`label`: PGtkLabel, menu: PGtkMenu){.cdecl.} + gtk_reserved50: proc (){.cdecl.} + gtk_reserved51: proc (){.cdecl.} + gtk_reserved52: proc (){.cdecl.} + gtk_reserved53: proc (){.cdecl.} + + PGtkAccelLabel* = ptr TGtkAccelLabel + TGtkAccelLabel* = object of TGtkLabel + queue_id*: guint + accel_padding*: guint + accel_widget*: PGtkWidget + accel_closure*: PGClosure + accel_group*: PGtkAccelGroup + accel_string*: cstring + accel_string_width*: guint16 + + PGtkAccelLabelClass* = ptr TGtkAccelLabelClass + TGtkAccelLabelClass* = object of TGtkLabelClass + signal_quote1*: cstring + signal_quote2*: cstring + mod_name_shift*: cstring + mod_name_control*: cstring + mod_name_alt*: cstring + mod_separator*: cstring + accel_seperator*: cstring + GtkAccelLabelClass_flag0*: guint16 + gtk_reserved61: proc (){.cdecl.} + gtk_reserved62: proc (){.cdecl.} + gtk_reserved63: proc (){.cdecl.} + gtk_reserved64: proc (){.cdecl.} + + TGtkAccelMapForeach* = proc (data: gpointer, accel_path: cstring, + accel_key: guint, accel_mods: TGdkModifierType, + changed: gboolean){.cdecl.} + PGtkAccessible* = ptr TGtkAccessible + TGtkAccessible* = object of TAtkObject + widget*: PGtkWidget + + PGtkAccessibleClass* = ptr TGtkAccessibleClass + TGtkAccessibleClass* = object of TAtkObjectClass + connect_widget_destroyed*: proc (accessible: PGtkAccessible){.cdecl.} + gtk_reserved71: proc (){.cdecl.} + gtk_reserved72: proc (){.cdecl.} + gtk_reserved73: proc (){.cdecl.} + gtk_reserved74: proc (){.cdecl.} + + PGtkAdjustment* = ptr TGtkAdjustment + TGtkAdjustment* = object of TGtkObject + lower*: gdouble + upper*: gdouble + value*: gdouble + step_increment*: gdouble + page_increment*: gdouble + page_size*: gdouble + + PGtkAdjustmentClass* = ptr TGtkAdjustmentClass + TGtkAdjustmentClass* = object of TGtkObjectClass + changed*: proc (adjustment: PGtkAdjustment){.cdecl.} + value_changed*: proc (adjustment: PGtkAdjustment){.cdecl.} + gtk_reserved81: proc (){.cdecl.} + gtk_reserved82: proc (){.cdecl.} + gtk_reserved83: proc (){.cdecl.} + gtk_reserved84: proc (){.cdecl.} + + PGtkAlignment* = ptr TGtkAlignment + TGtkAlignment* = object of TGtkBin + xalign*: gfloat + yalign*: gfloat + xscale*: gfloat + yscale*: gfloat + + PGtkAlignmentClass* = ptr TGtkAlignmentClass + TGtkAlignmentClass* = object of TGtkBinClass + + PGtkFrame* = ptr TGtkFrame + TGtkFrame* = object of TGtkBin + label_widget*: PGtkWidget + shadow_type*: gint16 + label_xalign*: gfloat + label_yalign*: gfloat + child_allocation*: TGtkAllocation + + PGtkFrameClass* = ptr TGtkFrameClass + TGtkFrameClass* = object of TGtkBinClass + compute_child_allocation*: proc (frame: PGtkFrame, + allocation: PGtkAllocation){.cdecl.} + + PGtkAspectFrame* = ptr TGtkAspectFrame + TGtkAspectFrame* = object of TGtkFrame + xalign*: gfloat + yalign*: gfloat + ratio*: gfloat + obey_child*: gboolean + center_allocation*: TGtkAllocation + + PGtkAspectFrameClass* = ptr TGtkAspectFrameClass + TGtkAspectFrameClass* = object of TGtkFrameClass + + PGtkArrow* = ptr TGtkArrow + TGtkArrow* = object of TGtkMisc + arrow_type*: gint16 + shadow_type*: gint16 + + PGtkArrowClass* = ptr TGtkArrowClass + TGtkArrowClass* = object of TGtkMiscClass + + PGtkBindingEntry* = ptr TGtkBindingEntry + PGtkBindingSignal* = ptr TGtkBindingSignal + PGtkBindingArg* = ptr TGtkBindingArg + PGtkBindingSet* = ptr TGtkBindingSet + TGtkBindingSet* = record + set_name*: cstring + priority*: gint + widget_path_pspecs*: PGSList + widget_class_pspecs*: PGSList + class_branch_pspecs*: PGSList + entries*: PGtkBindingEntry + current*: PGtkBindingEntry + flag0*: guint16 + + TGtkBindingEntry* = record + keyval*: guint + modifiers*: TGdkModifierType + binding_set*: PGtkBindingSet + flag0*: guint16 + set_next*: PGtkBindingEntry + hash_next*: PGtkBindingEntry + signals*: PGtkBindingSignal + + TGtkBindingSignal* = record + next*: PGtkBindingSignal + signal_name*: cstring + n_args*: guint + args*: PGtkBindingArg + + TGtkBindingArg* = record + arg_type*: TGtkType + d*: gdouble + + PGtkBox* = ptr TGtkBox + TGtkBox* = object of TGtkContainer + children*: PGList + spacing*: gint16 + gtkbox_flag0*: guint16 + + PGtkBoxClass* = ptr TGtkBoxClass + TGtkBoxClass* = object of TGtkContainerClass + + PGtkBoxChild* = ptr TGtkBoxChild + TGtkBoxChild* = record + widget*: PGtkWidget + padding*: guint16 + flag0*: guint16 + + PGtkButtonBox* = ptr TGtkButtonBox + TGtkButtonBox* = object of TGtkBox + child_min_width*: gint + child_min_height*: gint + child_ipad_x*: gint + child_ipad_y*: gint + layout_style*: TGtkButtonBoxStyle + + PGtkButtonBoxClass* = ptr TGtkButtonBoxClass + TGtkButtonBoxClass* = object of TGtkBoxClass + + PGtkButton* = ptr TGtkButton + TGtkButton* = object of TGtkBin + event_window*: PGdkWindow + label_text*: cstring + activate_timeout*: guint + gtkbutton_flag0*: guint16 + + PGtkButtonClass* = ptr TGtkButtonClass + TGtkButtonClass* = object of TGtkBinClass + pressed*: proc (button: PGtkButton){.cdecl.} + released*: proc (button: PGtkButton){.cdecl.} + clicked*: proc (button: PGtkButton){.cdecl.} + enter*: proc (button: PGtkButton){.cdecl.} + leave*: proc (button: PGtkButton){.cdecl.} + activate*: proc (button: PGtkButton){.cdecl.} + gtk_reserved101: proc (){.cdecl.} + gtk_reserved102: proc (){.cdecl.} + gtk_reserved103: proc (){.cdecl.} + gtk_reserved104: proc (){.cdecl.} + + PGtkCalendarDisplayOptions* = ptr TGtkCalendarDisplayOptions + TGtkCalendarDisplayOptions* = int32 + PGtkCalendar* = ptr TGtkCalendar + TGtkCalendar* = object of TGtkWidget + header_style*: PGtkStyle + label_style*: PGtkStyle + month*: gint + year*: gint + selected_day*: gint + day_month*: array[0..5, array[0..6, gint]] + day*: array[0..5, array[0..6, gint]] + num_marked_dates*: gint + marked_date*: array[0..30, gint] + display_flags*: TGtkCalendarDisplayOptions + marked_date_color*: array[0..30, TGdkColor] + gc*: PGdkGC + xor_gc*: PGdkGC + focus_row*: gint + focus_col*: gint + highlight_row*: gint + highlight_col*: gint + private_data*: gpointer + grow_space*: array[0..31, gchar] + gtk_reserved111: proc (){.cdecl.} + gtk_reserved112: proc (){.cdecl.} + gtk_reserved113: proc (){.cdecl.} + gtk_reserved114: proc (){.cdecl.} + + PGtkCalendarClass* = ptr TGtkCalendarClass + TGtkCalendarClass* = object of TGtkWidgetClass + month_changed*: proc (calendar: PGtkCalendar){.cdecl.} + day_selected*: proc (calendar: PGtkCalendar){.cdecl.} + day_selected_double_click*: proc (calendar: PGtkCalendar){.cdecl.} + prev_month*: proc (calendar: PGtkCalendar){.cdecl.} + next_month*: proc (calendar: PGtkCalendar){.cdecl.} + prev_year*: proc (calendar: PGtkCalendar){.cdecl.} + next_year*: proc (calendar: PGtkCalendar){.cdecl.} + + PGtkCellEditable* = pointer + PGtkCellEditableIface* = ptr TGtkCellEditableIface + TGtkCellEditableIface* = object of TGTypeInterface + editing_done*: proc (cell_editable: PGtkCellEditable){.cdecl.} + remove_widget*: proc (cell_editable: PGtkCellEditable){.cdecl.} + start_editing*: proc (cell_editable: PGtkCellEditable, event: PGdkEvent){. + cdecl.} + + PGtkCellRendererState* = ptr TGtkCellRendererState + TGtkCellRendererState* = int32 + PGtkCellRendererMode* = ptr TGtkCellRendererMode + TGtkCellRendererMode* = enum + GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE, + GTK_CELL_RENDERER_MODE_EDITABLE + PGtkCellRenderer* = ptr TGtkCellRenderer + TGtkCellRenderer* = object of TGtkObject + xalign*: gfloat + yalign*: gfloat + width*: gint + height*: gint + xpad*: guint16 + ypad*: guint16 + GtkCellRenderer_flag0*: guint16 + + PGtkCellRendererClass* = ptr TGtkCellRendererClass + TGtkCellRendererClass* = object of TGtkObjectClass + get_size*: proc (cell: PGtkCellRenderer, widget: PGtkWidget, + cell_area: PGdkRectangle, x_offset: Pgint, y_offset: Pgint, + width: Pgint, height: Pgint){.cdecl.} + render*: proc (cell: PGtkCellRenderer, window: PGdkWindow, + widget: PGtkWidget, background_area: PGdkRectangle, + cell_area: PGdkRectangle, expose_area: PGdkRectangle, + flags: TGtkCellRendererState){.cdecl.} + activate*: proc (cell: PGtkCellRenderer, event: PGdkEvent, + widget: PGtkWidget, path: cstring, + background_area: PGdkRectangle, cell_area: PGdkRectangle, + flags: TGtkCellRendererState): gboolean{.cdecl.} + start_editing*: proc (cell: PGtkCellRenderer, event: PGdkEvent, + widget: PGtkWidget, path: cstring, + background_area: PGdkRectangle, + cell_area: PGdkRectangle, flags: TGtkCellRendererState): PGtkCellEditable{. + cdecl.} + gtk_reserved121: proc (){.cdecl.} + gtk_reserved122: proc (){.cdecl.} + gtk_reserved123: proc (){.cdecl.} + gtk_reserved124: proc (){.cdecl.} + + PGtkCellRendererText* = ptr TGtkCellRendererText + TGtkCellRendererText* = object of TGtkCellRenderer + text*: cstring + font*: PPangoFontDescription + font_scale*: gdouble + foreground*: TPangoColor + background*: TPangoColor + extra_attrs*: PPangoAttrList + underline_style*: TPangoUnderline + rise*: gint + fixed_height_rows*: gint + GtkCellRendererText_flag0*: guint16 + + PGtkCellRendererTextClass* = ptr TGtkCellRendererTextClass + TGtkCellRendererTextClass* = object of TGtkCellRendererClass + edited*: proc (cell_renderer_text: PGtkCellRendererText, path: cstring, + new_text: cstring){.cdecl.} + gtk_reserved131: proc (){.cdecl.} + gtk_reserved132: proc (){.cdecl.} + gtk_reserved133: proc (){.cdecl.} + gtk_reserved134: proc (){.cdecl.} + + PGtkCellRendererToggle* = ptr TGtkCellRendererToggle + TGtkCellRendererToggle* = object of TGtkCellRenderer + GtkCellRendererToggle_flag0*: guint16 + + PGtkCellRendererToggleClass* = ptr TGtkCellRendererToggleClass + TGtkCellRendererToggleClass* = object of TGtkCellRendererClass + toggled*: proc (cell_renderer_toggle: PGtkCellRendererToggle, path: cstring){. + cdecl.} + gtk_reserved141: proc (){.cdecl.} + gtk_reserved142: proc (){.cdecl.} + gtk_reserved143: proc (){.cdecl.} + gtk_reserved144: proc (){.cdecl.} + + PGtkCellRendererPixbuf* = ptr TGtkCellRendererPixbuf + TGtkCellRendererPixbuf* = object of TGtkCellRenderer + pixbuf*: PGdkPixbuf + pixbuf_expander_open*: PGdkPixbuf + pixbuf_expander_closed*: PGdkPixbuf + + PGtkCellRendererPixbufClass* = ptr TGtkCellRendererPixbufClass + TGtkCellRendererPixbufClass* = object of TGtkCellRendererClass + gtk_reserved151: proc (){.cdecl.} + gtk_reserved152: proc (){.cdecl.} + gtk_reserved153: proc (){.cdecl.} + gtk_reserved154: proc (){.cdecl.} + + PGtkItem* = ptr TGtkItem + TGtkItem* = object of TGtkBin + + PGtkItemClass* = ptr TGtkItemClass + TGtkItemClass* = object of TGtkBinClass + select*: proc (item: PGtkItem){.cdecl.} + deselect*: proc (item: PGtkItem){.cdecl.} + toggle*: proc (item: PGtkItem){.cdecl.} + gtk_reserved161: proc (){.cdecl.} + gtk_reserved162: proc (){.cdecl.} + gtk_reserved163: proc (){.cdecl.} + gtk_reserved164: proc (){.cdecl.} + + PGtkMenuItem* = ptr TGtkMenuItem + TGtkMenuItem* = object of TGtkItem + submenu*: PGtkWidget + event_window*: PGdkWindow + toggle_size*: guint16 + accelerator_width*: guint16 + accel_path*: cstring + GtkMenuItem_flag0*: guint16 + timer*: guint + + PGtkMenuItemClass* = ptr TGtkMenuItemClass + TGtkMenuItemClass* = object of TGtkItemClass + GtkMenuItemClass_flag0*: guint16 + activate*: proc (menu_item: PGtkMenuItem){.cdecl.} + activate_item*: proc (menu_item: PGtkMenuItem){.cdecl.} + toggle_size_request*: proc (menu_item: PGtkMenuItem, requisition: Pgint){. + cdecl.} + toggle_size_allocate*: proc (menu_item: PGtkMenuItem, allocation: gint){. + cdecl.} + gtk_reserved171: proc (){.cdecl.} + gtk_reserved172: proc (){.cdecl.} + gtk_reserved173: proc (){.cdecl.} + gtk_reserved174: proc (){.cdecl.} + + PGtkToggleButton* = ptr TGtkToggleButton + TGtkToggleButton* = object of TGtkButton + GtkToggleButton_flag0*: guint16 + + PGtkToggleButtonClass* = ptr TGtkToggleButtonClass + TGtkToggleButtonClass* = object of TGtkButtonClass + toggled*: proc (toggle_button: PGtkToggleButton){.cdecl.} + gtk_reserved171: proc (){.cdecl.} + gtk_reserved172: proc (){.cdecl.} + gtk_reserved173: proc (){.cdecl.} + gtk_reserved174: proc (){.cdecl.} + + PGtkCheckButton* = ptr TGtkCheckButton + TGtkCheckButton* = object of TGtkToggleButton + + PGtkCheckButtonClass* = ptr TGtkCheckButtonClass + TGtkCheckButtonClass* = object of TGtkToggleButtonClass + draw_indicator*: proc (check_button: PGtkCheckButton, area: PGdkRectangle){. + cdecl.} + gtk_reserved181: proc (){.cdecl.} + gtk_reserved182: proc (){.cdecl.} + gtk_reserved183: proc (){.cdecl.} + gtk_reserved184: proc (){.cdecl.} + + PGtkCheckMenuItem* = ptr TGtkCheckMenuItem + TGtkCheckMenuItem* = object of TGtkMenuItem + GtkCheckMenuItem_flag0*: guint16 + + PGtkCheckMenuItemClass* = ptr TGtkCheckMenuItemClass + TGtkCheckMenuItemClass* = object of TGtkMenuItemClass + toggled*: proc (check_menu_item: PGtkCheckMenuItem){.cdecl.} + draw_indicator*: proc (check_menu_item: PGtkCheckMenuItem, + area: PGdkRectangle){.cdecl.} + gtk_reserved191: proc (){.cdecl.} + gtk_reserved192: proc (){.cdecl.} + gtk_reserved193: proc (){.cdecl.} + gtk_reserved194: proc (){.cdecl.} + + PGtkClipboard* = pointer + TGtkClipboardReceivedFunc* = proc (clipboard: PGtkClipboard, + selection_data: PGtkSelectionData, + data: gpointer){.cdecl.} + TGtkClipboardTextReceivedFunc* = proc (clipboard: PGtkClipboard, text: cstring, + data: gpointer){.cdecl.} + TGtkClipboardGetFunc* = proc (clipboard: PGtkClipboard, + selection_data: PGtkSelectionData, info: guint, + user_data_or_owner: gpointer){.cdecl.} + TGtkClipboardClearFunc* = proc (clipboard: PGtkClipboard, + user_data_or_owner: gpointer){.cdecl.} + PGtkCList* = ptr TGtkCList + PGtkCListColumn* = ptr TGtkCListColumn + PGtkCListRow* = ptr TGtkCListRow + PGtkCell* = ptr TGtkCell + PGtkCellType* = ptr TGtkCellType + TGtkCellType* = enum + GTK_CELL_EMPTY, GTK_CELL_TEXT, GTK_CELL_PIXMAP, GTK_CELL_PIXTEXT, + GTK_CELL_WIDGET + PGtkCListDragPos* = ptr TGtkCListDragPos + TGtkCListDragPos* = enum + GTK_CLIST_DRAG_NONE, GTK_CLIST_DRAG_BEFORE, GTK_CLIST_DRAG_INTO, + GTK_CLIST_DRAG_AFTER + PGtkButtonAction* = ptr TGtkButtonAction + TGtkButtonAction* = int32 + TGtkCListCompareFunc* = proc (clist: PGtkCList, ptr1: gconstpointer, + ptr2: gconstpointer): gint{.cdecl.} + PGtkCListCellInfo* = ptr TGtkCListCellInfo + TGtkCListCellInfo* = record + row*: gint + column*: gint + + PGtkCListDestInfo* = ptr TGtkCListDestInfo + TGtkCListDestInfo* = record + cell*: TGtkCListCellInfo + insert_pos*: TGtkCListDragPos + + TGtkCList* = object of TGtkContainer + GtkCList_flags*: guint16 + row_mem_chunk*: PGMemChunk + cell_mem_chunk*: PGMemChunk + freeze_count*: guint + internal_allocation*: TGdkRectangle + rows*: gint + row_height*: gint + row_list*: PGList + row_list_end*: PGList + columns*: gint + column_title_area*: TGdkRectangle + title_window*: PGdkWindow + column*: PGtkCListColumn + clist_window*: PGdkWindow + clist_window_width*: gint + clist_window_height*: gint + hoffset*: gint + voffset*: gint + shadow_type*: TGtkShadowType + selection_mode*: TGtkSelectionMode + selection*: PGList + selection_end*: PGList + undo_selection*: PGList + undo_unselection*: PGList + undo_anchor*: gint + button_actions*: array[0..4, guint8] + drag_button*: guint8 + click_cell*: TGtkCListCellInfo + hadjustment*: PGtkAdjustment + vadjustment*: PGtkAdjustment + xor_gc*: PGdkGC + fg_gc*: PGdkGC + bg_gc*: PGdkGC + cursor_drag*: PGdkCursor + x_drag*: gint + focus_row*: gint + focus_header_column*: gint + anchor*: gint + anchor_state*: TGtkStateType + drag_pos*: gint + htimer*: gint + vtimer*: gint + sort_type*: TGtkSortType + compare*: TGtkCListCompareFunc + sort_column*: gint + drag_highlight_row*: gint + drag_highlight_pos*: TGtkCListDragPos + + PGtkCListClass* = ptr TGtkCListClass + TGtkCListClass* = object of TGtkContainerClass + set_scroll_adjustments*: proc (clist: PGtkCList, + hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment){.cdecl.} + refresh*: proc (clist: PGtkCList){.cdecl.} + select_row*: proc (clist: PGtkCList, row: gint, column: gint, + event: PGdkEvent){.cdecl.} + unselect_row*: proc (clist: PGtkCList, row: gint, column: gint, + event: PGdkEvent){.cdecl.} + row_move*: proc (clist: PGtkCList, source_row: gint, dest_row: gint){.cdecl.} + click_column*: proc (clist: PGtkCList, column: gint){.cdecl.} + resize_column*: proc (clist: PGtkCList, column: gint, width: gint){.cdecl.} + toggle_focus_row*: proc (clist: PGtkCList){.cdecl.} + select_all*: proc (clist: PGtkCList){.cdecl.} + unselect_all*: proc (clist: PGtkCList){.cdecl.} + undo_selection*: proc (clist: PGtkCList){.cdecl.} + start_selection*: proc (clist: PGtkCList){.cdecl.} + end_selection*: proc (clist: PGtkCList){.cdecl.} + extend_selection*: proc (clist: PGtkCList, scroll_type: TGtkScrollType, + position: gfloat, auto_start_selection: gboolean){. + cdecl.} + scroll_horizontal*: proc (clist: PGtkCList, scroll_type: TGtkScrollType, + position: gfloat){.cdecl.} + scroll_vertical*: proc (clist: PGtkCList, scroll_type: TGtkScrollType, + position: gfloat){.cdecl.} + toggle_add_mode*: proc (clist: PGtkCList){.cdecl.} + abort_column_resize*: proc (clist: PGtkCList){.cdecl.} + resync_selection*: proc (clist: PGtkCList, event: PGdkEvent){.cdecl.} + selection_find*: proc (clist: PGtkCList, row_number: gint, + row_list_element: PGList): PGList{.cdecl.} + draw_row*: proc (clist: PGtkCList, area: PGdkRectangle, row: gint, + clist_row: PGtkCListRow){.cdecl.} + draw_drag_highlight*: proc (clist: PGtkCList, target_row: PGtkCListRow, + target_row_number: gint, + drag_pos: TGtkCListDragPos){.cdecl.} + clear*: proc (clist: PGtkCList){.cdecl.} + fake_unselect_all*: proc (clist: PGtkCList, row: gint){.cdecl.} + sort_list*: proc (clist: PGtkCList){.cdecl.} + insert_row*: proc (clist: PGtkCList, row: gint): gint{.cdecl, varargs.} + remove_row*: proc (clist: PGtkCList, row: gint){.cdecl.} + set_cell_contents*: proc (clist: PGtkCList, clist_row: PGtkCListRow, + column: gint, thetype: TGtkCellType, text: cstring, + spacing: guint8, pixmap: PGdkPixmap, + mask: PGdkBitmap){.cdecl.} + cell_size_request*: proc (clist: PGtkCList, clist_row: PGtkCListRow, + column: gint, requisition: PGtkRequisition){.cdecl.} + + PGPtrArray = pointer + PGArray = pointer + TGtkCListColumn* = record + title*: cstring + area*: TGdkRectangle + button*: PGtkWidget + window*: PGdkWindow + width*: gint + min_width*: gint + max_width*: gint + justification*: TGtkJustification + flag0*: guint16 + + TGtkCListRow* = record + cell*: PGtkCell + state*: TGtkStateType + foreground*: TGdkColor + background*: TGdkColor + style*: PGtkStyle + data*: gpointer + destroy*: TGtkDestroyNotify + flag0*: guint16 + + PGtkCellText* = ptr TGtkCellText + TGtkCellText* = record + `type`*: TGtkCellType + vertical*: gint16 + horizontal*: gint16 + style*: PGtkStyle + text*: cstring + + PGtkCellPixmap* = ptr TGtkCellPixmap + TGtkCellPixmap* = record + `type`*: TGtkCellType + vertical*: gint16 + horizontal*: gint16 + style*: PGtkStyle + pixmap*: PGdkPixmap + mask*: PGdkBitmap + + PGtkCellPixText* = ptr TGtkCellPixText + TGtkCellPixText* = record + `type`*: TGtkCellType + vertical*: gint16 + horizontal*: gint16 + style*: PGtkStyle + text*: cstring + spacing*: guint8 + pixmap*: PGdkPixmap + mask*: PGdkBitmap + + PGtkCellWidget* = ptr TGtkCellWidget + TGtkCellWidget* = record + `type`*: TGtkCellType + vertical*: gint16 + horizontal*: gint16 + style*: PGtkStyle + widget*: PGtkWidget + + TGtkCell* = record + `type`*: TGtkCellType + vertical*: gint16 + horizontal*: gint16 + style*: PGtkStyle + text*: cstring + spacing*: guint8 + pixmap*: PGdkPixmap + mask*: PGdkBitmap + + PGtkDialogFlags* = ptr TGtkDialogFlags + TGtkDialogFlags* = int32 + PGtkResponseType* = ptr TGtkResponseType + TGtkResponseType* = int32 + PGtkDialog* = ptr TGtkDialog + TGtkDialog* = object of TGtkWindow + vbox*: PGtkWidget + action_area*: PGtkWidget + separator*: PGtkWidget + + PGtkDialogClass* = ptr TGtkDialogClass + TGtkDialogClass* = object of TGtkWindowClass + response*: proc (dialog: PGtkDialog, response_id: gint){.cdecl.} + closeFile*: proc (dialog: PGtkDialog){.cdecl.} + gtk_reserved201: proc (){.cdecl.} + gtk_reserved202: proc (){.cdecl.} + gtk_reserved203: proc (){.cdecl.} + gtk_reserved204: proc (){.cdecl.} + + PGtkVBox* = ptr TGtkVBox + TGtkVBox* = object of TGtkBox + + PGtkVBoxClass* = ptr TGtkVBoxClass + TGtkVBoxClass* = object of TGtkBoxClass + + TGtkColorSelectionChangePaletteFunc* = proc (colors: PGdkColor, n_colors: gint){. + cdecl.} + TGtkColorSelectionChangePaletteWithScreenFunc* = proc (screen: PGdkScreen, + colors: PGdkColor, n_colors: gint){.cdecl.} + PGtkColorSelection* = ptr TGtkColorSelection + TGtkColorSelection* = object of TGtkVBox + private_data*: gpointer + + PGtkColorSelectionClass* = ptr TGtkColorSelectionClass + TGtkColorSelectionClass* = object of TGtkVBoxClass + color_changed*: proc (color_selection: PGtkColorSelection){.cdecl.} + gtk_reserved211: proc (){.cdecl.} + gtk_reserved212: proc (){.cdecl.} + gtk_reserved213: proc (){.cdecl.} + gtk_reserved214: proc (){.cdecl.} + + PGtkColorSelectionDialog* = ptr TGtkColorSelectionDialog + TGtkColorSelectionDialog* = object of TGtkDialog + colorsel*: PGtkWidget + ok_button*: PGtkWidget + cancel_button*: PGtkWidget + help_button*: PGtkWidget + + PGtkColorSelectionDialogClass* = ptr TGtkColorSelectionDialogClass + TGtkColorSelectionDialogClass* = object of TGtkDialogClass + gtk_reserved221: proc (){.cdecl.} + gtk_reserved222: proc (){.cdecl.} + gtk_reserved223: proc (){.cdecl.} + gtk_reserved224: proc (){.cdecl.} + + PGtkHBox* = ptr TGtkHBox + TGtkHBox* = object of TGtkBox + + PGtkHBoxClass* = ptr TGtkHBoxClass + TGtkHBoxClass* = object of TGtkBoxClass + + PGtkCombo* = ptr TGtkCombo + TGtkCombo* = object of TGtkHBox + entry*: PGtkWidget + button*: PGtkWidget + popup*: PGtkWidget + popwin*: PGtkWidget + list*: PGtkWidget + entry_change_id*: guint + list_change_id*: guint + GtkCombo_flag0*: guint16 + current_button*: guint16 + activate_id*: guint + + PGtkComboClass* = ptr TGtkComboClass + TGtkComboClass* = object of TGtkHBoxClass + gtk_reserved231: proc (){.cdecl.} + gtk_reserved232: proc (){.cdecl.} + gtk_reserved233: proc (){.cdecl.} + gtk_reserved234: proc (){.cdecl.} + + PGtkCTreePos* = ptr TGtkCTreePos + TGtkCTreePos* = enum + GTK_CTREE_POS_BEFORE, GTK_CTREE_POS_AS_CHILD, GTK_CTREE_POS_AFTER + PGtkCTreeLineStyle* = ptr TGtkCTreeLineStyle + TGtkCTreeLineStyle* = enum + GTK_CTREE_LINES_NONE, GTK_CTREE_LINES_SOLID, GTK_CTREE_LINES_DOTTED, + GTK_CTREE_LINES_TABBED + PGtkCTreeExpanderStyle* = ptr TGtkCTreeExpanderStyle + TGtkCTreeExpanderStyle* = enum + GTK_CTREE_EXPANDER_NONE, GTK_CTREE_EXPANDER_SQUARE, + GTK_CTREE_EXPANDER_TRIANGLE, GTK_CTREE_EXPANDER_CIRCULAR + PGtkCTreeExpansionType* = ptr TGtkCTreeExpansionType + TGtkCTreeExpansionType* = enum + GTK_CTREE_EXPANSION_EXPAND, GTK_CTREE_EXPANSION_EXPAND_RECURSIVE, + GTK_CTREE_EXPANSION_COLLAPSE, GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE, + GTK_CTREE_EXPANSION_TOGGLE, GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE + PGtkCTree* = ptr TGtkCTree + PGtkCTreeNode* = ptr TGtkCTreeNode + TGtkCTreeFunc* = proc (ctree: PGtkCTree, node: PGtkCTreeNode, data: gpointer){. + cdecl.} + TGtkCTreeGNodeFunc* = proc (ctree: PGtkCTree, depth: guint, gnode: PGNode, + cnode: PGtkCTreeNode, data: gpointer): gboolean{. + cdecl.} + TGtkCTreeCompareDragFunc* = proc (ctree: PGtkCTree, + source_node: PGtkCTreeNode, + new_parent: PGtkCTreeNode, + new_sibling: PGtkCTreeNode): gboolean{.cdecl.} + TGtkCTree* = object of TGtkCList + lines_gc*: PGdkGC + tree_indent*: gint + tree_spacing*: gint + tree_column*: gint + GtkCTree_flag0*: guint16 + drag_compare*: TGtkCTreeCompareDragFunc + + PGtkCTreeClass* = ptr TGtkCTreeClass + TGtkCTreeClass* = object of TGtkCListClass + tree_select_row*: proc (ctree: PGtkCTree, row: PGtkCTreeNode, column: gint){. + cdecl.} + tree_unselect_row*: proc (ctree: PGtkCTree, row: PGtkCTreeNode, column: gint){. + cdecl.} + tree_expand*: proc (ctree: PGtkCTree, node: PGtkCTreeNode){.cdecl.} + tree_collapse*: proc (ctree: PGtkCTree, node: PGtkCTreeNode){.cdecl.} + tree_move*: proc (ctree: PGtkCTree, node: PGtkCTreeNode, + new_parent: PGtkCTreeNode, new_sibling: PGtkCTreeNode){. + cdecl.} + change_focus_row_expansion*: proc (ctree: PGtkCTree, + action: TGtkCTreeExpansionType){.cdecl.} + + PGtkCTreeRow* = ptr TGtkCTreeRow + TGtkCTreeRow* = record + row*: TGtkCListRow + parent*: PGtkCTreeNode + sibling*: PGtkCTreeNode + children*: PGtkCTreeNode + pixmap_closed*: PGdkPixmap + mask_closed*: PGdkBitmap + pixmap_opened*: PGdkPixmap + mask_opened*: PGdkBitmap + level*: guint16 + GtkCTreeRow_flag0*: guint16 + + TGtkCTreeNode* = record + list*: TGList + + PGtkDrawingArea* = ptr TGtkDrawingArea + TGtkDrawingArea* = object of TGtkWidget + draw_data*: gpointer + + PGtkDrawingAreaClass* = ptr TGtkDrawingAreaClass + TGtkDrawingAreaClass* = object of TGtkWidgetClass + gtk_reserved241: proc (){.cdecl.} + gtk_reserved242: proc (){.cdecl.} + gtk_reserved243: proc (){.cdecl.} + gtk_reserved244: proc (){.cdecl.} + + Tctlpoint* = array[0..1, gfloat] + Pctlpoint* = ptr Tctlpoint + PGtkCurve* = ptr TGtkCurve + TGtkCurve* = object of TGtkDrawingArea + cursor_type*: gint + min_x*: gfloat + max_x*: gfloat + min_y*: gfloat + max_y*: gfloat + pixmap*: PGdkPixmap + curve_type*: TGtkCurveType + height*: gint + grab_point*: gint + last*: gint + num_points*: gint + point*: PGdkPoint + num_ctlpoints*: gint + ctlpoint*: Pctlpoint + + PGtkCurveClass* = ptr TGtkCurveClass + TGtkCurveClass* = object of TGtkDrawingAreaClass + curve_type_changed*: proc (curve: PGtkCurve){.cdecl.} + gtk_reserved251: proc (){.cdecl.} + gtk_reserved252: proc (){.cdecl.} + gtk_reserved253: proc (){.cdecl.} + gtk_reserved254: proc (){.cdecl.} + + PGtkDestDefaults* = ptr TGtkDestDefaults + TGtkDestDefaults* = int32 + PGtkTargetFlags* = ptr TGtkTargetFlags + TGtkTargetFlags* = int32 + PGtkEditable* = pointer + PGtkEditableClass* = ptr TGtkEditableClass + TGtkEditableClass* = object of TGTypeInterface + insert_text*: proc (editable: PGtkEditable, text: cstring, length: gint, + position: Pgint){.cdecl.} + delete_text*: proc (editable: PGtkEditable, start_pos: gint, end_pos: gint){. + cdecl.} + changed*: proc (editable: PGtkEditable){.cdecl.} + do_insert_text*: proc (editable: PGtkEditable, text: cstring, length: gint, + position: Pgint){.cdecl.} + do_delete_text*: proc (editable: PGtkEditable, start_pos: gint, + end_pos: gint){.cdecl.} + get_chars*: proc (editable: PGtkEditable, start_pos: gint, end_pos: gint): cstring{. + cdecl.} + set_selection_bounds*: proc (editable: PGtkEditable, start_pos: gint, + end_pos: gint){.cdecl.} + get_selection_bounds*: proc (editable: PGtkEditable, start_pos: Pgint, + end_pos: Pgint): gboolean{.cdecl.} + set_position*: proc (editable: PGtkEditable, position: gint){.cdecl.} + get_position*: proc (editable: PGtkEditable): gint{.cdecl.} + + PGtkIMContext* = ptr TGtkIMContext + TGtkIMContext* = object of TGObject + + PGtkIMContextClass* = ptr TGtkIMContextClass + TGtkIMContextClass* = object of TGtkObjectClass + preedit_start*: proc (context: PGtkIMContext){.cdecl.} + preedit_end*: proc (context: PGtkIMContext){.cdecl.} + preedit_changed*: proc (context: PGtkIMContext){.cdecl.} + commit*: proc (context: PGtkIMContext, str: cstring){.cdecl.} + retrieve_surrounding*: proc (context: PGtkIMContext): gboolean{.cdecl.} + delete_surrounding*: proc (context: PGtkIMContext, offset: gint, + n_chars: gint): gboolean{.cdecl.} + set_client_window*: proc (context: PGtkIMContext, window: PGdkWindow){.cdecl.} + get_preedit_string*: proc (context: PGtkIMContext, str: PPgchar, + attrs: var PPangoAttrList, cursor_pos: Pgint){. + cdecl.} + filter_keypress*: proc (context: PGtkIMContext, event: PGdkEventKey): gboolean{. + cdecl.} + focus_in*: proc (context: PGtkIMContext){.cdecl.} + focus_out*: proc (context: PGtkIMContext){.cdecl.} + reset*: proc (context: PGtkIMContext){.cdecl.} + set_cursor_location*: proc (context: PGtkIMContext, area: PGdkRectangle){. + cdecl.} + set_use_preedit*: proc (context: PGtkIMContext, use_preedit: gboolean){. + cdecl.} + set_surrounding*: proc (context: PGtkIMContext, text: cstring, len: gint, + cursor_index: gint){.cdecl.} + get_surrounding*: proc (context: PGtkIMContext, text: PPgchar, + cursor_index: Pgint): gboolean{.cdecl.} + gtk_reserved261: proc (){.cdecl.} + gtk_reserved262: proc (){.cdecl.} + gtk_reserved263: proc (){.cdecl.} + gtk_reserved264: proc (){.cdecl.} + gtk_reserved265: proc (){.cdecl.} + gtk_reserved266: proc (){.cdecl.} + + PGtkMenuShell* = ptr TGtkMenuShell + TGtkMenuShell* = object of TGtkContainer + children*: PGList + active_menu_item*: PGtkWidget + parent_menu_shell*: PGtkWidget + button*: guint + activate_time*: guint32 + GtkMenuShell_flag0*: guint16 + + PGtkMenuShellClass* = ptr TGtkMenuShellClass + TGtkMenuShellClass* = object of TGtkContainerClass + GtkMenuShellClass_flag0*: guint16 + deactivate*: proc (menu_shell: PGtkMenuShell){.cdecl.} + selection_done*: proc (menu_shell: PGtkMenuShell){.cdecl.} + move_current*: proc (menu_shell: PGtkMenuShell, + direction: TGtkMenuDirectionType){.cdecl.} + activate_current*: proc (menu_shell: PGtkMenuShell, force_hide: gboolean){. + cdecl.} + cancel*: proc (menu_shell: PGtkMenuShell){.cdecl.} + select_item*: proc (menu_shell: PGtkMenuShell, menu_item: PGtkWidget){.cdecl.} + insert*: proc (menu_shell: PGtkMenuShell, child: PGtkWidget, position: gint){. + cdecl.} + gtk_reserved271: proc (){.cdecl.} + gtk_reserved272: proc (){.cdecl.} + gtk_reserved273: proc (){.cdecl.} + gtk_reserved274: proc (){.cdecl.} + + TGtkMenuPositionFunc* = proc (menu: PGtkMenu, x: Pgint, y: Pgint, + push_in: Pgboolean, user_data: gpointer){.cdecl.} + TGtkMenuDetachFunc* = proc (attach_widget: PGtkWidget, menu: PGtkMenu){.cdecl.} + TGtkMenu* = object of TGtkMenuShell + parent_menu_item*: PGtkWidget + old_active_menu_item*: PGtkWidget + accel_group*: PGtkAccelGroup + accel_path*: cstring + position_func*: TGtkMenuPositionFunc + position_func_data*: gpointer + toggle_size*: guint + toplevel*: PGtkWidget + tearoff_window*: PGtkWidget + tearoff_hbox*: PGtkWidget + tearoff_scrollbar*: PGtkWidget + tearoff_adjustment*: PGtkAdjustment + view_window*: PGdkWindow + bin_window*: PGdkWindow + scroll_offset*: gint + saved_scroll_offset*: gint + scroll_step*: gint + timeout_id*: guint + navigation_region*: PGdkRegion + navigation_timeout*: guint + GtkMenu_flag0*: guint16 + + PGtkMenuClass* = ptr TGtkMenuClass + TGtkMenuClass* = object of TGtkMenuShellClass + gtk_reserved281: proc (){.cdecl.} + gtk_reserved282: proc (){.cdecl.} + gtk_reserved283: proc (){.cdecl.} + gtk_reserved284: proc (){.cdecl.} + + PGtkEntry* = ptr TGtkEntry + TGtkEntry* = object of TGtkWidget + text*: cstring + GtkEntry_flag0*: guint16 + text_length*: guint16 + text_max_length*: guint16 + text_area*: PGdkWindow + im_context*: PGtkIMContext + popup_menu*: PGtkWidget + current_pos*: gint + selection_bound*: gint + cached_layout*: PPangoLayout + flag1*: guint16 + button*: guint + blink_timeout*: guint + recompute_idle*: guint + scroll_offset*: gint + ascent*: gint + descent*: gint + text_size*: guint16 + n_bytes*: guint16 + preedit_length*: guint16 + preedit_cursor*: guint16 + dnd_position*: gint + drag_start_x*: gint + drag_start_y*: gint + invisible_char*: gunichar + width_chars*: gint + + PGtkEntryClass* = ptr TGtkEntryClass + TGtkEntryClass* = object of TGtkWidgetClass + populate_popup*: proc (entry: PGtkEntry, menu: PGtkMenu){.cdecl.} + activate*: proc (entry: PGtkEntry){.cdecl.} + move_cursor*: proc (entry: PGtkEntry, step: TGtkMovementStep, count: gint, + extend_selection: gboolean){.cdecl.} + insert_at_cursor*: proc (entry: PGtkEntry, str: cstring){.cdecl.} + delete_from_cursor*: proc (entry: PGtkEntry, thetype: TGtkDeleteType, + count: gint){.cdecl.} + cut_clipboard*: proc (entry: PGtkEntry){.cdecl.} + copy_clipboard*: proc (entry: PGtkEntry){.cdecl.} + paste_clipboard*: proc (entry: PGtkEntry){.cdecl.} + toggle_overwrite*: proc (entry: PGtkEntry){.cdecl.} + gtk_reserved291: proc (){.cdecl.} + gtk_reserved292: proc (){.cdecl.} + gtk_reserved293: proc (){.cdecl.} + gtk_reserved294: proc (){.cdecl.} + + PGtkEventBox* = ptr TGtkEventBox + TGtkEventBox* = object of TGtkBin + + PGtkEventBoxClass* = ptr TGtkEventBoxClass + TGtkEventBoxClass* = object of TGtkBinClass + + PGtkFileSelection* = ptr TGtkFileSelection + TGtkFileSelection* = object of TGtkDialog + dir_list*: PGtkWidget + file_list*: PGtkWidget + selection_entry*: PGtkWidget + selection_text*: PGtkWidget + main_vbox*: PGtkWidget + ok_button*: PGtkWidget + cancel_button*: PGtkWidget + help_button*: PGtkWidget + history_pulldown*: PGtkWidget + history_menu*: PGtkWidget + history_list*: PGList + fileop_dialog*: PGtkWidget + fileop_entry*: PGtkWidget + fileop_file*: cstring + cmpl_state*: gpointer + fileop_c_dir*: PGtkWidget + fileop_del_file*: PGtkWidget + fileop_ren_file*: PGtkWidget + button_area*: PGtkWidget + gtkFileSelection_action_area*: PGtkWidget + selected_names*: PGPtrArray + last_selected*: cstring + + PGtkFileSelectionClass* = ptr TGtkFileSelectionClass + TGtkFileSelectionClass* = object of TGtkDialogClass + gtk_reserved301: proc (){.cdecl.} + gtk_reserved302: proc (){.cdecl.} + gtk_reserved303: proc (){.cdecl.} + gtk_reserved304: proc (){.cdecl.} + + PGtkFixed* = ptr TGtkFixed + TGtkFixed* = object of TGtkContainer + children*: PGList + + PGtkFixedClass* = ptr TGtkFixedClass + TGtkFixedClass* = object of TGtkContainerClass + + PGtkFixedChild* = ptr TGtkFixedChild + TGtkFixedChild* = record + widget*: PGtkWidget + x*: gint + y*: gint + + PGtkFontSelection* = ptr TGtkFontSelection + TGtkFontSelection* = object of TGtkVBox + font_entry*: PGtkWidget + family_list*: PGtkWidget + font_style_entry*: PGtkWidget + face_list*: PGtkWidget + size_entry*: PGtkWidget + size_list*: PGtkWidget + pixels_button*: PGtkWidget + points_button*: PGtkWidget + filter_button*: PGtkWidget + preview_entry*: PGtkWidget + family*: PPangoFontFamily + face*: PPangoFontFace + size*: gint + font*: PGdkFont + + PGtkFontSelectionClass* = ptr TGtkFontSelectionClass + TGtkFontSelectionClass* = object of TGtkVBoxClass + gtk_reserved311: proc (){.cdecl.} + gtk_reserved312: proc (){.cdecl.} + gtk_reserved313: proc (){.cdecl.} + gtk_reserved314: proc (){.cdecl.} + + PGtkFontSelectionDialog* = ptr TGtkFontSelectionDialog + TGtkFontSelectionDialog* = object of TGtkDialog + fontsel*: PGtkWidget + main_vbox*: PGtkWidget + GtkFontSelectionDialog_action_area*: PGtkWidget + ok_button*: PGtkWidget + apply_button*: PGtkWidget + cancel_button*: PGtkWidget + dialog_width*: gint + auto_resize*: gboolean + + PGtkFontSelectionDialogClass* = ptr TGtkFontSelectionDialogClass + TGtkFontSelectionDialogClass* = object of TGtkDialogClass + gtk_reserved321: proc (){.cdecl.} + gtk_reserved322: proc (){.cdecl.} + gtk_reserved323: proc (){.cdecl.} + gtk_reserved324: proc (){.cdecl.} + + PGtkGammaCurve* = ptr TGtkGammaCurve + TGtkGammaCurve* = object of TGtkVBox + table*: PGtkWidget + curve*: PGtkWidget + button*: array[0..4, PGtkWidget] + gamma*: gfloat + gamma_dialog*: PGtkWidget + gamma_text*: PGtkWidget + + PGtkGammaCurveClass* = ptr TGtkGammaCurveClass + TGtkGammaCurveClass* = object of TGtkVBoxClass + gtk_reserved331: proc (){.cdecl.} + gtk_reserved332: proc (){.cdecl.} + gtk_reserved333: proc (){.cdecl.} + gtk_reserved334: proc (){.cdecl.} + + PGtkHandleBox* = ptr TGtkHandleBox + TGtkHandleBox* = object of TGtkBin + bin_window*: PGdkWindow + float_window*: PGdkWindow + shadow_type*: TGtkShadowType + GtkHandleBox_flag0*: guint16 + deskoff_x*: gint + deskoff_y*: gint + attach_allocation*: TGtkAllocation + float_allocation*: TGtkAllocation + + PGtkHandleBoxClass* = ptr TGtkHandleBoxClass + TGtkHandleBoxClass* = object of TGtkBinClass + child_attached*: proc (handle_box: PGtkHandleBox, child: PGtkWidget){.cdecl.} + child_detached*: proc (handle_box: PGtkHandleBox, child: PGtkWidget){.cdecl.} + gtk_reserved341: proc (){.cdecl.} + gtk_reserved342: proc (){.cdecl.} + gtk_reserved343: proc (){.cdecl.} + gtk_reserved344: proc (){.cdecl.} + + PGtkPaned* = ptr TGtkPaned + TGtkPaned* = object of TGtkContainer + child1*: PGtkWidget + child2*: PGtkWidget + handle*: PGdkWindow + xor_gc*: PGdkGC + cursor_type*: TGdkCursorType + handle_pos*: TGdkRectangle + child1_size*: gint + last_allocation*: gint + min_position*: gint + max_position*: gint + GtkPaned_flag0*: guint16 + last_child1_focus*: PGtkWidget + last_child2_focus*: PGtkWidget + saved_focus*: PGtkWidget + drag_pos*: gint + original_position*: gint + + PGtkPanedClass* = ptr TGtkPanedClass + TGtkPanedClass* = object of TGtkContainerClass + cycle_child_focus*: proc (paned: PGtkPaned, reverse: gboolean): gboolean{. + cdecl.} + toggle_handle_focus*: proc (paned: PGtkPaned): gboolean{.cdecl.} + move_handle*: proc (paned: PGtkPaned, scroll: TGtkScrollType): gboolean{. + cdecl.} + cycle_handle_focus*: proc (paned: PGtkPaned, reverse: gboolean): gboolean{. + cdecl.} + accept_position*: proc (paned: PGtkPaned): gboolean{.cdecl.} + cancel_position*: proc (paned: PGtkPaned): gboolean{.cdecl.} + gtk_reserved351: proc (){.cdecl.} + gtk_reserved352: proc (){.cdecl.} + gtk_reserved353: proc (){.cdecl.} + gtk_reserved354: proc (){.cdecl.} + + PGtkHButtonBox* = ptr TGtkHButtonBox + TGtkHButtonBox* = object of TGtkButtonBox + + PGtkHButtonBoxClass* = ptr TGtkHButtonBoxClass + TGtkHButtonBoxClass* = object of TGtkButtonBoxClass + + PGtkHPaned* = ptr TGtkHPaned + TGtkHPaned* = object of TGtkPaned + + PGtkHPanedClass* = ptr TGtkHPanedClass + TGtkHPanedClass* = object of TGtkPanedClass + + PGtkRulerMetric* = ptr TGtkRulerMetric + PGtkRuler* = ptr TGtkRuler + TGtkRuler* = object of TGtkWidget + backing_store*: PGdkPixmap + non_gr_exp_gc*: PGdkGC + metric*: PGtkRulerMetric + xsrc*: gint + ysrc*: gint + slider_size*: gint + lower*: gdouble + upper*: gdouble + position*: gdouble + max_size*: gdouble + + PGtkRulerClass* = ptr TGtkRulerClass + TGtkRulerClass* = object of TGtkWidgetClass + draw_ticks*: proc (ruler: PGtkRuler){.cdecl.} + draw_pos*: proc (ruler: PGtkRuler){.cdecl.} + gtk_reserved361: proc (){.cdecl.} + gtk_reserved362: proc (){.cdecl.} + gtk_reserved363: proc (){.cdecl.} + gtk_reserved364: proc (){.cdecl.} + + TGtkRulerMetric* = record + metric_name*: cstring + abbrev*: cstring + pixels_per_unit*: gdouble + ruler_scale*: array[0..9, gdouble] + subdivide*: array[0..4, gint] + + PGtkHRuler* = ptr TGtkHRuler + TGtkHRuler* = object of TGtkRuler + + PGtkHRulerClass* = ptr TGtkHRulerClass + TGtkHRulerClass* = object of TGtkRulerClass + + PGtkRcContext* = pointer + PGtkSettings* = ptr TGtkSettings + TGtkSettings* = object of TGObject + queued_settings*: PGData + property_values*: PGValue + rc_context*: PGtkRcContext + screen*: PGdkScreen + + PGtkSettingsClass* = ptr TGtkSettingsClass + TGtkSettingsClass* = object of TGObjectClass + + PGtkSettingsValue* = ptr TGtkSettingsValue + TGtkSettingsValue* = record + origin*: cstring + value*: TGValue + + PGtkRcFlags* = ptr TGtkRcFlags + TGtkRcFlags* = int32 + PGtkRcStyle* = ptr TGtkRcStyle + TGtkRcStyle* = object of TGObject + name*: cstring + bg_pixmap_name*: array[0..4, cstring] + font_desc*: PPangoFontDescription + color_flags*: array[0..4, TGtkRcFlags] + fg*: array[0..4, TGdkColor] + bg*: array[0..4, TGdkColor] + text*: array[0..4, TGdkColor] + base*: array[0..4, TGdkColor] + xthickness*: gint + ythickness*: gint + rc_properties*: PGArray + rc_style_lists*: PGSList + icon_factories*: PGSList + GtkRcStyle_flag0*: guint16 + + PGtkRcStyleClass* = ptr TGtkRcStyleClass + TGtkRcStyleClass* = object of TGObjectClass + create_rc_style*: proc (rc_style: PGtkRcStyle): PGtkRcStyle{.cdecl.} + parse*: proc (rc_style: PGtkRcStyle, settings: PGtkSettings, + scanner: PGScanner): guint{.cdecl.} + merge*: proc (dest: PGtkRcStyle, src: PGtkRcStyle){.cdecl.} + create_style*: proc (rc_style: PGtkRcStyle): PGtkStyle{.cdecl.} + gtk_reserved371: proc (){.cdecl.} + gtk_reserved372: proc (){.cdecl.} + gtk_reserved373: proc (){.cdecl.} + gtk_reserved374: proc (){.cdecl.} + + PGtkRcTokenType* = ptr TGtkRcTokenType + TGtkRcTokenType* = enum + GTK_RC_TOKEN_INVALID, GTK_RC_TOKEN_INCLUDE, GTK_RC_TOKEN_NORMAL, + GTK_RC_TOKEN_ACTIVE, GTK_RC_TOKEN_PRELIGHT, GTK_RC_TOKEN_SELECTED, + GTK_RC_TOKEN_INSENSITIVE, GTK_RC_TOKEN_FG, GTK_RC_TOKEN_BG, + GTK_RC_TOKEN_TEXT, GTK_RC_TOKEN_BASE, GTK_RC_TOKEN_XTHICKNESS, + GTK_RC_TOKEN_YTHICKNESS, GTK_RC_TOKEN_FONT, GTK_RC_TOKEN_FONTSET, + GTK_RC_TOKEN_FONT_NAME, GTK_RC_TOKEN_BG_PIXMAP, GTK_RC_TOKEN_PIXMAP_PATH, + GTK_RC_TOKEN_STYLE, GTK_RC_TOKEN_BINDING, GTK_RC_TOKEN_BIND, + GTK_RC_TOKEN_WIDGET, GTK_RC_TOKEN_WIDGET_CLASS, GTK_RC_TOKEN_CLASS, + GTK_RC_TOKEN_LOWEST, GTK_RC_TOKEN_GTK, GTK_RC_TOKEN_APPLICATION, + GTK_RC_TOKEN_THEME, GTK_RC_TOKEN_RC, GTK_RC_TOKEN_HIGHEST, + GTK_RC_TOKEN_ENGINE, GTK_RC_TOKEN_MODULE_PATH, GTK_RC_TOKEN_IM_MODULE_PATH, + GTK_RC_TOKEN_IM_MODULE_FILE, GTK_RC_TOKEN_STOCK, GTK_RC_TOKEN_LTR, + GTK_RC_TOKEN_RTL, GTK_RC_TOKEN_LAST + PGtkRcProperty* = ptr TGtkRcProperty + TGtkRcProperty* = record + type_name*: TGQuark + property_name*: TGQuark + origin*: cstring + value*: TGValue + + PGtkIconSource* = pointer + TGtkRcPropertyParser* = proc (pspec: PGParamSpec, rc_string: PGString, + property_value: PGValue): gboolean{.cdecl.} + TGtkStyle* = object of TGObject + fg*: array[0..4, TGdkColor] + bg*: array[0..4, TGdkColor] + light*: array[0..4, TGdkColor] + dark*: array[0..4, TGdkColor] + mid*: array[0..4, TGdkColor] + text*: array[0..4, TGdkColor] + base*: array[0..4, TGdkColor] + text_aa*: array[0..4, TGdkColor] + black*: TGdkColor + white*: TGdkColor + font_desc*: PPangoFontDescription + xthickness*: gint + ythickness*: gint + fg_gc*: array[0..4, PGdkGC] + bg_gc*: array[0..4, PGdkGC] + light_gc*: array[0..4, PGdkGC] + dark_gc*: array[0..4, PGdkGC] + mid_gc*: array[0..4, PGdkGC] + text_gc*: array[0..4, PGdkGC] + base_gc*: array[0..4, PGdkGC] + text_aa_gc*: array[0..4, PGdkGC] + black_gc*: PGdkGC + white_gc*: PGdkGC + bg_pixmap*: array[0..4, PGdkPixmap] + attach_count*: gint + depth*: gint + colormap*: PGdkColormap + private_font*: PGdkFont + private_font_desc*: PPangoFontDescription + rc_style*: PGtkRcStyle + styles*: PGSList + property_cache*: PGArray + icon_factories*: PGSList + + PGtkStyleClass* = ptr TGtkStyleClass + TGtkStyleClass* = object of TGObjectClass + realize*: proc (style: PGtkStyle){.cdecl.} + unrealize*: proc (style: PGtkStyle){.cdecl.} + copy*: proc (style: PGtkStyle, src: PGtkStyle){.cdecl.} + clone*: proc (style: PGtkStyle): PGtkStyle{.cdecl.} + init_from_rc*: proc (style: PGtkStyle, rc_style: PGtkRcStyle){.cdecl.} + set_background*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType){.cdecl.} + render_icon*: proc (style: PGtkStyle, source: PGtkIconSource, + direction: TGtkTextDirection, state: TGtkStateType, + size: TGtkIconSize, widget: PGtkWidget, detail: cstring): PGdkPixbuf{. + cdecl.} + draw_hline*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x1: gint, x2: gint, + y: gint){.cdecl.} + draw_vline*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, y1: gint, y2: gint, + x: gint){.cdecl.} + draw_shadow*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl.} + draw_polygon*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, + detail: cstring, point: PGdkPoint, npoints: gint, + fill: gboolean){.cdecl.} + draw_arrow*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + arrow_type: TGtkArrowType, fill: gboolean, x: gint, + y: gint, width: gint, height: gint){.cdecl.} + draw_diamond*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, + detail: cstring, x: gint, y: gint, width: gint, + height: gint){.cdecl.} + draw_string*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + `string`: cstring){.cdecl.} + draw_box*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl.} + draw_flat_box*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, + shadow_type: TGtkShadowType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + width: gint, height: gint){.cdecl.} + draw_check*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl.} + draw_option*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl.} + draw_tab*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl.} + draw_shadow_gap*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, + shadow_type: TGtkShadowType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, + y: gint, width: gint, height: gint, + gap_side: TGtkPositionType, gap_x: gint, + gap_width: gint){.cdecl.} + draw_box_gap*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, + detail: cstring, x: gint, y: gint, width: gint, + height: gint, gap_side: TGtkPositionType, gap_x: gint, + gap_width: gint){.cdecl.} + draw_extension*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, + shadow_type: TGtkShadowType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + width: gint, height: gint, gap_side: TGtkPositionType){. + cdecl.} + draw_focus*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + width: gint, height: gint){.cdecl.} + draw_slider*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint, + orientation: TGtkOrientation){.cdecl.} + draw_handle*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint, + orientation: TGtkOrientation){.cdecl.} + draw_expander*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + expander_style: TGtkExpanderStyle){.cdecl.} + draw_layout*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, use_text: gboolean, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, layout: PPangoLayout){.cdecl.} + draw_resize_grip*: proc (style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, + edge: TGdkWindowEdge, x: gint, y: gint, + width: gint, height: gint){.cdecl.} + gtk_reserved381: proc (){.cdecl.} + gtk_reserved382: proc (){.cdecl.} + gtk_reserved383: proc (){.cdecl.} + gtk_reserved384: proc (){.cdecl.} + gtk_reserved385: proc (){.cdecl.} + gtk_reserved386: proc (){.cdecl.} + gtk_reserved387: proc (){.cdecl.} + gtk_reserved388: proc (){.cdecl.} + gtk_reserved389: proc (){.cdecl.} + gtk_reserved3810: proc (){.cdecl.} + gtk_reserved3811: proc (){.cdecl.} + gtk_reserved3812: proc (){.cdecl.} + + PGtkBorder* = ptr TGtkBorder + TGtkBorder* = record + left*: gint + right*: gint + top*: gint + bottom*: gint + + PGtkRangeLayout* = pointer + PGtkRangeStepTimer* = pointer + PGtkRange* = ptr TGtkRange + TGtkRange* = object of TGtkWidget + adjustment*: PGtkAdjustment + update_policy*: TGtkUpdateType + GtkRange_flag0*: guint16 + min_slider_size*: gint + orientation*: TGtkOrientation + range_rect*: TGdkRectangle + slider_start*: gint + slider_end*: gint + round_digits*: gint + flag1*: guint16 + layout*: PGtkRangeLayout + timer*: PGtkRangeStepTimer + slide_initial_slider_position*: gint + slide_initial_coordinate*: gint + update_timeout_id*: guint + event_window*: PGdkWindow + + PGtkRangeClass* = ptr TGtkRangeClass + TGtkRangeClass* = object of TGtkWidgetClass + slider_detail*: cstring + stepper_detail*: cstring + value_changed*: proc (range: PGtkRange){.cdecl.} + adjust_bounds*: proc (range: PGtkRange, new_value: gdouble){.cdecl.} + move_slider*: proc (range: PGtkRange, scroll: TGtkScrollType){.cdecl.} + get_range_border*: proc (range: PGtkRange, border: PGtkBorder){.cdecl.} + gtk_reserved401: proc (){.cdecl.} + gtk_reserved402: proc (){.cdecl.} + gtk_reserved403: proc (){.cdecl.} + gtk_reserved404: proc (){.cdecl.} + + PGtkScale* = ptr TGtkScale + TGtkScale* = object of TGtkRange + digits*: gint + GtkScale_flag0*: guint16 + + PGtkScaleClass* = ptr TGtkScaleClass + TGtkScaleClass* = object of TGtkRangeClass + format_value*: proc (scale: PGtkScale, value: gdouble): cstring{.cdecl.} + draw_value*: proc (scale: PGtkScale){.cdecl.} + gtk_reserved411: proc (){.cdecl.} + gtk_reserved412: proc (){.cdecl.} + gtk_reserved413: proc (){.cdecl.} + gtk_reserved414: proc (){.cdecl.} + + PGtkHScale* = ptr TGtkHScale + TGtkHScale* = object of TGtkScale + + PGtkHScaleClass* = ptr TGtkHScaleClass + TGtkHScaleClass* = object of TGtkScaleClass + + PGtkScrollbar* = ptr TGtkScrollbar + TGtkScrollbar* = object of TGtkRange + + PGtkScrollbarClass* = ptr TGtkScrollbarClass + TGtkScrollbarClass* = object of TGtkRangeClass + gtk_reserved421: proc (){.cdecl.} + gtk_reserved422: proc (){.cdecl.} + gtk_reserved423: proc (){.cdecl.} + gtk_reserved424: proc (){.cdecl.} + + PGtkHScrollbar* = ptr TGtkHScrollbar + TGtkHScrollbar* = object of TGtkScrollbar + + PGtkHScrollbarClass* = ptr TGtkHScrollbarClass + TGtkHScrollbarClass* = object of TGtkScrollbarClass + + PGtkSeparator* = ptr TGtkSeparator + TGtkSeparator* = object of TGtkWidget + + PGtkSeparatorClass* = ptr TGtkSeparatorClass + TGtkSeparatorClass* = object of TGtkWidgetClass + + PGtkHSeparator* = ptr TGtkHSeparator + TGtkHSeparator* = object of TGtkSeparator + + PGtkHSeparatorClass* = ptr TGtkHSeparatorClass + TGtkHSeparatorClass* = object of TGtkSeparatorClass + + PGtkIconFactory* = ptr TGtkIconFactory + TGtkIconFactory* = object of TGObject + icons*: PGHashTable + + PGtkIconFactoryClass* = ptr TGtkIconFactoryClass + TGtkIconFactoryClass* = object of TGObjectClass + gtk_reserved431: proc (){.cdecl.} + gtk_reserved432: proc (){.cdecl.} + gtk_reserved433: proc (){.cdecl.} + gtk_reserved434: proc (){.cdecl.} + + PGtkIconSet* = pointer + PGtkImagePixmapData* = ptr TGtkImagePixmapData + TGtkImagePixmapData* = record + pixmap*: PGdkPixmap + + PGtkImageImageData* = ptr TGtkImageImageData + TGtkImageImageData* = record + image*: PGdkImage + + PGtkImagePixbufData* = ptr TGtkImagePixbufData + TGtkImagePixbufData* = record + pixbuf*: PGdkPixbuf + + PGtkImageStockData* = ptr TGtkImageStockData + TGtkImageStockData* = record + stock_id*: cstring + + PGtkImageIconSetData* = ptr TGtkImageIconSetData + TGtkImageIconSetData* = record + icon_set*: PGtkIconSet + + PGtkImageAnimationData* = ptr TGtkImageAnimationData + TGtkImageAnimationData* = record + anim*: PGdkPixbufAnimation + iter*: PGdkPixbufAnimationIter + frame_timeout*: guint + + PGtkImageType* = ptr TGtkImageType + TGtkImageType* = enum + GTK_IMAGE_EMPTY, GTK_IMAGE_PIXMAP, GTK_IMAGE_IMAGE, GTK_IMAGE_PIXBUF, + GTK_IMAGE_STOCK, GTK_IMAGE_ICON_SET, GTK_IMAGE_ANIMATION + PGtkImage* = ptr TGtkImage + TGtkImage* = object of TGtkMisc + storage_type*: TGtkImageType + pixmap*: TGtkImagePixmapData + mask*: PGdkBitmap + icon_size*: TGtkIconSize + + PGtkImageClass* = ptr TGtkImageClass + TGtkImageClass* = object of TGtkMiscClass + gtk_reserved441: proc (){.cdecl.} + gtk_reserved442: proc (){.cdecl.} + gtk_reserved443: proc (){.cdecl.} + gtk_reserved444: proc (){.cdecl.} + + PGtkImageMenuItem* = ptr TGtkImageMenuItem + TGtkImageMenuItem* = object of TGtkMenuItem + image*: PGtkWidget + + PGtkImageMenuItemClass* = ptr TGtkImageMenuItemClass + TGtkImageMenuItemClass* = object of TGtkMenuItemClass + + PGtkIMContextSimple* = ptr TGtkIMContextSimple + TGtkIMContextSimple* = object of TGtkIMContext + tables*: PGSList + compose_buffer*: array[0..(GTK_MAX_COMPOSE_LEN + 1) - 1, guint] + tentative_match*: gunichar + tentative_match_len*: gint + GtkIMContextSimple_flag0*: guint16 + + PGtkIMContextSimpleClass* = ptr TGtkIMContextSimpleClass + TGtkIMContextSimpleClass* = object of TGtkIMContextClass + + PGtkIMMulticontext* = ptr TGtkIMMulticontext + TGtkIMMulticontext* = object of TGtkIMContext + slave*: PGtkIMContext + client_window*: PGdkWindow + context_id*: cstring + + PGtkIMMulticontextClass* = ptr TGtkIMMulticontextClass + TGtkIMMulticontextClass* = object of TGtkIMContextClass + gtk_reserved451: proc (){.cdecl.} + gtk_reserved452: proc (){.cdecl.} + gtk_reserved453: proc (){.cdecl.} + gtk_reserved454: proc (){.cdecl.} + + PGtkInputDialog* = ptr TGtkInputDialog + TGtkInputDialog* = object of TGtkDialog + axis_list*: PGtkWidget + axis_listbox*: PGtkWidget + mode_optionmenu*: PGtkWidget + close_button*: PGtkWidget + save_button*: PGtkWidget + axis_items*: array[0..(GDK_AXIS_LAST) - 1, PGtkWidget] + current_device*: PGdkDevice + keys_list*: PGtkWidget + keys_listbox*: PGtkWidget + + PGtkInputDialogClass* = ptr TGtkInputDialogClass + TGtkInputDialogClass* = object of TGtkDialogClass + enable_device*: proc (inputd: PGtkInputDialog, device: PGdkDevice){.cdecl.} + disable_device*: proc (inputd: PGtkInputDialog, device: PGdkDevice){.cdecl.} + gtk_reserved461: proc (){.cdecl.} + gtk_reserved462: proc (){.cdecl.} + gtk_reserved463: proc (){.cdecl.} + gtk_reserved464: proc (){.cdecl.} + + PGtkInvisible* = ptr TGtkInvisible + TGtkInvisible* = object of TGtkWidget + has_user_ref_count*: gboolean + screen*: PGdkScreen + + PGtkInvisibleClass* = ptr TGtkInvisibleClass + TGtkInvisibleClass* = object of TGtkWidgetClass + gtk_reserved701: proc (){.cdecl.} + gtk_reserved702: proc (){.cdecl.} + gtk_reserved703: proc (){.cdecl.} + gtk_reserved704: proc (){.cdecl.} + + TGtkPrintFunc* = proc (func_data: gpointer, str: cstring){.cdecl.} + PGtkTranslateFunc* = ptr TGtkTranslateFunc + TGtkTranslateFunc* = gchar + TGtkItemFactoryCallback* = proc (){.cdecl.} + TGtkItemFactoryCallback1* = proc (callback_data: gpointer, + callback_action: guint, widget: PGtkWidget){. + cdecl.} + PGtkItemFactory* = ptr TGtkItemFactory + TGtkItemFactory* = object of TGtkObject + path*: cstring + accel_group*: PGtkAccelGroup + widget*: PGtkWidget + items*: PGSList + translate_func*: TGtkTranslateFunc + translate_data*: gpointer + translate_notify*: TGtkDestroyNotify + + PGtkItemFactoryClass* = ptr TGtkItemFactoryClass + TGtkItemFactoryClass* = object of TGtkObjectClass + item_ht*: PGHashTable + gtk_reserved471: proc (){.cdecl.} + gtk_reserved472: proc (){.cdecl.} + gtk_reserved473: proc (){.cdecl.} + gtk_reserved474: proc (){.cdecl.} + + PGtkItemFactoryEntry* = ptr TGtkItemFactoryEntry + TGtkItemFactoryEntry* = record + path*: cstring + accelerator*: cstring + callback*: TGtkItemFactoryCallback + callback_action*: guint + item_type*: cstring + extra_data*: gconstpointer + + PGtkItemFactoryItem* = ptr TGtkItemFactoryItem + TGtkItemFactoryItem* = record + path*: cstring + widgets*: PGSList + + PGtkLayout* = ptr TGtkLayout + TGtkLayout* = object of TGtkContainer + children*: PGList + width*: guint + height*: guint + hadjustment*: PGtkAdjustment + vadjustment*: PGtkAdjustment + bin_window*: PGdkWindow + visibility*: TGdkVisibilityState + scroll_x*: gint + scroll_y*: gint + freeze_count*: guint + + PGtkLayoutClass* = ptr TGtkLayoutClass + TGtkLayoutClass* = object of TGtkContainerClass + set_scroll_adjustments*: proc (layout: PGtkLayout, + hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment){.cdecl.} + gtk_reserved481: proc (){.cdecl.} + gtk_reserved482: proc (){.cdecl.} + gtk_reserved483: proc (){.cdecl.} + gtk_reserved484: proc (){.cdecl.} + + PGtkList* = ptr TGtkList + TGtkList* = object of TGtkContainer + children*: PGList + selection*: PGList + undo_selection*: PGList + undo_unselection*: PGList + last_focus_child*: PGtkWidget + undo_focus_child*: PGtkWidget + htimer*: guint + vtimer*: guint + anchor*: gint + drag_pos*: gint + anchor_state*: TGtkStateType + GtkList_flag0*: guint16 + + PGtkListClass* = ptr TGtkListClass + TGtkListClass* = object of TGtkContainerClass + selection_changed*: proc (list: PGtkList){.cdecl.} + select_child*: proc (list: PGtkList, child: PGtkWidget){.cdecl.} + unselect_child*: proc (list: PGtkList, child: PGtkWidget){.cdecl.} + + TGtkTreeModelForeachFunc* = proc (model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter, data: gpointer): gboolean{. + cdecl.} + PGtkTreeModelFlags* = ptr TGtkTreeModelFlags + TGtkTreeModelFlags* = int32 + TGtkTreeIter* = record + stamp*: gint + user_data*: gpointer + user_data2*: gpointer + user_data3*: gpointer + + PGtkTreeModelIface* = ptr TGtkTreeModelIface + TGtkTreeModelIface* = object of TGTypeInterface + row_changed*: proc (tree_model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter){.cdecl.} + row_inserted*: proc (tree_model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter){.cdecl.} + row_has_child_toggled*: proc (tree_model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter){.cdecl.} + row_deleted*: proc (tree_model: PGtkTreeModel, path: PGtkTreePath){.cdecl.} + rows_reordered*: proc (tree_model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter, new_order: Pgint){.cdecl.} + get_flags*: proc (tree_model: PGtkTreeModel): TGtkTreeModelFlags{.cdecl.} + get_n_columns*: proc (tree_model: PGtkTreeModel): gint{.cdecl.} + get_column_type*: proc (tree_model: PGtkTreeModel, index: gint): GType{. + cdecl.} + get_iter*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter, + path: PGtkTreePath): gboolean{.cdecl.} + get_path*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter): PGtkTreePath{. + cdecl.} + get_value*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter, + column: gint, value: PGValue){.cdecl.} + iter_next*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter): gboolean{. + cdecl.} + iter_children*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter, + parent: PGtkTreeIter): gboolean{.cdecl.} + iter_has_child*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter): gboolean{. + cdecl.} + iter_n_children*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter): gint{. + cdecl.} + iter_nth_child*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter, + parent: PGtkTreeIter, n: gint): gboolean{.cdecl.} + iter_parent*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter, + child: PGtkTreeIter): gboolean{.cdecl.} + ref_node*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter){.cdecl.} + unref_node*: proc (tree_model: PGtkTreeModel, iter: PGtkTreeIter){.cdecl.} + + PGtkTreeSortable* = pointer + TGtkTreeIterCompareFunc* = proc (model: PGtkTreeModel, a: PGtkTreeIter, + b: PGtkTreeIter, user_data: gpointer): gint{. + cdecl.} + PGtkTreeSortableIface* = ptr TGtkTreeSortableIface + TGtkTreeSortableIface* = object of TGTypeInterface + sort_column_changed*: proc (sortable: PGtkTreeSortable){.cdecl.} + get_sort_column_id*: proc (sortable: PGtkTreeSortable, + sort_column_id: Pgint, order: PGtkSortType): gboolean{. + cdecl.} + set_sort_column_id*: proc (sortable: PGtkTreeSortable, sort_column_id: gint, + order: TGtkSortType){.cdecl.} + set_sort_func*: proc (sortable: PGtkTreeSortable, sort_column_id: gint, + func: TGtkTreeIterCompareFunc, data: gpointer, + destroy: TGtkDestroyNotify){.cdecl.} + set_default_sort_func*: proc (sortable: PGtkTreeSortable, + func: TGtkTreeIterCompareFunc, data: gpointer, + destroy: TGtkDestroyNotify){.cdecl.} + has_default_sort_func*: proc (sortable: PGtkTreeSortable): gboolean{.cdecl.} + + PGtkTreeModelSort* = ptr TGtkTreeModelSort + TGtkTreeModelSort* = object of TGObject + root*: gpointer + stamp*: gint + child_flags*: guint + child_model*: PGtkTreeModel + zero_ref_count*: gint + sort_list*: PGList + sort_column_id*: gint + order*: TGtkSortType + default_sort_func*: TGtkTreeIterCompareFunc + default_sort_data*: gpointer + default_sort_destroy*: TGtkDestroyNotify + changed_id*: guint + inserted_id*: guint + has_child_toggled_id*: guint + deleted_id*: guint + reordered_id*: guint + + PGtkTreeModelSortClass* = ptr TGtkTreeModelSortClass + TGtkTreeModelSortClass* = object of TGObjectClass + gtk_reserved491: proc (){.cdecl.} + gtk_reserved492: proc (){.cdecl.} + gtk_reserved493: proc (){.cdecl.} + gtk_reserved494: proc (){.cdecl.} + + PGtkListStore* = ptr TGtkListStore + TGtkListStore* = object of TGObject + stamp*: gint + root*: gpointer + tail*: gpointer + sort_list*: PGList + n_columns*: gint + sort_column_id*: gint + order*: TGtkSortType + column_headers*: PGType + length*: gint + default_sort_func*: TGtkTreeIterCompareFunc + default_sort_data*: gpointer + default_sort_destroy*: TGtkDestroyNotify + GtkListStore_flag0*: guint16 + + PGtkListStoreClass* = ptr TGtkListStoreClass + TGtkListStoreClass* = object of TGObjectClass + gtk_reserved501: proc (){.cdecl.} + gtk_reserved502: proc (){.cdecl.} + gtk_reserved503: proc (){.cdecl.} + gtk_reserved504: proc (){.cdecl.} + + TGtkModuleInitFunc* = proc (argc: Pgint, argv: PPPgchar){.cdecl.} + TGtkKeySnoopFunc* = proc (grab_widget: PGtkWidget, event: PGdkEventKey, + func_data: gpointer): gint{.cdecl.} + PGtkMenuBar* = ptr TGtkMenuBar + TGtkMenuBar* = object of TGtkMenuShell + + PGtkMenuBarClass* = ptr TGtkMenuBarClass + TGtkMenuBarClass* = object of TGtkMenuShellClass + gtk_reserved511: proc (){.cdecl.} + gtk_reserved512: proc (){.cdecl.} + gtk_reserved513: proc (){.cdecl.} + gtk_reserved514: proc (){.cdecl.} + + PGtkMessageType* = ptr TGtkMessageType + TGtkMessageType* = enum + GTK_MESSAGE_INFO, GTK_MESSAGE_WARNING, GTK_MESSAGE_QUESTION, + GTK_MESSAGE_ERROR + PGtkButtonsType* = ptr TGtkButtonsType + TGtkButtonsType* = enum + GTK_BUTTONS_NONE, GTK_BUTTONS_OK, GTK_BUTTONS_CLOSE, GTK_BUTTONS_CANCEL, + GTK_BUTTONS_YES_NO, GTK_BUTTONS_OK_CANCEL + PGtkMessageDialog* = ptr TGtkMessageDialog + TGtkMessageDialog* = object of TGtkDialog + image*: PGtkWidget + label*: PGtkWidget + + PGtkMessageDialogClass* = ptr TGtkMessageDialogClass + TGtkMessageDialogClass* = object of TGtkDialogClass + gtk_reserved521: proc (){.cdecl.} + gtk_reserved522: proc (){.cdecl.} + gtk_reserved523: proc (){.cdecl.} + gtk_reserved524: proc (){.cdecl.} + + PGtkNotebookPage* = pointer + PGtkNotebookTab* = ptr TGtkNotebookTab + TGtkNotebookTab* = enum + GTK_NOTEBOOK_TAB_FIRST, GTK_NOTEBOOK_TAB_LAST + PGtkNotebook* = ptr TGtkNotebook + TGtkNotebook* = object of TGtkContainer + cur_page*: PGtkNotebookPage + children*: PGList + first_tab*: PGList + focus_tab*: PGList + menu*: PGtkWidget + event_window*: PGdkWindow + timer*: guint32 + tab_hborder*: guint16 + tab_vborder*: guint16 + GtkNotebook_flag0*: guint16 + + PGtkNotebookClass* = ptr TGtkNotebookClass + TGtkNotebookClass* = object of TGtkContainerClass + switch_page*: proc (notebook: PGtkNotebook, page: PGtkNotebookPage, + page_num: guint){.cdecl.} + select_page*: proc (notebook: PGtkNotebook, move_focus: gboolean): gboolean{. + cdecl.} + focus_tab*: proc (notebook: PGtkNotebook, thetype: TGtkNotebookTab): gboolean{. + cdecl.} + change_current_page*: proc (notebook: PGtkNotebook, offset: gint){.cdecl.} + move_focus_out*: proc (notebook: PGtkNotebook, direction: TGtkDirectionType){. + cdecl.} + gtk_reserved531: proc (){.cdecl.} + gtk_reserved532: proc (){.cdecl.} + gtk_reserved533: proc (){.cdecl.} + gtk_reserved534: proc (){.cdecl.} + + PGtkOldEditable* = ptr TGtkOldEditable + TGtkOldEditable* = object of TGtkWidget + current_pos*: guint + selection_start_pos*: guint + selection_end_pos*: guint + GtkOldEditable_flag0*: guint16 + clipboard_text*: cstring + + TGtkTextFunction* = proc (editable: PGtkOldEditable, time: guint32){.cdecl.} + PGtkOldEditableClass* = ptr TGtkOldEditableClass + TGtkOldEditableClass* = object of TGtkWidgetClass + activate*: proc (editable: PGtkOldEditable){.cdecl.} + set_editable*: proc (editable: PGtkOldEditable, is_editable: gboolean){. + cdecl.} + move_cursor*: proc (editable: PGtkOldEditable, x: gint, y: gint){.cdecl.} + move_word*: proc (editable: PGtkOldEditable, n: gint){.cdecl.} + move_page*: proc (editable: PGtkOldEditable, x: gint, y: gint){.cdecl.} + move_to_row*: proc (editable: PGtkOldEditable, row: gint){.cdecl.} + move_to_column*: proc (editable: PGtkOldEditable, row: gint){.cdecl.} + kill_char*: proc (editable: PGtkOldEditable, direction: gint){.cdecl.} + kill_word*: proc (editable: PGtkOldEditable, direction: gint){.cdecl.} + kill_line*: proc (editable: PGtkOldEditable, direction: gint){.cdecl.} + cut_clipboard*: proc (editable: PGtkOldEditable){.cdecl.} + copy_clipboard*: proc (editable: PGtkOldEditable){.cdecl.} + paste_clipboard*: proc (editable: PGtkOldEditable){.cdecl.} + update_text*: proc (editable: PGtkOldEditable, start_pos: gint, + end_pos: gint){.cdecl.} + get_chars*: proc (editable: PGtkOldEditable, start_pos: gint, end_pos: gint): cstring{. + cdecl.} + set_selection*: proc (editable: PGtkOldEditable, start_pos: gint, + end_pos: gint){.cdecl.} + set_position*: proc (editable: PGtkOldEditable, position: gint){.cdecl.} + + PGtkOptionMenu* = ptr TGtkOptionMenu + TGtkOptionMenu* = object of TGtkButton + menu*: PGtkWidget + menu_item*: PGtkWidget + width*: guint16 + height*: guint16 + + PGtkOptionMenuClass* = ptr TGtkOptionMenuClass + TGtkOptionMenuClass* = object of TGtkButtonClass + changed*: proc (option_menu: PGtkOptionMenu){.cdecl.} + gtk_reserved541: proc (){.cdecl.} + gtk_reserved542: proc (){.cdecl.} + gtk_reserved543: proc (){.cdecl.} + gtk_reserved544: proc (){.cdecl.} + + PGtkPixmap* = ptr TGtkPixmap + TGtkPixmap* = object of TGtkMisc + pixmap*: PGdkPixmap + mask*: PGdkBitmap + pixmap_insensitive*: PGdkPixmap + GtkPixmap_flag0*: guint16 + + PGtkPixmapClass* = ptr TGtkPixmapClass + TGtkPixmapClass* = object of TGtkMiscClass + + PGtkPlug* = ptr TGtkPlug + TGtkPlug* = object of TGtkWindow + socket_window*: PGdkWindow + modality_window*: PGtkWidget + modality_group*: PGtkWindowGroup + grabbed_keys*: PGHashTable + GtkPlug_flag0*: guint16 + + PGtkPlugClass* = ptr TGtkPlugClass + TGtkPlugClass* = object of TGtkWindowClass + embedded*: proc (plug: PGtkPlug){.cdecl.} + gtk_reserved551: proc (){.cdecl.} + gtk_reserved552: proc (){.cdecl.} + gtk_reserved553: proc (){.cdecl.} + gtk_reserved554: proc (){.cdecl.} + + PGtkPreview* = ptr TGtkPreview + TGtkPreview* = object of TGtkWidget + buffer*: Pguchar + buffer_width*: guint16 + buffer_height*: guint16 + bpp*: guint16 + rowstride*: guint16 + dither*: TGdkRgbDither + GtkPreview_flag0*: guint16 + + PGtkPreviewInfo* = ptr TGtkPreviewInfo + TGtkPreviewInfo* = record + lookup*: Pguchar + gamma*: gdouble + + PGtkDitherInfo* = ptr TGtkDitherInfo + TGtkDitherInfo* = record + c*: array[0..3, guchar] + + PGtkPreviewClass* = ptr TGtkPreviewClass + TGtkPreviewClass* = object of TGtkWidgetClass + info*: TGtkPreviewInfo + + PGtkProgress* = ptr TGtkProgress + TGtkProgress* = object of TGtkWidget + adjustment*: PGtkAdjustment + offscreen_pixmap*: PGdkPixmap + format*: cstring + x_align*: gfloat + y_align*: gfloat + GtkProgress_flag0*: guint16 + + PGtkProgressClass* = ptr TGtkProgressClass + TGtkProgressClass* = object of TGtkWidgetClass + paint*: proc (progress: PGtkProgress){.cdecl.} + update*: proc (progress: PGtkProgress){.cdecl.} + act_mode_enter*: proc (progress: PGtkProgress){.cdecl.} + gtk_reserved561: proc (){.cdecl.} + gtk_reserved562: proc (){.cdecl.} + gtk_reserved563: proc (){.cdecl.} + gtk_reserved564: proc (){.cdecl.} + + PGtkProgressBarStyle* = ptr TGtkProgressBarStyle + TGtkProgressBarStyle* = enum + GTK_PROGRESS_CONTINUOUS, GTK_PROGRESS_DISCRETE + PGtkProgressBarOrientation* = ptr TGtkProgressBarOrientation + TGtkProgressBarOrientation* = enum + GTK_PROGRESS_LEFT_TO_RIGHT, GTK_PROGRESS_RIGHT_TO_LEFT, + GTK_PROGRESS_BOTTOM_TO_TOP, GTK_PROGRESS_TOP_TO_BOTTOM + PGtkProgressBar* = ptr TGtkProgressBar + TGtkProgressBar* = object of TGtkProgress + bar_style*: TGtkProgressBarStyle + orientation*: TGtkProgressBarOrientation + blocks*: guint + in_block*: gint + activity_pos*: gint + activity_step*: guint + activity_blocks*: guint + pulse_fraction*: gdouble + GtkProgressBar_flag0*: guint16 + + PGtkProgressBarClass* = ptr TGtkProgressBarClass + TGtkProgressBarClass* = object of TGtkProgressClass + gtk_reserved571: proc (){.cdecl.} + gtk_reserved572: proc (){.cdecl.} + gtk_reserved573: proc (){.cdecl.} + gtk_reserved574: proc (){.cdecl.} + + PGtkRadioButton* = ptr TGtkRadioButton + TGtkRadioButton* = object of TGtkCheckButton + group*: PGSList + + PGtkRadioButtonClass* = ptr TGtkRadioButtonClass + TGtkRadioButtonClass* = object of TGtkCheckButtonClass + gtk_reserved581: proc (){.cdecl.} + gtk_reserved582: proc (){.cdecl.} + gtk_reserved583: proc (){.cdecl.} + gtk_reserved584: proc (){.cdecl.} + + PGtkRadioMenuItem* = ptr TGtkRadioMenuItem + TGtkRadioMenuItem* = object of TGtkCheckMenuItem + group*: PGSList + + PGtkRadioMenuItemClass* = ptr TGtkRadioMenuItemClass + TGtkRadioMenuItemClass* = object of TGtkCheckMenuItemClass + gtk_reserved591: proc (){.cdecl.} + gtk_reserved592: proc (){.cdecl.} + gtk_reserved593: proc (){.cdecl.} + gtk_reserved594: proc (){.cdecl.} + + PGtkScrolledWindow* = ptr TGtkScrolledWindow + TGtkScrolledWindow* = object of TGtkBin + hscrollbar*: PGtkWidget + vscrollbar*: PGtkWidget + GtkScrolledWindow_flag0*: guint16 + shadow_type*: guint16 + + PGtkScrolledWindowClass* = ptr TGtkScrolledWindowClass + TGtkScrolledWindowClass* = object of TGtkBinClass + scrollbar_spacing*: gint + scroll_child*: proc (scrolled_window: PGtkScrolledWindow, + scroll: TGtkScrollType, horizontal: gboolean){.cdecl.} + move_focus_out*: proc (scrolled_window: PGtkScrolledWindow, + direction: TGtkDirectionType){.cdecl.} + gtk_reserved601: proc (){.cdecl.} + gtk_reserved602: proc (){.cdecl.} + gtk_reserved603: proc (){.cdecl.} + gtk_reserved604: proc (){.cdecl.} + + TGtkSelectionData* = record + selection*: TGdkAtom + target*: TGdkAtom + thetype*: TGdkAtom + format*: gint + data*: Pguchar + length*: gint + display*: PGdkDisplay + + PGtkTargetEntry* = ptr TGtkTargetEntry + TGtkTargetEntry* = record + target*: cstring + flags*: guint + info*: guint + + PGtkTargetList* = ptr TGtkTargetList + TGtkTargetList* = record + list*: PGList + ref_count*: guint + + PGtkTargetPair* = ptr TGtkTargetPair + TGtkTargetPair* = record + target*: TGdkAtom + flags*: guint + info*: guint + + PGtkSeparatorMenuItem* = ptr TGtkSeparatorMenuItem + TGtkSeparatorMenuItem* = object of TGtkMenuItem + + PGtkSeparatorMenuItemClass* = ptr TGtkSeparatorMenuItemClass + TGtkSeparatorMenuItemClass* = object of TGtkMenuItemClass + + PGtkSizeGroup* = ptr TGtkSizeGroup + TGtkSizeGroup* = object of TGObject + widgets*: PGSList + mode*: guint8 + GtkSizeGroup_flag0*: guint16 + requisition*: TGtkRequisition + + PGtkSizeGroupClass* = ptr TGtkSizeGroupClass + TGtkSizeGroupClass* = object of TGObjectClass + gtk_reserved611: proc (){.cdecl.} + gtk_reserved612: proc (){.cdecl.} + gtk_reserved613: proc (){.cdecl.} + gtk_reserved614: proc (){.cdecl.} + + PGtkSizeGroupMode* = ptr TGtkSizeGroupMode + TGtkSizeGroupMode* = enum + GTK_SIZE_GROUP_NONE, GTK_SIZE_GROUP_HORIZONTAL, GTK_SIZE_GROUP_VERTICAL, + GTK_SIZE_GROUP_BOTH + PGtkSocket* = ptr TGtkSocket + TGtkSocket* = object of TGtkContainer + request_width*: guint16 + request_height*: guint16 + current_width*: guint16 + current_height*: guint16 + plug_window*: PGdkWindow + plug_widget*: PGtkWidget + xembed_version*: gshort + GtkSocket_flag0*: guint16 + accel_group*: PGtkAccelGroup + toplevel*: PGtkWidget + + PGtkSocketClass* = ptr TGtkSocketClass + TGtkSocketClass* = object of TGtkContainerClass + plug_added*: proc (socket: PGtkSocket){.cdecl.} + plug_removed*: proc (socket: PGtkSocket): gboolean{.cdecl.} + gtk_reserved621: proc (){.cdecl.} + gtk_reserved622: proc (){.cdecl.} + gtk_reserved623: proc (){.cdecl.} + gtk_reserved624: proc (){.cdecl.} + + PGtkSpinButtonUpdatePolicy* = ptr TGtkSpinButtonUpdatePolicy + TGtkSpinButtonUpdatePolicy* = enum + GTK_UPDATE_ALWAYS, GTK_UPDATE_IF_VALID + PGtkSpinType* = ptr TGtkSpinType + TGtkSpinType* = enum + GTK_SPIN_STEP_FORWARD, GTK_SPIN_STEP_BACKWARD, GTK_SPIN_PAGE_FORWARD, + GTK_SPIN_PAGE_BACKWARD, GTK_SPIN_HOME, GTK_SPIN_END, GTK_SPIN_USER_DEFINED + PGtkSpinButton* = ptr TGtkSpinButton + TGtkSpinButton* = object of TGtkEntry + adjustment*: PGtkAdjustment + panel*: PGdkWindow + timer*: guint32 + climb_rate*: gdouble + timer_step*: gdouble + update_policy*: TGtkSpinButtonUpdatePolicy + GtkSpinButton_flag0*: int32 + + PGtkSpinButtonClass* = ptr TGtkSpinButtonClass + TGtkSpinButtonClass* = object of TGtkEntryClass + input*: proc (spin_button: PGtkSpinButton, new_value: Pgdouble): gint{.cdecl.} + output*: proc (spin_button: PGtkSpinButton): gint{.cdecl.} + value_changed*: proc (spin_button: PGtkSpinButton){.cdecl.} + change_value*: proc (spin_button: PGtkSpinButton, scroll: TGtkScrollType){. + cdecl.} + gtk_reserved631: proc (){.cdecl.} + gtk_reserved632: proc (){.cdecl.} + gtk_reserved633: proc (){.cdecl.} + gtk_reserved634: proc (){.cdecl.} + + PGtkStockItem* = ptr TGtkStockItem + TGtkStockItem* = record + stock_id*: cstring + label*: cstring + modifier*: TGdkModifierType + keyval*: guint + translation_domain*: cstring + + PGtkStatusbar* = ptr TGtkStatusbar + TGtkStatusbar* = object of TGtkHBox + frame*: PGtkWidget + `label`*: PGtkWidget + messages*: PGSList + keys*: PGSList + seq_context_id*: guint + seq_message_id*: guint + grip_window*: PGdkWindow + GtkStatusbar_flag0*: guint16 + + PGtkStatusbarClass* = ptr TGtkStatusbarClass + TGtkStatusbarClass* = object of TGtkHBoxClass + messages_mem_chunk*: PGMemChunk + text_pushed*: proc (statusbar: PGtkStatusbar, context_id: guint, + text: cstring){.cdecl.} + text_popped*: proc (statusbar: PGtkStatusbar, context_id: guint, + text: cstring){.cdecl.} + gtk_reserved641: proc (){.cdecl.} + gtk_reserved642: proc (){.cdecl.} + gtk_reserved643: proc (){.cdecl.} + gtk_reserved644: proc (){.cdecl.} + + PGtkTableRowCol* = ptr TGtkTableRowCol + PGtkTable* = ptr TGtkTable + TGtkTable* = object of TGtkContainer + children*: PGList + rows*: PGtkTableRowCol + cols*: PGtkTableRowCol + nrows*: guint16 + ncols*: guint16 + column_spacing*: guint16 + row_spacing*: guint16 + GtkTable_flag0*: guint16 + + PGtkTableClass* = ptr TGtkTableClass + TGtkTableClass* = object of TGtkContainerClass + + PGtkTableChild* = ptr TGtkTableChild + TGtkTableChild* = record + widget*: PGtkWidget + left_attach*: guint16 + right_attach*: guint16 + top_attach*: guint16 + bottom_attach*: guint16 + xpadding*: guint16 + ypadding*: guint16 + GtkTableChild_flag0*: guint16 + + TGtkTableRowCol* = record + requisition*: guint16 + allocation*: guint16 + spacing*: guint16 + flag0*: guint16 + + PGtkTearoffMenuItem* = ptr TGtkTearoffMenuItem + TGtkTearoffMenuItem* = object of TGtkMenuItem + GtkTearoffMenuItem_flag0*: guint16 + + PGtkTearoffMenuItemClass* = ptr TGtkTearoffMenuItemClass + TGtkTearoffMenuItemClass* = object of TGtkMenuItemClass + gtk_reserved651: proc (){.cdecl.} + gtk_reserved652: proc (){.cdecl.} + gtk_reserved653: proc (){.cdecl.} + gtk_reserved654: proc (){.cdecl.} + + PGtkTextFont* = pointer + PGtkPropertyMark* = ptr TGtkPropertyMark + TGtkPropertyMark* = record + `property`*: PGList + offset*: guint + index*: guint + + PGtkText* = ptr TGtkText + TGtkText* = object of TGtkOldEditable + text_area*: PGdkWindow + hadj*: PGtkAdjustment + vadj*: PGtkAdjustment + gc*: PGdkGC + line_wrap_bitmap*: PGdkPixmap + line_arrow_bitmap*: PGdkPixmap + text*: Pguchar + text_len*: guint + gap_position*: guint + gap_size*: guint + text_end*: guint + line_start_cache*: PGList + first_line_start_index*: guint + first_cut_pixels*: guint + first_onscreen_hor_pixel*: guint + first_onscreen_ver_pixel*: guint + GtkText_flag0*: guint16 + freeze_count*: guint + text_properties*: PGList + text_properties_end*: PGList + point*: TGtkPropertyMark + scratch_buffer*: Pguchar + scratch_buffer_len*: guint + last_ver_value*: gint + cursor_pos_x*: gint + cursor_pos_y*: gint + cursor_mark*: TGtkPropertyMark + cursor_char*: TGdkWChar + cursor_char_offset*: gchar + cursor_virtual_x*: gint + cursor_drawn_level*: gint + current_line*: PGList + tab_stops*: PGList + default_tab_width*: gint + current_font*: PGtkTextFont + timer*: gint + button*: guint + bg_gc*: PGdkGC + + PGtkTextClass* = ptr TGtkTextClass + TGtkTextClass* = object of TGtkOldEditableClass + set_scroll_adjustments*: proc (text: PGtkText, hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment){.cdecl.} + + PGtkTextSearchFlags* = ptr TGtkTextSearchFlags + TGtkTextSearchFlags* = int32 + PGtkTextIter* = ptr TGtkTextIter + TGtkTextIter* = record + dummy1*: gpointer + dummy2*: gpointer + dummy3*: gint + dummy4*: gint + dummy5*: gint + dummy6*: gint + dummy7*: gint + dummy8*: gint + dummy9*: gpointer + dummy10*: gpointer + dummy11*: gint + dummy12*: gint + dummy13*: gint + dummy14*: gpointer + + TGtkTextCharPredicate* = proc (ch: gunichar, user_data: gpointer): gboolean{. + cdecl.} + PGtkTextTagClass* = ptr TGtkTextTagClass + PGtkTextAttributes* = ptr TGtkTextAttributes + PGtkTextTag* = ptr TGtkTextTag + PPGtkTextTag* = ptr PGtkTextTag + TGtkTextTag* = object of TGObject + table*: PGtkTextTagTable + name*: cstring + priority*: int32 + values*: PGtkTextAttributes + GtkTextTag_flag0*: int32 + + TGtkTextTagClass* = object of TGObjectClass + event*: proc (tag: PGtkTextTag, event_object: PGObject, event: PGdkEvent, + iter: PGtkTextIter): gboolean{.cdecl.} + gtk_reserved661: proc (){.cdecl.} + gtk_reserved662: proc (){.cdecl.} + gtk_reserved663: proc (){.cdecl.} + gtk_reserved664: proc (){.cdecl.} + + PGtkTextAppearance* = ptr TGtkTextAppearance + TGtkTextAppearance* = record + bg_color*: TGdkColor + fg_color*: TGdkColor + bg_stipple*: PGdkBitmap + fg_stipple*: PGdkBitmap + rise*: gint + padding1*: gpointer + flag0*: guint16 + + TGtkTextAttributes* = record + refcount*: guint + appearance*: TGtkTextAppearance + justification*: TGtkJustification + direction*: TGtkTextDirection + font*: PPangoFontDescription + font_scale*: gdouble + left_margin*: gint + indent*: gint + right_margin*: gint + pixels_above_lines*: gint + pixels_below_lines*: gint + pixels_inside_wrap*: gint + tabs*: PPangoTabArray + wrap_mode*: TGtkWrapMode + language*: PPangoLanguage + padding1*: gpointer + flag0*: guint16 + + TGtkTextTagTableForeach* = proc (tag: PGtkTextTag, data: gpointer){.cdecl.} + TGtkTextTagTable* = object of TGObject + hash*: PGHashTable + anonymous*: PGSList + anon_count*: gint + buffers*: PGSList + + PGtkTextTagTableClass* = ptr TGtkTextTagTableClass + TGtkTextTagTableClass* = object of TGObjectClass + tag_changed*: proc (table: PGtkTextTagTable, tag: PGtkTextTag, + size_changed: gboolean){.cdecl.} + tag_added*: proc (table: PGtkTextTagTable, tag: PGtkTextTag){.cdecl.} + tag_removed*: proc (table: PGtkTextTagTable, tag: PGtkTextTag){.cdecl.} + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + + PGtkTextMark* = ptr TGtkTextMark + TGtkTextMark* = object of TGObject + segment*: gpointer + + PGtkTextMarkClass* = ptr TGtkTextMarkClass + TGtkTextMarkClass* = object of TGObjectClass + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + + PGtkTextMarkBody* = ptr TGtkTextMarkBody + TGtkTextMarkBody* = record + obj*: PGtkTextMark + name*: cstring + tree*: PGtkTextBTree + line*: PGtkTextLine + flag0*: guint16 + + PGtkTextChildAnchor* = ptr TGtkTextChildAnchor + TGtkTextChildAnchor* = object of TGObject + segment*: gpointer + + PGtkTextChildAnchorClass* = ptr TGtkTextChildAnchorClass + TGtkTextChildAnchorClass* = object of TGObjectClass + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + + PGtkTextPixbuf* = ptr TGtkTextPixbuf + TGtkTextPixbuf* = record + pixbuf*: PGdkPixbuf + + PGtkTextChildBody* = ptr TGtkTextChildBody + TGtkTextChildBody* = record + obj*: PGtkTextChildAnchor + widgets*: PGSList + tree*: PGtkTextBTree + line*: PGtkTextLine + + PGtkTextLineSegment* = ptr TGtkTextLineSegment + PGtkTextLineSegmentClass* = ptr TGtkTextLineSegmentClass + PGtkTextTagInfo* = ptr TGtkTextTagInfo + TGtkTextTagInfo* = record + tag*: PGtkTextTag + tag_root*: PGtkTextBTreeNode + toggle_count*: gint + + PGtkTextToggleBody* = ptr TGtkTextToggleBody + TGtkTextToggleBody* = record + info*: PGtkTextTagInfo + inNodeCounts*: gboolean + + TGtkTextLineSegment* = record + `type`*: PGtkTextLineSegmentClass + next*: PGtkTextLineSegment + char_count*: int32 + byte_count*: int32 + body*: TGtkTextChildBody + + PGtkTextSegSplitFunc* = ptr TGtkTextSegSplitFunc + TGtkTextSegSplitFunc* = TGtkTextLineSegment + TGtkTextSegDeleteFunc* = proc (seg: PGtkTextLineSegment, line: PGtkTextLine, + tree_gone: gboolean): gboolean{.cdecl.} + PGtkTextSegCleanupFunc* = ptr TGtkTextSegCleanupFunc + TGtkTextSegCleanupFunc* = TGtkTextLineSegment + TGtkTextSegLineChangeFunc* = proc (seg: PGtkTextLineSegment, + line: PGtkTextLine){.cdecl.} + TGtkTextSegCheckFunc* = proc (seg: PGtkTextLineSegment, line: PGtkTextLine){. + cdecl.} + TGtkTextLineSegmentClass* = record + name*: cstring + leftGravity*: gboolean + splitFunc*: TGtkTextSegSplitFunc + deleteFunc*: TGtkTextSegDeleteFunc + cleanupFunc*: TGtkTextSegCleanupFunc + lineChangeFunc*: TGtkTextSegLineChangeFunc + checkFunc*: TGtkTextSegCheckFunc + + PGtkTextLineData* = ptr TGtkTextLineData + TGtkTextLineData* = record + view_id*: gpointer + next*: PGtkTextLineData + height*: gint + flag0*: int32 + + TGtkTextLine* = record + parent*: PGtkTextBTreeNode + next*: PGtkTextLine + segments*: PGtkTextLineSegment + views*: PGtkTextLineData + + PGtkTextLogAttrCache* = pointer + PGtkTextBuffer* = ptr TGtkTextBuffer + TGtkTextBuffer* = object of TGObject + tag_table*: PGtkTextTagTable + btree*: PGtkTextBTree + clipboard_contents_buffers*: PGSList + selection_clipboards*: PGSList + log_attr_cache*: PGtkTextLogAttrCache + user_action_count*: guint + GtkTextBuffer_flag0*: guint16 + + PGtkTextBufferClass* = ptr TGtkTextBufferClass + TGtkTextBufferClass* = object of TGObjectClass + insert_text*: proc (buffer: PGtkTextBuffer, pos: PGtkTextIter, text: cstring, + length: gint){.cdecl.} + insert_pixbuf*: proc (buffer: PGtkTextBuffer, pos: PGtkTextIter, + pixbuf: PGdkPixbuf){.cdecl.} + insert_child_anchor*: proc (buffer: PGtkTextBuffer, pos: PGtkTextIter, + anchor: PGtkTextChildAnchor){.cdecl.} + delete_range*: proc (buffer: PGtkTextBuffer, start: PGtkTextIter, + theEnd: PGtkTextIter){.cdecl.} + changed*: proc (buffer: PGtkTextBuffer){.cdecl.} + modified_changed*: proc (buffer: PGtkTextBuffer){.cdecl.} + mark_set*: proc (buffer: PGtkTextBuffer, location: PGtkTextIter, + mark: PGtkTextMark){.cdecl.} + mark_deleted*: proc (buffer: PGtkTextBuffer, mark: PGtkTextMark){.cdecl.} + apply_tag*: proc (buffer: PGtkTextBuffer, tag: PGtkTextTag, + start_char: PGtkTextIter, end_char: PGtkTextIter){.cdecl.} + remove_tag*: proc (buffer: PGtkTextBuffer, tag: PGtkTextTag, + start_char: PGtkTextIter, end_char: PGtkTextIter){.cdecl.} + begin_user_action*: proc (buffer: PGtkTextBuffer){.cdecl.} + end_user_action*: proc (buffer: PGtkTextBuffer){.cdecl.} + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + gtk_reserved5: proc (){.cdecl.} + gtk_reserved6: proc (){.cdecl.} + + PGtkTextLineDisplay* = ptr TGtkTextLineDisplay + PGtkTextLayout* = ptr TGtkTextLayout + TGtkTextLayout* = object of TGObject + screen_width*: gint + width*: gint + height*: gint + buffer*: PGtkTextBuffer + default_style*: PGtkTextAttributes + ltr_context*: PPangoContext + rtl_context*: PPangoContext + one_style_cache*: PGtkTextAttributes + one_display_cache*: PGtkTextLineDisplay + wrap_loop_count*: gint + GtkTextLayout_flag0*: guint16 + preedit_string*: cstring + preedit_attrs*: PPangoAttrList + preedit_len*: gint + preedit_cursor*: gint + + PGtkTextLayoutClass* = ptr TGtkTextLayoutClass + TGtkTextLayoutClass* = object of TGObjectClass + invalidated*: proc (layout: PGtkTextLayout){.cdecl.} + changed*: proc (layout: PGtkTextLayout, y: gint, old_height: gint, + new_height: gint){.cdecl.} + wrap*: proc (layout: PGtkTextLayout, line: PGtkTextLine, + line_data: PGtkTextLineData): PGtkTextLineData{.cdecl.} + get_log_attrs*: proc (layout: PGtkTextLayout, line: PGtkTextLine, + attrs: var PPangoLogAttr, n_attrs: Pgint){.cdecl.} + invalidate*: proc (layout: PGtkTextLayout, start: PGtkTextIter, + theEnd: PGtkTextIter){.cdecl.} + free_line_data*: proc (layout: PGtkTextLayout, line: PGtkTextLine, + line_data: PGtkTextLineData){.cdecl.} + allocate_child*: proc (layout: PGtkTextLayout, child: PGtkWidget, x: gint, + y: gint){.cdecl.} + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + + PGtkTextAttrAppearance* = ptr TGtkTextAttrAppearance + TGtkTextAttrAppearance* = record + attr*: TPangoAttribute + appearance*: TGtkTextAppearance + + PGtkTextCursorDisplay* = ptr TGtkTextCursorDisplay + TGtkTextCursorDisplay* = record + x*: gint + y*: gint + height*: gint + flag0*: guint16 + + TGtkTextLineDisplay* = record + layout*: PPangoLayout + cursors*: PGSList + shaped_objects*: PGSList + direction*: TGtkTextDirection + width*: gint + total_width*: gint + height*: gint + x_offset*: gint + left_margin*: gint + right_margin*: gint + top_margin*: gint + bottom_margin*: gint + insert_index*: gint + size_only*: gboolean + line*: PGtkTextLine + + PGtkTextWindow* = pointer + PGtkTextPendingScroll* = pointer + PGtkTextWindowType* = ptr TGtkTextWindowType + TGtkTextWindowType* = enum + GTK_TEXT_WINDOW_PRIVATE, GTK_TEXT_WINDOW_WIDGET, GTK_TEXT_WINDOW_TEXT, + GTK_TEXT_WINDOW_LEFT, GTK_TEXT_WINDOW_RIGHT, GTK_TEXT_WINDOW_TOP, + GTK_TEXT_WINDOW_BOTTOM + PGtkTextView* = ptr TGtkTextView + TGtkTextView* = object of TGtkContainer + layout*: PGtkTextLayout + buffer*: PGtkTextBuffer + selection_drag_handler*: guint + scroll_timeout*: guint + pixels_above_lines*: gint + pixels_below_lines*: gint + pixels_inside_wrap*: gint + wrap_mode*: TGtkWrapMode + justify*: TGtkJustification + left_margin*: gint + right_margin*: gint + indent*: gint + tabs*: PPangoTabArray + GtkTextView_flag0*: guint16 + text_window*: PGtkTextWindow + left_window*: PGtkTextWindow + right_window*: PGtkTextWindow + top_window*: PGtkTextWindow + bottom_window*: PGtkTextWindow + hadjustment*: PGtkAdjustment + vadjustment*: PGtkAdjustment + xoffset*: gint + yoffset*: gint + width*: gint + height*: gint + virtual_cursor_x*: gint + virtual_cursor_y*: gint + first_para_mark*: PGtkTextMark + first_para_pixels*: gint + dnd_mark*: PGtkTextMark + blink_timeout*: guint + first_validate_idle*: guint + incremental_validate_idle*: guint + im_context*: PGtkIMContext + popup_menu*: PGtkWidget + drag_start_x*: gint + drag_start_y*: gint + children*: PGSList + pending_scroll*: PGtkTextPendingScroll + pending_place_cursor_button*: gint + + PGtkTextViewClass* = ptr TGtkTextViewClass + TGtkTextViewClass* = object of TGtkContainerClass + set_scroll_adjustments*: proc (text_view: PGtkTextView, + hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment){.cdecl.} + populate_popup*: proc (text_view: PGtkTextView, menu: PGtkMenu){.cdecl.} + move_cursor*: proc (text_view: PGtkTextView, step: TGtkMovementStep, + count: gint, extend_selection: gboolean){.cdecl.} + page_horizontally*: proc (text_view: PGtkTextView, count: gint, + extend_selection: gboolean){.cdecl.} + set_anchor*: proc (text_view: PGtkTextView){.cdecl.} + insert_at_cursor*: proc (text_view: PGtkTextView, str: cstring){.cdecl.} + delete_from_cursor*: proc (text_view: PGtkTextView, thetype: TGtkDeleteType, + count: gint){.cdecl.} + cut_clipboard*: proc (text_view: PGtkTextView){.cdecl.} + copy_clipboard*: proc (text_view: PGtkTextView){.cdecl.} + paste_clipboard*: proc (text_view: PGtkTextView){.cdecl.} + toggle_overwrite*: proc (text_view: PGtkTextView){.cdecl.} + move_focus*: proc (text_view: PGtkTextView, direction: TGtkDirectionType){. + cdecl.} + gtk_reserved711: proc (){.cdecl.} + gtk_reserved712: proc (){.cdecl.} + gtk_reserved713: proc (){.cdecl.} + gtk_reserved714: proc (){.cdecl.} + gtk_reserved715: proc (){.cdecl.} + gtk_reserved716: proc (){.cdecl.} + gtk_reserved717: proc (){.cdecl.} + gtk_reserved718: proc (){.cdecl.} + + PGtkTipsQuery* = ptr TGtkTipsQuery + TGtkTipsQuery* = object of TGtkLabel + GtkTipsQuery_flag0*: guint16 + label_inactive*: cstring + label_no_tip*: cstring + caller*: PGtkWidget + last_crossed*: PGtkWidget + query_cursor*: PGdkCursor + + PGtkTipsQueryClass* = ptr TGtkTipsQueryClass + TGtkTipsQueryClass* = object of TGtkLabelClass + start_query*: proc (tips_query: PGtkTipsQuery){.cdecl.} + stop_query*: proc (tips_query: PGtkTipsQuery){.cdecl.} + widget_entered*: proc (tips_query: PGtkTipsQuery, widget: PGtkWidget, + tip_text: cstring, tip_private: cstring){.cdecl.} + widget_selected*: proc (tips_query: PGtkTipsQuery, widget: PGtkWidget, + tip_text: cstring, tip_private: cstring, + event: PGdkEventButton): gint{.cdecl.} + gtk_reserved721: proc (){.cdecl.} + gtk_reserved722: proc (){.cdecl.} + gtk_reserved723: proc (){.cdecl.} + gtk_reserved724: proc (){.cdecl.} + + PGtkTooltips* = ptr TGtkTooltips + PGtkTooltipsData* = ptr TGtkTooltipsData + TGtkTooltipsData* = record + tooltips*: PGtkTooltips + widget*: PGtkWidget + tip_text*: cstring + tip_private*: cstring + + TGtkTooltips* = object of TGtkObject + tip_window*: PGtkWidget + tip_label*: PGtkWidget + active_tips_data*: PGtkTooltipsData + tips_data_list*: PGList + GtkTooltips_flag0*: int32 + flag1*: guint16 + timer_tag*: gint + last_popdown*: TGTimeVal + + PGtkTooltipsClass* = ptr TGtkTooltipsClass + TGtkTooltipsClass* = object of TGtkObjectClass + gtk_reserved1: proc (){.cdecl.} + gtk_reserved2: proc (){.cdecl.} + gtk_reserved3: proc (){.cdecl.} + gtk_reserved4: proc (){.cdecl.} + + PGtkToolbarChildType* = ptr TGtkToolbarChildType + TGtkToolbarChildType* = enum + GTK_TOOLBAR_CHILD_SPACE, GTK_TOOLBAR_CHILD_BUTTON, + GTK_TOOLBAR_CHILD_TOGGLEBUTTON, GTK_TOOLBAR_CHILD_RADIOBUTTON, + GTK_TOOLBAR_CHILD_WIDGET + PGtkToolbarSpaceStyle* = ptr TGtkToolbarSpaceStyle + TGtkToolbarSpaceStyle* = enum + GTK_TOOLBAR_SPACE_EMPTY, GTK_TOOLBAR_SPACE_LINE + PGtkToolbarChild* = ptr TGtkToolbarChild + TGtkToolbarChild* = record + `type`*: TGtkToolbarChildType + widget*: PGtkWidget + icon*: PGtkWidget + label*: PGtkWidget + + PGtkToolbar* = ptr TGtkToolbar + TGtkToolbar* = object of TGtkContainer + num_children*: gint + children*: PGList + orientation*: TGtkOrientation + GtkToolbar_style*: TGtkToolbarStyle + icon_size*: TGtkIconSize + tooltips*: PGtkTooltips + button_maxw*: gint + button_maxh*: gint + style_set_connection*: guint + icon_size_connection*: guint + GtkToolbar_flag0*: guint16 + + PGtkToolbarClass* = ptr TGtkToolbarClass + TGtkToolbarClass* = object of TGtkContainerClass + orientation_changed*: proc (toolbar: PGtkToolbar, + orientation: TGtkOrientation){.cdecl.} + style_changed*: proc (toolbar: PGtkToolbar, style: TGtkToolbarStyle){.cdecl.} + gtk_reserved731: proc (){.cdecl.} + gtk_reserved732: proc (){.cdecl.} + gtk_reserved733: proc (){.cdecl.} + gtk_reserved734: proc (){.cdecl.} + + PGtkTreeViewMode* = ptr TGtkTreeViewMode + TGtkTreeViewMode* = enum + GTK_TREE_VIEW_LINE, GTK_TREE_VIEW_ITEM + PGtkTree* = ptr TGtkTree + TGtkTree* = object of TGtkContainer + children*: PGList + root_tree*: PGtkTree + tree_owner*: PGtkWidget + selection*: PGList + level*: guint + indent_value*: guint + current_indent*: guint + GtkTree_flag0*: guint16 + + PGtkTreeClass* = ptr TGtkTreeClass + TGtkTreeClass* = object of TGtkContainerClass + selection_changed*: proc (tree: PGtkTree){.cdecl.} + select_child*: proc (tree: PGtkTree, child: PGtkWidget){.cdecl.} + unselect_child*: proc (tree: PGtkTree, child: PGtkWidget){.cdecl.} + + PGtkTreeDragSource* = pointer + PGtkTreeDragDest* = pointer + PGtkTreeDragSourceIface* = ptr TGtkTreeDragSourceIface + TGtkTreeDragSourceIface* = object of TGTypeInterface + row_draggable*: proc (drag_source: PGtkTreeDragSource, path: PGtkTreePath): gboolean{. + cdecl.} + drag_data_get*: proc (drag_source: PGtkTreeDragSource, path: PGtkTreePath, + selection_data: PGtkSelectionData): gboolean{.cdecl.} + drag_data_delete*: proc (drag_source: PGtkTreeDragSource, path: PGtkTreePath): gboolean{. + cdecl.} + + PGtkTreeDragDestIface* = ptr TGtkTreeDragDestIface + TGtkTreeDragDestIface* = object of TGTypeInterface + drag_data_received*: proc (drag_dest: PGtkTreeDragDest, dest: PGtkTreePath, + selection_data: PGtkSelectionData): gboolean{. + cdecl.} + row_drop_possible*: proc (drag_dest: PGtkTreeDragDest, + dest_path: PGtkTreePath, + selection_data: PGtkSelectionData): gboolean{. + cdecl.} + + PGtkTreeItem* = ptr TGtkTreeItem + TGtkTreeItem* = object of TGtkItem + subtree*: PGtkWidget + pixmaps_box*: PGtkWidget + plus_pix_widget*: PGtkWidget + minus_pix_widget*: PGtkWidget + pixmaps*: PGList + GtkTreeItem_flag0*: guint16 + + PGtkTreeItemClass* = ptr TGtkTreeItemClass + TGtkTreeItemClass* = object of TGtkItemClass + expand*: proc (tree_item: PGtkTreeItem){.cdecl.} + collapse*: proc (tree_item: PGtkTreeItem){.cdecl.} + + PGtkTreeSelection* = ptr TGtkTreeSelection + TGtkTreeSelectionFunc* = proc (selection: PGtkTreeSelection, + model: PGtkTreeModel, path: PGtkTreePath, + path_currently_selected: gboolean, + data: gpointer): gboolean{.cdecl.} + TGtkTreeSelectionForeachFunc* = proc (model: PGtkTreeModel, + path: PGtkTreePath, iter: PGtkTreeIter, + data: gpointer){.cdecl.} + TGtkTreeSelection* = object of TGObject + tree_view*: PGtkTreeView + thetype*: TGtkSelectionMode + user_func*: TGtkTreeSelectionFunc + user_data*: gpointer + destroy*: TGtkDestroyNotify + + PGtkTreeSelectionClass* = ptr TGtkTreeSelectionClass + TGtkTreeSelectionClass* = object of TGObjectClass + changed*: proc (selection: PGtkTreeSelection){.cdecl.} + gtk_reserved741: proc (){.cdecl.} + gtk_reserved742: proc (){.cdecl.} + gtk_reserved743: proc (){.cdecl.} + gtk_reserved744: proc (){.cdecl.} + + PGtkTreeStore* = ptr TGtkTreeStore + TGtkTreeStore* = object of TGObject + stamp*: gint + root*: gpointer + last*: gpointer + n_columns*: gint + sort_column_id*: gint + sort_list*: PGList + order*: TGtkSortType + column_headers*: PGType + default_sort_func*: TGtkTreeIterCompareFunc + default_sort_data*: gpointer + default_sort_destroy*: TGtkDestroyNotify + GtkTreeStore_flag0*: guint16 + + PGtkTreeStoreClass* = ptr TGtkTreeStoreClass + TGtkTreeStoreClass* = object of TGObjectClass + gtk_reserved751: proc (){.cdecl.} + gtk_reserved752: proc (){.cdecl.} + gtk_reserved753: proc (){.cdecl.} + gtk_reserved754: proc (){.cdecl.} + + PGtkTreeViewColumnSizing* = ptr TGtkTreeViewColumnSizing + TGtkTreeViewColumnSizing* = enum + GTK_TREE_VIEW_COLUMN_GROW_ONLY, GTK_TREE_VIEW_COLUMN_AUTOSIZE, + GTK_TREE_VIEW_COLUMN_FIXED + TGtkTreeCellDataFunc* = proc (tree_column: PGtkTreeViewColumn, + cell: PGtkCellRenderer, + tree_model: PGtkTreeModel, iter: PGtkTreeIter, + data: gpointer){.cdecl.} + TGtkTreeViewColumn* = object of TGtkObject + tree_view*: PGtkWidget + button*: PGtkWidget + child*: PGtkWidget + arrow*: PGtkWidget + alignment*: PGtkWidget + window*: PGdkWindow + editable_widget*: PGtkCellEditable + xalign*: gfloat + property_changed_signal*: guint + spacing*: gint + column_type*: TGtkTreeViewColumnSizing + requested_width*: gint + button_request*: gint + resized_width*: gint + width*: gint + fixed_width*: gint + min_width*: gint + max_width*: gint + drag_x*: gint + drag_y*: gint + title*: cstring + cell_list*: PGList + sort_clicked_signal*: guint + sort_column_changed_signal*: guint + sort_column_id*: gint + sort_order*: TGtkSortType + GtkTreeViewColumn_flag0*: guint16 + + PGtkTreeViewColumnClass* = ptr TGtkTreeViewColumnClass + TGtkTreeViewColumnClass* = object of TGtkObjectClass + clicked*: proc (tree_column: PGtkTreeViewColumn){.cdecl.} + gtk_reserved751: proc (){.cdecl.} + gtk_reserved752: proc (){.cdecl.} + gtk_reserved753: proc (){.cdecl.} + gtk_reserved754: proc (){.cdecl.} + + PGtkRBNodeColor* = ptr TGtkRBNodeColor + TGtkRBNodeColor* = int32 + PGtkRBTree* = ptr TGtkRBTree + PGtkRBNode* = ptr TGtkRBNode + TGtkRBTreeTraverseFunc* = proc (tree: PGtkRBTree, node: PGtkRBNode, + data: gpointer){.cdecl.} + TGtkRBTree* = record + root*: PGtkRBNode + `nil`*: PGtkRBNode + parent_tree*: PGtkRBTree + parent_node*: PGtkRBNode + + TGtkRBNode* = record + flag0*: guint16 + left*: PGtkRBNode + right*: PGtkRBNode + parent*: PGtkRBNode + count*: gint + offset*: gint + children*: PGtkRBTree + + PGtkTreeRowReference* = pointer + PGtkTreeViewFlags* = ptr TGtkTreeViewFlags + TGtkTreeViewFlags* = int32 + TGtkTreeViewSearchDialogPositionFunc* = proc (tree_view: PGtkTreeView, + search_dialog: PGtkWidget){.cdecl.} + PGtkTreeViewColumnReorder* = ptr TGtkTreeViewColumnReorder + TGtkTreeViewColumnReorder* = record + left_align*: gint + right_align*: gint + left_column*: PGtkTreeViewColumn + right_column*: PGtkTreeViewColumn + + PGtkTreeViewPrivate* = ptr TGtkTreeViewPrivate + TGtkTreeViewPrivate* = record + model*: PGtkTreeModel + flags*: guint + tree*: PGtkRBTree + button_pressed_node*: PGtkRBNode + button_pressed_tree*: PGtkRBTree + children*: PGList + width*: gint + height*: gint + expander_size*: gint + hadjustment*: PGtkAdjustment + vadjustment*: PGtkAdjustment + bin_window*: PGdkWindow + header_window*: PGdkWindow + drag_window*: PGdkWindow + drag_highlight_window*: PGdkWindow + drag_column*: PGtkTreeViewColumn + last_button_press*: PGtkTreeRowReference + last_button_press_2*: PGtkTreeRowReference + top_row*: PGtkTreeRowReference + top_row_dy*: gint + dy*: gint + drag_column_x*: gint + expander_column*: PGtkTreeViewColumn + edited_column*: PGtkTreeViewColumn + presize_handler_timer*: guint + validate_rows_timer*: guint + scroll_sync_timer*: guint + focus_column*: PGtkTreeViewColumn + anchor*: PGtkTreeRowReference + cursor*: PGtkTreeRowReference + drag_pos*: gint + x_drag*: gint + prelight_node*: PGtkRBNode + prelight_tree*: PGtkRBTree + expanded_collapsed_node*: PGtkRBNode + expanded_collapsed_tree*: PGtkRBTree + expand_collapse_timeout*: guint + selection*: PGtkTreeSelection + n_columns*: gint + columns*: PGList + header_height*: gint + column_drop_func*: TGtkTreeViewColumnDropFunc + column_drop_func_data*: gpointer + column_drop_func_data_destroy*: TGtkDestroyNotify + column_drag_info*: PGList + cur_reorder*: PGtkTreeViewColumnReorder + destroy_count_func*: TGtkTreeDestroyCountFunc + destroy_count_data*: gpointer + destroy_count_destroy*: TGtkDestroyNotify + scroll_timeout*: guint + drag_dest_row*: PGtkTreeRowReference + drag_dest_pos*: TGtkTreeViewDropPosition + open_dest_timeout*: guint + pressed_button*: gint + press_start_x*: gint + press_start_y*: gint + scroll_to_path*: PGtkTreeRowReference + scroll_to_column*: PGtkTreeViewColumn + scroll_to_row_align*: gfloat + scroll_to_col_align*: gfloat + flag0*: guint16 + search_column*: gint + search_dialog_position_func*: TGtkTreeViewSearchDialogPositionFunc + search_equal_func*: TGtkTreeViewSearchEqualFunc + search_user_data*: gpointer + search_destroy*: TGtkDestroyNotify + + TGtkTreeView* = object of TGtkContainer + priv*: PGtkTreeViewPrivate + + PGtkTreeViewClass* = ptr TGtkTreeViewClass + TGtkTreeViewClass* = object of TGtkContainerClass + set_scroll_adjustments*: proc (tree_view: PGtkTreeView, + hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment){.cdecl.} + row_activated*: proc (tree_view: PGtkTreeView, path: PGtkTreePath, + column: PGtkTreeViewColumn){.cdecl.} + test_expand_row*: proc (tree_view: PGtkTreeView, iter: PGtkTreeIter, + path: PGtkTreePath): gboolean{.cdecl.} + test_collapse_row*: proc (tree_view: PGtkTreeView, iter: PGtkTreeIter, + path: PGtkTreePath): gboolean{.cdecl.} + row_expanded*: proc (tree_view: PGtkTreeView, iter: PGtkTreeIter, + path: PGtkTreePath){.cdecl.} + row_collapsed*: proc (tree_view: PGtkTreeView, iter: PGtkTreeIter, + path: PGtkTreePath){.cdecl.} + columns_changed*: proc (tree_view: PGtkTreeView){.cdecl.} + cursor_changed*: proc (tree_view: PGtkTreeView){.cdecl.} + move_cursor*: proc (tree_view: PGtkTreeView, step: TGtkMovementStep, + count: gint): gboolean{.cdecl.} + select_all*: proc (tree_view: PGtkTreeView){.cdecl.} + unselect_all*: proc (tree_view: PGtkTreeView){.cdecl.} + select_cursor_row*: proc (tree_view: PGtkTreeView, start_editing: gboolean){. + cdecl.} + toggle_cursor_row*: proc (tree_view: PGtkTreeView){.cdecl.} + expand_collapse_cursor_row*: proc (tree_view: PGtkTreeView, + logical: gboolean, expand: gboolean, + open_all: gboolean){.cdecl.} + select_cursor_parent*: proc (tree_view: PGtkTreeView){.cdecl.} + start_interactive_search*: proc (tree_view: PGtkTreeView){.cdecl.} + gtk_reserved760: proc (){.cdecl.} + gtk_reserved761: proc (){.cdecl.} + gtk_reserved762: proc (){.cdecl.} + gtk_reserved763: proc (){.cdecl.} + gtk_reserved764: proc (){.cdecl.} + + PGtkVButtonBox* = ptr TGtkVButtonBox + TGtkVButtonBox* = object of TGtkButtonBox + + PGtkVButtonBoxClass* = ptr TGtkVButtonBoxClass + TGtkVButtonBoxClass* = object of TGtkButtonBoxClass + + PGtkViewport* = ptr TGtkViewport + TGtkViewport* = object of TGtkBin + shadow_type*: TGtkShadowType + view_window*: PGdkWindow + bin_window*: PGdkWindow + hadjustment*: PGtkAdjustment + vadjustment*: PGtkAdjustment + + PGtkViewportClass* = ptr TGtkViewportClass + TGtkViewportClass* = object of TGtkBinClass + set_scroll_adjustments*: proc (viewport: PGtkViewport, + hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment){.cdecl.} + + PGtkVPaned* = ptr TGtkVPaned + TGtkVPaned* = object of TGtkPaned + + PGtkVPanedClass* = ptr TGtkVPanedClass + TGtkVPanedClass* = object of TGtkPanedClass + + PGtkVRuler* = ptr TGtkVRuler + TGtkVRuler* = object of TGtkRuler + + PGtkVRulerClass* = ptr TGtkVRulerClass + TGtkVRulerClass* = object of TGtkRulerClass + + PGtkVScale* = ptr TGtkVScale + TGtkVScale* = object of TGtkScale + + PGtkVScaleClass* = ptr TGtkVScaleClass + TGtkVScaleClass* = object of TGtkScaleClass + + PGtkVScrollbar* = ptr TGtkVScrollbar + TGtkVScrollbar* = object of TGtkScrollbar + + PGtkVScrollbarClass* = ptr TGtkVScrollbarClass + TGtkVScrollbarClass* = object of TGtkScrollbarClass + + PGtkVSeparator* = ptr TGtkVSeparator + TGtkVSeparator* = object of TGtkSeparator + + PGtkVSeparatorClass* = ptr TGtkVSeparatorClass + TGtkVSeparatorClass* = object of TGtkSeparatorClass + + +const + GTK_IN_DESTRUCTION* = 1 shl 0 + GTK_FLOATING* = 1 shl 1 + GTK_RESERVED_1* = 1 shl 2 + GTK_RESERVED_2* = 1 shl 3 + GTK_ARG_READABLE* = G_PARAM_READABLE + GTK_ARG_WRITABLE* = G_PARAM_WRITABLE + GTK_ARG_CONSTRUCT* = G_PARAM_CONSTRUCT + GTK_ARG_CONSTRUCT_ONLY* = G_PARAM_CONSTRUCT_ONLY + GTK_ARG_CHILD_ARG* = 1 shl 4 + +proc GTK_TYPE_OBJECT*(): GType +proc GTK_OBJECT*(anObject: pointer): PGtkObject +proc GTK_OBJECT_CLASS*(klass: pointer): PGtkObjectClass +proc GTK_IS_OBJECT*(anObject: pointer): bool +proc GTK_IS_OBJECT_CLASS*(klass: pointer): bool +proc GTK_OBJECT_GET_CLASS*(anObject: pointer): PGtkObjectClass +proc GTK_OBJECT_TYPE*(anObject: pointer): GType +proc GTK_OBJECT_TYPE_NAME*(anObject: pointer): cstring +proc GTK_OBJECT_FLAGS*(obj: pointer): guint32 +proc GTK_OBJECT_FLOATING*(obj: pointer): gboolean +proc GTK_OBJECT_SET_FLAGS*(obj: pointer, flag: guint32) +proc GTK_OBJECT_UNSET_FLAGS*(obj: pointer, flag: guint32) +proc gtk_object_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_object_get_type".} +proc gtk_object_new*(thetype: TGtkType, first_property_name: cstring): PGtkObject{. + cdecl, varargs, dynlib: gtklib, importc: "gtk_object_new".} +proc gtk_object_sink*(anObject: PGtkObject){.cdecl, dynlib: gtklib, + importc: "gtk_object_sink".} +proc gtk_object_destroy*(anObject: PGtkObject){.cdecl, dynlib: gtklib, + importc: "gtk_object_destroy".} +const + GTK_TYPE_INVALID* = G_TYPE_INVALID + GTK_TYPE_NONE* = G_TYPE_NONE + GTK_TYPE_ENUM* = G_TYPE_ENUM + GTK_TYPE_FLAGS* = G_TYPE_FLAGS + GTK_TYPE_CHAR* = G_TYPE_CHAR + GTK_TYPE_UCHAR* = G_TYPE_UCHAR + GTK_TYPE_BOOL* = G_TYPE_BOOLEAN + GTK_TYPE_INT* = G_TYPE_INT + GTK_TYPE_UINT* = G_TYPE_UINT + GTK_TYPE_LONG* = G_TYPE_LONG + GTK_TYPE_ULONG* = G_TYPE_ULONG + GTK_TYPE_FLOAT* = G_TYPE_FLOAT + GTK_TYPE_DOUBLE* = G_TYPE_DOUBLE + GTK_TYPE_STRING* = G_TYPE_STRING + GTK_TYPE_BOXED* = G_TYPE_BOXED + GTK_TYPE_POINTER* = G_TYPE_POINTER + +proc GTK_TYPE_IDENTIFIER*(): GType +proc gtk_identifier_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_identifier_get_type".} +proc GTK_SIGNAL_FUNC*(f: pointer): TGtkSignalFunc +proc gtk_type_class*(thetype: TGtkType): gpointer{.cdecl, dynlib: gtklib, + importc: "gtk_type_class".} +const + GTK_TOPLEVEL* = 1 shl 4 + GTK_NO_WINDOW* = 1 shl 5 + GTK_REALIZED* = 1 shl 6 + GTK_MAPPED* = 1 shl 7 + GTK_VISIBLE* = 1 shl 8 + GTK_SENSITIVE* = 1 shl 9 + GTK_PARENT_SENSITIVE* = 1 shl 10 + GTK_CAN_FOCUS* = 1 shl 11 + GTK_HAS_FOCUS* = 1 shl 12 + GTK_CAN_DEFAULT* = 1 shl 13 + GTK_HAS_DEFAULT* = 1 shl 14 + GTK_HAS_GRAB* = 1 shl 15 + GTK_RC_STYLE* = 1 shl 16 + GTK_COMPOSITE_CHILD* = 1 shl 17 + GTK_NO_REPARENT* = 1 shl 18 + GTK_APP_PAINTABLE* = 1 shl 19 + GTK_RECEIVES_DEFAULT* = 1 shl 20 + GTK_DOUBLE_BUFFERED* = 1 shl 21 + +const + bm_TGtkWidgetAuxInfo_x_set* = 0x00000001 + bp_TGtkWidgetAuxInfo_x_set* = 0 + bm_TGtkWidgetAuxInfo_y_set* = 0x00000002 + bp_TGtkWidgetAuxInfo_y_set* = 1 + +proc GTK_TYPE_WIDGET*(): GType +proc GTK_WIDGET*(widget: pointer): PGtkWidget +proc GTK_WIDGET_CLASS*(klass: pointer): PGtkWidgetClass +proc GTK_IS_WIDGET*(widget: pointer): bool +proc GTK_IS_WIDGET_CLASS*(klass: pointer): bool +proc GTK_WIDGET_GET_CLASS*(obj: pointer): PGtkWidgetClass +proc GTK_WIDGET_TYPE*(wid: pointer): GType +proc GTK_WIDGET_STATE*(wid: pointer): int32 +proc GTK_WIDGET_SAVED_STATE*(wid: pointer): int32 +proc GTK_WIDGET_FLAGS*(wid: pointer): guint32 +proc GTK_WIDGET_TOPLEVEL*(wid: pointer): gboolean +proc GTK_WIDGET_NO_WINDOW*(wid: pointer): gboolean +proc GTK_WIDGET_REALIZED*(wid: pointer): gboolean +proc GTK_WIDGET_MAPPED*(wid: pointer): gboolean +proc GTK_WIDGET_VISIBLE*(wid: pointer): gboolean +proc GTK_WIDGET_DRAWABLE*(wid: pointer): gboolean +proc GTK_WIDGET_SENSITIVE*(wid: pointer): gboolean +proc GTK_WIDGET_PARENT_SENSITIVE*(wid: pointer): gboolean +proc GTK_WIDGET_IS_SENSITIVE*(wid: pointer): gboolean +proc GTK_WIDGET_CAN_FOCUS*(wid: pointer): gboolean +proc GTK_WIDGET_HAS_FOCUS*(wid: pointer): gboolean +proc GTK_WIDGET_CAN_DEFAULT*(wid: pointer): gboolean +proc GTK_WIDGET_HAS_DEFAULT*(wid: pointer): gboolean +proc GTK_WIDGET_HAS_GRAB*(wid: pointer): gboolean +proc GTK_WIDGET_RC_STYLE*(wid: pointer): gboolean +proc GTK_WIDGET_COMPOSITE_CHILD*(wid: pointer): gboolean +proc GTK_WIDGET_APP_PAINTABLE*(wid: pointer): gboolean +proc GTK_WIDGET_RECEIVES_DEFAULT*(wid: pointer): gboolean +proc GTK_WIDGET_DOUBLE_BUFFERED*(wid: pointer): gboolean +proc GTK_WIDGET_SET_FLAGS*(wid: PGtkWidget, flags: TGtkWidgetFlags): TGtkWidgetFlags +proc GTK_WIDGET_UNSET_FLAGS*(wid: PGtkWidget, flags: TGtkWidgetFlags): TGtkWidgetFlags +proc GTK_TYPE_REQUISITION*(): GType +proc x_set*(a: var TGtkWidgetAuxInfo): guint +proc set_x_set*(a: var TGtkWidgetAuxInfo, x_set: guint) +proc y_set*(a: var TGtkWidgetAuxInfo): guint +proc set_y_set*(a: var TGtkWidgetAuxInfo, y_set: guint) +proc gtk_widget_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_widget_get_type".} +proc gtk_widget_ref*(widget: PGtkWidget): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_widget_ref".} +proc gtk_widget_unref*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_unref".} +proc gtk_widget_destroy*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_destroy".} +proc gtk_widget_destroyed*(widget: PGtkWidget, r: var PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_widget_destroyed".} +proc gtk_widget_unparent*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_unparent".} +proc gtk_widget_show*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_show".} +proc gtk_widget_show_now*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_show_now".} +proc gtk_widget_hide*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_hide".} +proc gtk_widget_show_all*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_show_all".} +proc gtk_widget_hide_all*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_hide_all".} +proc gtk_widget_map*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_map".} +proc gtk_widget_unmap*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_unmap".} +proc gtk_widget_realize*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_realize".} +proc gtk_widget_unrealize*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_unrealize".} +proc gtk_widget_queue_draw*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_queue_draw".} +proc gtk_widget_queue_draw_area*(widget: PGtkWidget, x: gint, y: gint, + width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_widget_queue_draw_area".} +proc gtk_widget_queue_resize*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_queue_resize".} +proc gtk_widget_size_request*(widget: PGtkWidget, requisition: PGtkRequisition){. + cdecl, dynlib: gtklib, importc: "gtk_widget_size_request".} +proc gtk_widget_size_allocate*(widget: PGtkWidget, allocation: PGtkAllocation){. + cdecl, dynlib: gtklib, importc: "gtk_widget_size_allocate".} +proc gtk_widget_get_child_requisition*(widget: PGtkWidget, + requisition: PGtkRequisition){.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_child_requisition".} +proc gtk_widget_add_accelerator*(widget: PGtkWidget, accel_signal: cstring, + accel_group: PGtkAccelGroup, accel_key: guint, + accel_mods: TGdkModifierType, + accel_flags: TGtkAccelFlags){.cdecl, + dynlib: gtklib, importc: "gtk_widget_add_accelerator".} +proc gtk_widget_remove_accelerator*(widget: PGtkWidget, + accel_group: PGtkAccelGroup, + accel_key: guint, + accel_mods: TGdkModifierType): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_widget_remove_accelerator".} +proc gtk_widget_set_accel_path*(widget: PGtkWidget, accel_path: cstring, + accel_group: PGtkAccelGroup){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_accel_path".} +proc gtk_widget_get_accel_path*(widget: PGtkWidget, locked: Pgboolean): cstring{. + cdecl, dynlib: gtklib, importc: "_gtk_widget_get_accel_path".} +proc gtk_widget_list_accel_closures*(widget: PGtkWidget): PGList{.cdecl, + dynlib: gtklib, importc: "gtk_widget_list_accel_closures".} +proc gtk_widget_mnemonic_activate*(widget: PGtkWidget, group_cycling: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_widget_mnemonic_activate".} +proc gtk_widget_event*(widget: PGtkWidget, event: PGdkEvent): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_widget_event".} +proc gtk_widget_send_expose*(widget: PGtkWidget, event: PGdkEvent): gint{.cdecl, + dynlib: gtklib, importc: "gtk_widget_send_expose".} +proc gtk_widget_activate*(widget: PGtkWidget): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_widget_activate".} +proc gtk_widget_set_scroll_adjustments*(widget: PGtkWidget, + hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_scroll_adjustments".} +proc gtk_widget_reparent*(widget: PGtkWidget, new_parent: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_widget_reparent".} +proc gtk_widget_intersect*(widget: PGtkWidget, area: PGdkRectangle, + intersection: PGdkRectangle): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_widget_intersect".} +proc gtk_widget_region_intersect*(widget: PGtkWidget, region: PGdkRegion): PGdkRegion{. + cdecl, dynlib: gtklib, importc: "gtk_widget_region_intersect".} +proc gtk_widget_freeze_child_notify*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_freeze_child_notify".} +proc gtk_widget_child_notify*(widget: PGtkWidget, child_property: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_widget_child_notify".} +proc gtk_widget_thaw_child_notify*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_thaw_child_notify".} +proc gtk_widget_is_focus*(widget: PGtkWidget): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_widget_is_focus".} +proc gtk_widget_grab_focus*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_grab_focus".} +proc gtk_widget_grab_default*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_grab_default".} +proc gtk_widget_set_name*(widget: PGtkWidget, name: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_name".} +proc gtk_widget_get_name*(widget: PGtkWidget): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_widget_get_name".} +proc gtk_widget_set_state*(widget: PGtkWidget, state: TGtkStateType){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_state".} +proc gtk_widget_set_sensitive*(widget: PGtkWidget, sensitive: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_sensitive".} +proc gtk_widget_set_app_paintable*(widget: PGtkWidget, app_paintable: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_app_paintable".} +proc gtk_widget_set_double_buffered*(widget: PGtkWidget, + double_buffered: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_double_buffered".} +proc gtk_widget_set_redraw_on_allocate*(widget: PGtkWidget, + redraw_on_allocate: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_redraw_on_allocate".} +proc gtk_widget_set_parent*(widget: PGtkWidget, parent: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_parent".} +proc gtk_widget_set_parent_window*(widget: PGtkWidget, parent_window: PGdkWindow){. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_parent_window".} +proc gtk_widget_set_child_visible*(widget: PGtkWidget, is_visible: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_child_visible".} +proc gtk_widget_get_child_visible*(widget: PGtkWidget): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_child_visible".} +proc gtk_widget_get_parent*(widget: PGtkWidget): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_parent".} +proc gtk_widget_get_parent_window*(widget: PGtkWidget): PGdkWindow{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_parent_window".} +proc gtk_widget_child_focus*(widget: PGtkWidget, direction: TGtkDirectionType): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_widget_child_focus".} +proc gtk_widget_set_size_request*(widget: PGtkWidget, width: gint, height: gint){. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_size_request".} +proc gtk_widget_get_size_request*(widget: PGtkWidget, width: Pgint, + height: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_widget_get_size_request".} +proc gtk_widget_set_events*(widget: PGtkWidget, events: gint){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_events".} +proc gtk_widget_add_events*(widget: PGtkWidget, events: gint){.cdecl, + dynlib: gtklib, importc: "gtk_widget_add_events".} +proc gtk_widget_set_extension_events*(widget: PGtkWidget, + mode: TGdkExtensionMode){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_extension_events".} +proc gtk_widget_get_extension_events*(widget: PGtkWidget): TGdkExtensionMode{. + cdecl, dynlib: gtklib, importc: "gtk_widget_get_extension_events".} +proc gtk_widget_get_toplevel*(widget: PGtkWidget): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_toplevel".} +proc gtk_widget_get_ancestor*(widget: PGtkWidget, widget_type: TGtkType): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_widget_get_ancestor".} +proc gtk_widget_get_colormap*(widget: PGtkWidget): PGdkColormap{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_colormap".} +proc gtk_widget_get_visual*(widget: PGtkWidget): PGdkVisual{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_visual".} +proc gtk_widget_get_screen*(widget: PGtkWidget): PGdkScreen{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_screen".} +proc gtk_widget_has_screen*(widget: PGtkWidget): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_widget_has_screen".} +proc gtk_widget_get_display*(widget: PGtkWidget): PGdkDisplay{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_display".} +proc gtk_widget_get_root_window*(widget: PGtkWidget): PGdkWindow{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_root_window".} +proc gtk_widget_get_settings*(widget: PGtkWidget): PGtkSettings{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_settings".} +proc gtk_widget_get_clipboard*(widget: PGtkWidget, selection: TGdkAtom): PGtkClipboard{. + cdecl, dynlib: gtklib, importc: "gtk_widget_get_clipboard".} +proc gtk_widget_get_accessible*(widget: PGtkWidget): PAtkObject{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_accessible".} +proc gtk_widget_set_colormap*(widget: PGtkWidget, colormap: PGdkColormap){. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_colormap".} +proc gtk_widget_get_events*(widget: PGtkWidget): gint{.cdecl, dynlib: gtklib, + importc: "gtk_widget_get_events".} +proc gtk_widget_get_pointer*(widget: PGtkWidget, x: Pgint, y: Pgint){.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_pointer".} +proc gtk_widget_is_ancestor*(widget: PGtkWidget, ancestor: PGtkWidget): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_widget_is_ancestor".} +proc gtk_widget_translate_coordinates*(src_widget: PGtkWidget, + dest_widget: PGtkWidget, src_x: gint, + src_y: gint, dest_x: Pgint, dest_y: Pgint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_widget_translate_coordinates".} +proc gtk_widget_hide_on_delete*(widget: PGtkWidget): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_widget_hide_on_delete".} +proc gtk_widget_set_style*(widget: PGtkWidget, style: PGtkStyle){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_style".} +proc gtk_widget_ensure_style*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_ensure_style".} +proc gtk_widget_get_style*(widget: PGtkWidget): PGtkStyle{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_style".} +proc gtk_widget_modify_style*(widget: PGtkWidget, style: PGtkRcStyle){.cdecl, + dynlib: gtklib, importc: "gtk_widget_modify_style".} +proc gtk_widget_get_modifier_style*(widget: PGtkWidget): PGtkRcStyle{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_modifier_style".} +proc gtk_widget_modify_fg*(widget: PGtkWidget, state: TGtkStateType, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_widget_modify_fg".} +proc gtk_widget_modify_bg*(widget: PGtkWidget, state: TGtkStateType, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_widget_modify_bg".} +proc gtk_widget_modify_text*(widget: PGtkWidget, state: TGtkStateType, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_widget_modify_text".} +proc gtk_widget_modify_base*(widget: PGtkWidget, state: TGtkStateType, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_widget_modify_base".} +proc gtk_widget_modify_font*(widget: PGtkWidget, + font_desc: PPangoFontDescription){.cdecl, + dynlib: gtklib, importc: "gtk_widget_modify_font".} +proc gtk_widget_create_pango_context*(widget: PGtkWidget): PPangoContext{.cdecl, + dynlib: gtklib, importc: "gtk_widget_create_pango_context".} +proc gtk_widget_get_pango_context*(widget: PGtkWidget): PPangoContext{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_pango_context".} +proc gtk_widget_create_pango_layout*(widget: PGtkWidget, text: cstring): PPangoLayout{. + cdecl, dynlib: gtklib, importc: "gtk_widget_create_pango_layout".} +proc gtk_widget_render_icon*(widget: PGtkWidget, stock_id: cstring, + size: TGtkIconSize, detail: cstring): PGdkPixbuf{. + cdecl, dynlib: gtklib, importc: "gtk_widget_render_icon".} +proc gtk_widget_set_composite_name*(widget: PGtkWidget, name: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_composite_name".} +proc gtk_widget_get_composite_name*(widget: PGtkWidget): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_composite_name".} +proc gtk_widget_reset_rc_styles*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_reset_rc_styles".} +proc gtk_widget_push_colormap*(cmap: PGdkColormap){.cdecl, dynlib: gtklib, + importc: "gtk_widget_push_colormap".} +proc gtk_widget_push_composite_child*(){.cdecl, dynlib: gtklib, + importc: "gtk_widget_push_composite_child".} +proc gtk_widget_pop_composite_child*(){.cdecl, dynlib: gtklib, importc: "gtk_widget_pop_composite_child".} +proc gtk_widget_pop_colormap*(){.cdecl, dynlib: gtklib, + importc: "gtk_widget_pop_colormap".} +proc gtk_widget_class_install_style_property*(klass: PGtkWidgetClass, + pspec: PGParamSpec){.cdecl, dynlib: gtklib, + importc: "gtk_widget_class_install_style_property".} +proc gtk_widget_class_install_style_property_parser*(klass: PGtkWidgetClass, + pspec: PGParamSpec, parser: TGtkRcPropertyParser){.cdecl, dynlib: gtklib, + importc: "gtk_widget_class_install_style_property_parser".} +proc gtk_widget_class_find_style_property*(klass: PGtkWidgetClass, + property_name: cstring): PGParamSpec{.cdecl, dynlib: gtklib, + importc: "gtk_widget_class_find_style_property".} +proc gtk_widget_class_list_style_properties*(klass: PGtkWidgetClass, + n_properties: Pguint): PPGParamSpec{.cdecl, dynlib: gtklib, + importc: "gtk_widget_class_list_style_properties".} +proc gtk_widget_style_get_property*(widget: PGtkWidget, property_name: cstring, + value: PGValue){.cdecl, dynlib: gtklib, + importc: "gtk_widget_style_get_property".} +proc gtk_widget_set_default_colormap*(colormap: PGdkColormap){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_default_colormap".} +proc gtk_widget_get_default_style*(): PGtkStyle{.cdecl, dynlib: gtklib, + importc: "gtk_widget_get_default_style".} +proc gtk_widget_set_direction*(widget: PGtkWidget, dir: TGtkTextDirection){. + cdecl, dynlib: gtklib, importc: "gtk_widget_set_direction".} +proc gtk_widget_get_direction*(widget: PGtkWidget): TGtkTextDirection{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_direction".} +proc gtk_widget_set_default_direction*(dir: TGtkTextDirection){.cdecl, + dynlib: gtklib, importc: "gtk_widget_set_default_direction".} +proc gtk_widget_get_default_direction*(): TGtkTextDirection{.cdecl, + dynlib: gtklib, importc: "gtk_widget_get_default_direction".} +proc gtk_widget_shape_combine_mask*(widget: PGtkWidget, shape_mask: PGdkBitmap, + offset_x: gint, offset_y: gint){.cdecl, + dynlib: gtklib, importc: "gtk_widget_shape_combine_mask".} +proc gtk_widget_reset_shapes*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_widget_reset_shapes".} +proc gtk_widget_path*(widget: PGtkWidget, path_length: Pguint, path: PPgchar, + path_reversed: PPgchar){.cdecl, dynlib: gtklib, + importc: "gtk_widget_path".} +proc gtk_widget_class_path*(widget: PGtkWidget, path_length: Pguint, + path: PPgchar, path_reversed: PPgchar){.cdecl, + dynlib: gtklib, importc: "gtk_widget_class_path".} +proc gtk_requisition_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_requisition_get_type".} +proc gtk_requisition_copy*(requisition: PGtkRequisition): PGtkRequisition{. + cdecl, dynlib: gtklib, importc: "gtk_requisition_copy".} +proc gtk_requisition_free*(requisition: PGtkRequisition){.cdecl, dynlib: gtklib, + importc: "gtk_requisition_free".} +proc gtk_widget_get_aux_info*(widget: PGtkWidget, create: gboolean): PGtkWidgetAuxInfo{. + cdecl, dynlib: gtklib, importc: "gtk_widget_get_aux_info".} +proc gtk_widget_propagate_hierarchy_changed*(widget: PGtkWidget, + previous_toplevel: PGtkWidget){.cdecl, dynlib: gtklib, importc: "_gtk_widget_propagate_hierarchy_changed".} +proc gtk_widget_peek_colormap*(): PGdkColormap{.cdecl, dynlib: gtklib, + importc: "_gtk_widget_peek_colormap".} +proc GTK_TYPE_MISC*(): GType +proc GTK_MISC*(obj: pointer): PGtkMisc +proc GTK_MISC_CLASS*(klass: pointer): PGtkMiscClass +proc GTK_IS_MISC*(obj: pointer): bool +proc GTK_IS_MISC_CLASS*(klass: pointer): bool +proc GTK_MISC_GET_CLASS*(obj: pointer): PGtkMiscClass +proc gtk_misc_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_misc_get_type".} +proc gtk_misc_set_alignment*(misc: PGtkMisc, xalign: gfloat, yalign: gfloat){. + cdecl, dynlib: gtklib, importc: "gtk_misc_set_alignment".} +proc gtk_misc_get_alignment*(misc: PGtkMisc, xalign, yalign: var Pgfloat){. + cdecl, dynlib: gtklib, importc: "gtk_misc_get_alignment".} +proc gtk_misc_set_padding*(misc: PGtkMisc, xpad: gint, ypad: gint){.cdecl, + dynlib: gtklib, importc: "gtk_misc_set_padding".} +proc gtk_misc_get_padding*(misc: PGtkMisc, xpad, ypad: var Pgint){.cdecl, + dynlib: gtklib, importc: "gtk_misc_get_padding".} +const + GTK_ACCEL_VISIBLE* = 1 shl 0 + GTK_ACCEL_LOCKED* = 1 shl 1 + GTK_ACCEL_MASK* = 0x00000007 + bm_TGtkAccelKey_accel_flags* = 0x0000FFFF + bp_TGtkAccelKey_accel_flags* = 0 + +proc GTK_TYPE_ACCEL_GROUP*(): GType +proc GTK_ACCEL_GROUP*(anObject: pointer): PGtkAccelGroup +proc GTK_ACCEL_GROUP_CLASS*(klass: pointer): PGtkAccelGroupClass +proc GTK_IS_ACCEL_GROUP*(anObject: pointer): bool +proc GTK_IS_ACCEL_GROUP_CLASS*(klass: pointer): bool +proc GTK_ACCEL_GROUP_GET_CLASS*(obj: pointer): PGtkAccelGroupClass +proc accel_flags*(a: var TGtkAccelKey): guint +proc set_accel_flags*(a: var TGtkAccelKey, `accel_flags`: guint) +proc gtk_accel_group_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_accel_group_get_type".} +proc gtk_accel_group_new*(): PGtkAccelGroup{.cdecl, dynlib: gtklib, + importc: "gtk_accel_group_new".} +proc gtk_accel_group_lock*(accel_group: PGtkAccelGroup){.cdecl, dynlib: gtklib, + importc: "gtk_accel_group_lock".} +proc gtk_accel_group_unlock*(accel_group: PGtkAccelGroup){.cdecl, + dynlib: gtklib, importc: "gtk_accel_group_unlock".} +proc gtk_accel_group_connect*(accel_group: PGtkAccelGroup, accel_key: guint, + accel_mods: TGdkModifierType, + accel_flags: TGtkAccelFlags, closure: PGClosure){. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_connect".} +proc gtk_accel_group_connect_by_path*(accel_group: PGtkAccelGroup, + accel_path: cstring, closure: PGClosure){. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_connect_by_path".} +proc gtk_accel_group_disconnect*(accel_group: PGtkAccelGroup, closure: PGClosure): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_disconnect".} +proc gtk_accel_group_disconnect_key*(accel_group: PGtkAccelGroup, + accel_key: guint, + accel_mods: TGdkModifierType): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_disconnect_key".} +proc gtk_accel_group_attach*(accel_group: PGtkAccelGroup, anObject: PGObject){. + cdecl, dynlib: gtklib, importc: "_gtk_accel_group_attach".} +proc gtk_accel_group_detach*(accel_group: PGtkAccelGroup, anObject: PGObject){. + cdecl, dynlib: gtklib, importc: "_gtk_accel_group_detach".} +proc gtk_accel_groups_activate*(anObject: PGObject, accel_key: guint, + accel_mods: TGdkModifierType): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_accel_groups_activate".} +proc gtk_accel_groups_from_object*(anObject: PGObject): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_accel_groups_from_object".} +proc gtk_accel_group_find*(accel_group: PGtkAccelGroup, + find_func: Tgtk_accel_group_find_func, data: gpointer): PGtkAccelKey{. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_find".} +proc gtk_accel_group_from_accel_closure*(closure: PGClosure): PGtkAccelGroup{. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_from_accel_closure".} +proc gtk_accelerator_valid*(keyval: guint, modifiers: TGdkModifierType): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_accelerator_valid".} +proc gtk_accelerator_parse*(accelerator: cstring, accelerator_key: Pguint, + accelerator_mods: PGdkModifierType){.cdecl, + dynlib: gtklib, importc: "gtk_accelerator_parse".} +proc gtk_accelerator_name*(accelerator_key: guint, + accelerator_mods: TGdkModifierType): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_accelerator_name".} +proc gtk_accelerator_set_default_mod_mask*(default_mod_mask: TGdkModifierType){. + cdecl, dynlib: gtklib, importc: "gtk_accelerator_set_default_mod_mask".} +proc gtk_accelerator_get_default_mod_mask*(): guint{.cdecl, dynlib: gtklib, + importc: "gtk_accelerator_get_default_mod_mask".} +proc gtk_accel_group_query*(accel_group: PGtkAccelGroup, accel_key: guint, + accel_mods: TGdkModifierType, n_entries: Pguint): PGtkAccelGroupEntry{. + cdecl, dynlib: gtklib, importc: "gtk_accel_group_query".} +proc gtk_accel_group_reconnect*(accel_group: PGtkAccelGroup, + accel_path_quark: TGQuark){.cdecl, + dynlib: gtklib, importc: "_gtk_accel_group_reconnect".} +const + bm_TGtkContainer_border_width* = 0x0000FFFF + bp_TGtkContainer_border_width* = 0 + bm_TGtkContainer_need_resize* = 0x00010000 + bp_TGtkContainer_need_resize* = 16 + bm_TGtkContainer_resize_mode* = 0x00060000 + bp_TGtkContainer_resize_mode* = 17 + bm_TGtkContainer_reallocate_redraws* = 0x00080000 + bp_TGtkContainer_reallocate_redraws* = 19 + bm_TGtkContainer_has_focus_chain* = 0x00100000 + bp_TGtkContainer_has_focus_chain* = 20 + +proc GTK_TYPE_CONTAINER*(): GType +proc GTK_CONTAINER*(obj: pointer): PGtkContainer +proc GTK_CONTAINER_CLASS*(klass: pointer): PGtkContainerClass +proc GTK_IS_CONTAINER*(obj: pointer): bool +proc GTK_IS_CONTAINER_CLASS*(klass: pointer): bool +proc GTK_CONTAINER_GET_CLASS*(obj: pointer): PGtkContainerClass +proc GTK_IS_RESIZE_CONTAINER*(widget: pointer): bool +proc border_width*(a: var TGtkContainer): guint +proc set_border_width*(a: var TGtkContainer, `border_width`: guint) +proc need_resize*(a: var TGtkContainer): guint +proc set_need_resize*(a: var TGtkContainer, `need_resize`: guint) +proc resize_mode*(a: PGtkContainer): guint +proc set_resize_mode*(a: var TGtkContainer, `resize_mode`: guint) +proc reallocate_redraws*(a: var TGtkContainer): guint +proc set_reallocate_redraws*(a: var TGtkContainer, `reallocate_redraws`: guint) +proc has_focus_chain*(a: var TGtkContainer): guint +proc set_has_focus_chain*(a: var TGtkContainer, `has_focus_chain`: guint) +proc gtk_container_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_container_get_type".} +proc gtk_container_set_border_width*(container: PGtkContainer, + border_width: guint){.cdecl, + dynlib: gtklib, importc: "gtk_container_set_border_width".} +proc gtk_container_get_border_width*(container: PGtkContainer): guint{.cdecl, + dynlib: gtklib, importc: "gtk_container_get_border_width".} +proc gtk_container_add*(container: PGtkContainer, widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_container_add".} +proc gtk_container_remove*(container: PGtkContainer, widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_container_remove".} +proc gtk_container_set_resize_mode*(container: PGtkContainer, + resize_mode: TGtkResizeMode){.cdecl, + dynlib: gtklib, importc: "gtk_container_set_resize_mode".} +proc gtk_container_get_resize_mode*(container: PGtkContainer): TGtkResizeMode{. + cdecl, dynlib: gtklib, importc: "gtk_container_get_resize_mode".} +proc gtk_container_check_resize*(container: PGtkContainer){.cdecl, + dynlib: gtklib, importc: "gtk_container_check_resize".} +proc gtk_container_foreach*(container: PGtkContainer, callback: TGtkCallback, + callback_data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_container_foreach".} +proc gtk_container_get_children*(container: PGtkContainer): PGList{.cdecl, + dynlib: gtklib, importc: "gtk_container_get_children".} +proc gtk_container_propagate_expose*(container: PGtkContainer, + child: PGtkWidget, event: PGdkEventExpose){. + cdecl, dynlib: gtklib, importc: "gtk_container_propagate_expose".} +proc gtk_container_set_focus_chain*(container: PGtkContainer, + focusable_widgets: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_container_set_focus_chain".} +proc gtk_container_get_focus_chain*(container: PGtkContainer, s: var PGList): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_container_get_focus_chain".} +proc gtk_container_unset_focus_chain*(container: PGtkContainer){.cdecl, + dynlib: gtklib, importc: "gtk_container_unset_focus_chain".} +proc gtk_container_set_reallocate_redraws*(container: PGtkContainer, + needs_redraws: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_container_set_reallocate_redraws".} +proc gtk_container_set_focus_child*(container: PGtkContainer, child: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_container_set_focus_child".} +proc gtk_container_set_focus_vadjustment*(container: PGtkContainer, + adjustment: PGtkAdjustment){.cdecl, dynlib: gtklib, + importc: "gtk_container_set_focus_vadjustment".} +proc gtk_container_get_focus_vadjustment*(container: PGtkContainer): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_container_get_focus_vadjustment".} +proc gtk_container_set_focus_hadjustment*(container: PGtkContainer, + adjustment: PGtkAdjustment){.cdecl, dynlib: gtklib, + importc: "gtk_container_set_focus_hadjustment".} +proc gtk_container_get_focus_hadjustment*(container: PGtkContainer): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_container_get_focus_hadjustment".} +proc gtk_container_resize_children*(container: PGtkContainer){.cdecl, + dynlib: gtklib, importc: "gtk_container_resize_children".} +proc gtk_container_child_type*(container: PGtkContainer): TGtkType{.cdecl, + dynlib: gtklib, importc: "gtk_container_child_type".} +proc gtk_container_class_install_child_property*(cclass: PGtkContainerClass, + property_id: guint, pspec: PGParamSpec){.cdecl, dynlib: gtklib, + importc: "gtk_container_class_install_child_property".} +proc gtk_container_class_find_child_property*(cclass: PGObjectClass, + property_name: cstring): PGParamSpec{.cdecl, dynlib: gtklib, + importc: "gtk_container_class_find_child_property".} +proc gtk_container_class_list_child_properties*(cclass: PGObjectClass, + n_properties: Pguint): PPGParamSpec{.cdecl, dynlib: gtklib, + importc: "gtk_container_class_list_child_properties".} +proc gtk_container_child_set_property*(container: PGtkContainer, + child: PGtkWidget, property_name: cstring, + value: PGValue){.cdecl, dynlib: gtklib, + importc: "gtk_container_child_set_property".} +proc gtk_container_child_get_property*(container: PGtkContainer, + child: PGtkWidget, property_name: cstring, + value: PGValue){.cdecl, dynlib: gtklib, + importc: "gtk_container_child_get_property".} +proc GTK_CONTAINER_WARN_INVALID_CHILD_PROPERTY_ID*(anObject: pointer, + property_id: guint, pspec: pointer) +proc gtk_container_forall*(container: PGtkContainer, callback: TGtkCallback, + callback_data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_container_forall".} +proc gtk_container_queue_resize*(container: PGtkContainer){.cdecl, + dynlib: gtklib, importc: "_gtk_container_queue_resize".} +proc gtk_container_clear_resize_widgets*(container: PGtkContainer){.cdecl, + dynlib: gtklib, importc: "_gtk_container_clear_resize_widgets".} +proc gtk_container_child_composite_name*(container: PGtkContainer, + child: PGtkWidget): cstring{.cdecl, dynlib: gtklib, + importc: "_gtk_container_child_composite_name".} +proc gtk_container_dequeue_resize_handler*(container: PGtkContainer){.cdecl, + dynlib: gtklib, importc: "_gtk_container_dequeue_resize_handler".} +proc gtk_container_focus_sort*(container: PGtkContainer, children: PGList, + direction: TGtkDirectionType, + old_focus: PGtkWidget): PGList{.cdecl, + dynlib: gtklib, importc: "_gtk_container_focus_sort".} +proc GTK_TYPE_BIN*(): GType +proc GTK_BIN*(obj: pointer): PGtkBin +proc GTK_BIN_CLASS*(klass: pointer): PGtkBinClass +proc GTK_IS_BIN*(obj: pointer): bool +proc GTK_IS_BIN_CLASS*(klass: pointer): bool +proc GTK_BIN_GET_CLASS*(obj: pointer): PGtkBinClass +proc gtk_bin_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_bin_get_type".} +proc gtk_bin_get_child*(bin: PGtkBin): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_bin_get_child".} +const + bm_TGtkWindow_allow_shrink* = 0x00000001 + bp_TGtkWindow_allow_shrink* = 0 + bm_TGtkWindow_allow_grow* = 0x00000002 + bp_TGtkWindow_allow_grow* = 1 + bm_TGtkWindow_configure_notify_received* = 0x00000004 + bp_TGtkWindow_configure_notify_received* = 2 + bm_TGtkWindow_need_default_position* = 0x00000008 + bp_TGtkWindow_need_default_position* = 3 + bm_TGtkWindow_need_default_size* = 0x00000010 + bp_TGtkWindow_need_default_size* = 4 + bm_TGtkWindow_position* = 0x000000E0 + bp_TGtkWindow_position* = 5 + bm_TGtkWindow_type* = 0x00000F00 + bp_TGtkWindow_type* = 8 + bm_TGtkWindow_has_user_ref_count* = 0x00001000 + bp_TGtkWindow_has_user_ref_count* = 12 + bm_TGtkWindow_has_focus* = 0x00002000 + bp_TGtkWindow_has_focus* = 13 + bm_TGtkWindow_modal* = 0x00004000 + bp_TGtkWindow_modal* = 14 + bm_TGtkWindow_destroy_with_parent* = 0x00008000 + bp_TGtkWindow_destroy_with_parent* = 15 + bm_TGtkWindow_has_frame* = 0x00010000 + bp_TGtkWindow_has_frame* = 16 + bm_TGtkWindow_iconify_initially* = 0x00020000 + bp_TGtkWindow_iconify_initially* = 17 + bm_TGtkWindow_stick_initially* = 0x00040000 + bp_TGtkWindow_stick_initially* = 18 + bm_TGtkWindow_maximize_initially* = 0x00080000 + bp_TGtkWindow_maximize_initially* = 19 + bm_TGtkWindow_decorated* = 0x00100000 + bp_TGtkWindow_decorated* = 20 + bm_TGtkWindow_type_hint* = 0x00E00000 + bp_TGtkWindow_type_hint* = 21 + bm_TGtkWindow_gravity* = 0x1F000000 + bp_TGtkWindow_gravity* = 24 + +proc GTK_TYPE_WINDOW*(): GType +proc GTK_WINDOW*(obj: pointer): PGtkWindow +proc GTK_WINDOW_CLASS*(klass: pointer): PGtkWindowClass +proc GTK_IS_WINDOW*(obj: pointer): bool +proc GTK_IS_WINDOW_CLASS*(klass: pointer): bool +proc GTK_WINDOW_GET_CLASS*(obj: pointer): PGtkWindowClass +proc allow_shrink*(a: var TGtkWindow): guint +proc set_allow_shrink*(a: var TGtkWindow, `allow_shrink`: guint) +proc allow_grow*(a: var TGtkWindow): guint +proc set_allow_grow*(a: var TGtkWindow, `allow_grow`: guint) +proc configure_notify_received*(a: var TGtkWindow): guint +proc set_configure_notify_received*(a: var TGtkWindow, + `configure_notify_received`: guint) +proc need_default_position*(a: var TGtkWindow): guint +proc set_need_default_position*(a: var TGtkWindow, + `need_default_position`: guint) +proc need_default_size*(a: var TGtkWindow): guint +proc set_need_default_size*(a: var TGtkWindow, `need_default_size`: guint) +proc position*(a: var TGtkWindow): guint +proc set_position*(a: var TGtkWindow, `position`: guint) +proc get_type*(a: var TGtkWindow): guint +proc set_type*(a: var TGtkWindow, `type`: guint) +proc has_user_ref_count*(a: var TGtkWindow): guint +proc set_has_user_ref_count*(a: var TGtkWindow, `has_user_ref_count`: guint) +proc has_focus*(a: var TGtkWindow): guint +proc set_has_focus*(a: var TGtkWindow, `has_focus`: guint) +proc modal*(a: var TGtkWindow): guint +proc set_modal*(a: var TGtkWindow, `modal`: guint) +proc destroy_with_parent*(a: var TGtkWindow): guint +proc set_destroy_with_parent*(a: var TGtkWindow, `destroy_with_parent`: guint) +proc has_frame*(a: var TGtkWindow): guint +proc set_has_frame*(a: var TGtkWindow, `has_frame`: guint) +proc iconify_initially*(a: var TGtkWindow): guint +proc set_iconify_initially*(a: var TGtkWindow, `iconify_initially`: guint) +proc stick_initially*(a: var TGtkWindow): guint +proc set_stick_initially*(a: var TGtkWindow, `stick_initially`: guint) +proc maximize_initially*(a: var TGtkWindow): guint +proc set_maximize_initially*(a: var TGtkWindow, `maximize_initially`: guint) +proc decorated*(a: var TGtkWindow): guint +proc set_decorated*(a: var TGtkWindow, `decorated`: guint) +proc type_hint*(a: var TGtkWindow): guint +proc set_type_hint*(a: var TGtkWindow, `type_hint`: guint) +proc gravity*(a: var TGtkWindow): guint +proc set_gravity*(a: var TGtkWindow, `gravity`: guint) +proc GTK_TYPE_WINDOW_GROUP*(): GType +proc GTK_WINDOW_GROUP*(anObject: pointer): PGtkWindowGroup +proc GTK_WINDOW_GROUP_CLASS*(klass: pointer): PGtkWindowGroupClass +proc GTK_IS_WINDOW_GROUP*(anObject: pointer): bool +proc GTK_IS_WINDOW_GROUP_CLASS*(klass: pointer): bool +proc GTK_WINDOW_GROUP_GET_CLASS*(obj: pointer): PGtkWindowGroupClass +proc gtk_window_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_window_get_type".} +proc gtk_window_new*(thetype: TGtkWindowType): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_window_new".} +proc gtk_window_set_title*(window: PGtkWindow, title: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_title".} +proc gtk_window_get_title*(window: PGtkWindow): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_window_get_title".} +proc gtk_window_set_wmclass*(window: PGtkWindow, wmclass_name: cstring, + wmclass_class: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_window_set_wmclass".} +proc gtk_window_set_role*(window: PGtkWindow, role: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_role".} +proc gtk_window_get_role*(window: PGtkWindow): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_window_get_role".} +proc gtk_window_add_accel_group*(window: PGtkWindow, accel_group: PGtkAccelGroup){. + cdecl, dynlib: gtklib, importc: "gtk_window_add_accel_group".} +proc gtk_window_remove_accel_group*(window: PGtkWindow, + accel_group: PGtkAccelGroup){.cdecl, + dynlib: gtklib, importc: "gtk_window_remove_accel_group".} +proc gtk_window_set_position*(window: PGtkWindow, position: TGtkWindowPosition){. + cdecl, dynlib: gtklib, importc: "gtk_window_set_position".} +proc gtk_window_activate_focus*(window: PGtkWindow): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_activate_focus".} +proc gtk_window_set_focus*(window: PGtkWindow, focus: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_focus".} +proc gtk_window_get_focus*(window: PGtkWindow): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_focus".} +proc gtk_window_set_default*(window: PGtkWindow, default_widget: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_window_set_default".} +proc gtk_window_activate_default*(window: PGtkWindow): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_activate_default".} +proc gtk_window_set_transient_for*(window: PGtkWindow, parent: PGtkWindow){. + cdecl, dynlib: gtklib, importc: "gtk_window_set_transient_for".} +proc gtk_window_get_transient_for*(window: PGtkWindow): PGtkWindow{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_transient_for".} +proc gtk_window_set_type_hint*(window: PGtkWindow, hint: TGdkWindowTypeHint){. + cdecl, dynlib: gtklib, importc: "gtk_window_set_type_hint".} +proc gtk_window_get_type_hint*(window: PGtkWindow): TGdkWindowTypeHint{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_type_hint".} +proc gtk_window_set_destroy_with_parent*(window: PGtkWindow, setting: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_window_set_destroy_with_parent".} +proc gtk_window_get_destroy_with_parent*(window: PGtkWindow): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_destroy_with_parent".} +proc gtk_window_set_resizable*(window: PGtkWindow, resizable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_resizable".} +proc gtk_window_get_resizable*(window: PGtkWindow): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_resizable".} +proc gtk_window_set_gravity*(window: PGtkWindow, gravity: TGdkGravity){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_gravity".} +proc gtk_window_get_gravity*(window: PGtkWindow): TGdkGravity{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_gravity".} +proc gtk_window_set_geometry_hints*(window: PGtkWindow, + geometry_widget: PGtkWidget, + geometry: PGdkGeometry, + geom_mask: TGdkWindowHints){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_geometry_hints".} +proc gtk_window_set_screen*(window: PGtkWindow, screen: PGdkScreen){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_screen".} +proc gtk_window_get_screen*(window: PGtkWindow): PGdkScreen{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_screen".} +proc gtk_window_set_has_frame*(window: PGtkWindow, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_has_frame".} +proc gtk_window_get_has_frame*(window: PGtkWindow): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_has_frame".} +proc gtk_window_set_frame_dimensions*(window: PGtkWindow, left: gint, top: gint, + right: gint, bottom: gint){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_frame_dimensions".} +proc gtk_window_get_frame_dimensions*(window: PGtkWindow, left: Pgint, + top: Pgint, right: Pgint, bottom: Pgint){. + cdecl, dynlib: gtklib, importc: "gtk_window_get_frame_dimensions".} +proc gtk_window_set_decorated*(window: PGtkWindow, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_decorated".} +proc gtk_window_get_decorated*(window: PGtkWindow): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_decorated".} +proc gtk_window_set_icon_list*(window: PGtkWindow, list: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_icon_list".} +proc gtk_window_get_icon_list*(window: PGtkWindow): PGList{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_icon_list".} +proc gtk_window_set_icon*(window: PGtkWindow, icon: PGdkPixbuf){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_icon".} +proc gtk_window_get_icon*(window: PGtkWindow): PGdkPixbuf{.cdecl, + dynlib: gtklib, importc: "gtk_window_get_icon".} +proc gtk_window_set_default_icon_list*(list: PGList){.cdecl, dynlib: gtklib, + importc: "gtk_window_set_default_icon_list".} +proc gtk_window_get_default_icon_list*(): PGList{.cdecl, dynlib: gtklib, + importc: "gtk_window_get_default_icon_list".} +proc gtk_window_set_modal*(window: PGtkWindow, modal: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_modal".} +proc gtk_window_get_modal*(window: PGtkWindow): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_window_get_modal".} +proc gtk_window_list_toplevels*(): PGList{.cdecl, dynlib: gtklib, + importc: "gtk_window_list_toplevels".} +proc gtk_window_add_mnemonic*(window: PGtkWindow, keyval: guint, + target: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_window_add_mnemonic".} +proc gtk_window_remove_mnemonic*(window: PGtkWindow, keyval: guint, + target: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_window_remove_mnemonic".} +proc gtk_window_mnemonic_activate*(window: PGtkWindow, keyval: guint, + modifier: TGdkModifierType): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_window_mnemonic_activate".} +proc gtk_window_set_mnemonic_modifier*(window: PGtkWindow, + modifier: TGdkModifierType){.cdecl, + dynlib: gtklib, importc: "gtk_window_set_mnemonic_modifier".} +proc gtk_window_get_mnemonic_modifier*(window: PGtkWindow): TGdkModifierType{. + cdecl, dynlib: gtklib, importc: "gtk_window_get_mnemonic_modifier".} +proc gtk_window_present*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_present".} +proc gtk_window_iconify*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_iconify".} +proc gtk_window_deiconify*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_deiconify".} +proc gtk_window_stick*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_stick".} +proc gtk_window_unstick*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_unstick".} +proc gtk_window_maximize*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_maximize".} +proc gtk_window_unmaximize*(window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_unmaximize".} +proc gtk_window_begin_resize_drag*(window: PGtkWindow, edge: TGdkWindowEdge, + button: gint, root_x: gint, root_y: gint, + timestamp: guint32){.cdecl, dynlib: gtklib, + importc: "gtk_window_begin_resize_drag".} +proc gtk_window_begin_move_drag*(window: PGtkWindow, button: gint, root_x: gint, + root_y: gint, timestamp: guint32){.cdecl, + dynlib: gtklib, importc: "gtk_window_begin_move_drag".} +proc gtk_window_set_default_size*(window: PGtkWindow, width: gint, height: gint){. + cdecl, dynlib: gtklib, importc: "gtk_window_set_default_size".} +proc gtk_window_get_default_size*(window: PGtkWindow, width: Pgint, + height: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_window_get_default_size".} +proc gtk_window_resize*(window: PGtkWindow, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_window_resize".} +proc gtk_window_get_size*(window: PGtkWindow, width: Pgint, height: Pgint){. + cdecl, dynlib: gtklib, importc: "gtk_window_get_size".} +proc gtk_window_move*(window: PGtkWindow, x: gint, y: gint){.cdecl, + dynlib: gtklib, importc: "gtk_window_move".} +proc gtk_window_get_position*(window: PGtkWindow, root_x: Pgint, root_y: Pgint){. + cdecl, dynlib: gtklib, importc: "gtk_window_get_position".} +proc gtk_window_parse_geometry*(window: PGtkWindow, geometry: cstring): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_window_parse_geometry".} +proc gtk_window_reshow_with_initial_size*(window: PGtkWindow){.cdecl, + dynlib: gtklib, importc: "gtk_window_reshow_with_initial_size".} +proc gtk_window_group_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_window_group_get_type".} +proc gtk_window_group_new*(): PGtkWindowGroup{.cdecl, dynlib: gtklib, + importc: "gtk_window_group_new".} +proc gtk_window_group_add_window*(window_group: PGtkWindowGroup, + window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_group_add_window".} +proc gtk_window_group_remove_window*(window_group: PGtkWindowGroup, + window: PGtkWindow){.cdecl, dynlib: gtklib, + importc: "gtk_window_group_remove_window".} +proc gtk_window_internal_set_focus*(window: PGtkWindow, focus: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "_gtk_window_internal_set_focus".} +proc gtk_window_remove_embedded_xid*(window: PGtkWindow, xid: guint){.cdecl, + dynlib: gtklib, importc: "gtk_window_remove_embedded_xid".} +proc gtk_window_add_embedded_xid*(window: PGtkWindow, xid: guint){.cdecl, + dynlib: gtklib, importc: "gtk_window_add_embedded_xid".} +proc gtk_window_reposition*(window: PGtkWindow, x: gint, y: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_window_reposition".} +proc gtk_window_constrain_size*(window: PGtkWindow, width: gint, height: gint, + new_width: Pgint, new_height: Pgint){.cdecl, + dynlib: gtklib, importc: "_gtk_window_constrain_size".} +proc gtk_window_get_group*(window: PGtkWindow): PGtkWindowGroup{.cdecl, + dynlib: gtklib, importc: "_gtk_window_get_group".} +proc gtk_window_activate_key*(window: PGtkWindow, event: PGdkEventKey): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_window_activate_key".} +proc gtk_window_keys_foreach*(window: PGtkWindow, + func: TGtkWindowKeysForeachFunc, + func_data: gpointer){.cdecl, dynlib: gtklib, + importc: "_gtk_window_keys_foreach".} +proc gtk_window_query_nonaccels*(window: PGtkWindow, accel_key: guint, + accel_mods: TGdkModifierType): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_window_query_nonaccels".} +const + bm_TGtkLabel_jtype* = 0x00000003 + bp_TGtkLabel_jtype* = 0 + bm_TGtkLabel_wrap* = 0x00000004 + bp_TGtkLabel_wrap* = 2 + bm_TGtkLabel_use_underline* = 0x00000008 + bp_TGtkLabel_use_underline* = 3 + bm_TGtkLabel_use_markup* = 0x00000010 + bp_TGtkLabel_use_markup* = 4 + +proc GTK_TYPE_LABEL*(): GType +proc GTK_LABEL*(obj: pointer): PGtkLabel +proc GTK_LABEL_CLASS*(klass: pointer): PGtkLabelClass +proc GTK_IS_LABEL*(obj: pointer): bool +proc GTK_IS_LABEL_CLASS*(klass: pointer): bool +proc GTK_LABEL_GET_CLASS*(obj: pointer): PGtkLabelClass +proc jtype*(a: var TGtkLabel): guint +proc set_jtype*(a: var TGtkLabel, `jtype`: guint) +proc wrap*(a: var TGtkLabel): guint +proc set_wrap*(a: var TGtkLabel, `wrap`: guint) +proc use_underline*(a: var TGtkLabel): guint +proc set_use_underline*(a: var TGtkLabel, `use_underline`: guint) +proc use_markup*(a: var TGtkLabel): guint +proc set_use_markup*(a: var TGtkLabel, `use_markup`: guint) +proc gtk_label_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_label_get_type".} +proc gtk_label_new*(str: cstring): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_label_new".} +proc gtk_label_new_with_mnemonic*(str: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_label_new_with_mnemonic".} +proc gtk_label_set_text*(`label`: PGtkLabel, str: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_text".} +proc gtk_label_get_text*(`label`: PGtkLabel): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_label_get_text".} +proc gtk_label_set_attributes*(`label`: PGtkLabel, attrs: PPangoAttrList){. + cdecl, dynlib: gtklib, importc: "gtk_label_set_attributes".} +proc gtk_label_get_attributes*(`label`: PGtkLabel): PPangoAttrList{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_attributes".} +proc gtk_label_set_label*(`label`: PGtkLabel, str: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_label".} +proc gtk_label_get_label*(`label`: PGtkLabel): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_label_get_label".} +proc gtk_label_set_markup*(`label`: PGtkLabel, str: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_markup".} +proc gtk_label_set_use_markup*(`label`: PGtkLabel, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_use_markup".} +proc gtk_label_get_use_markup*(`label`: PGtkLabel): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_use_markup".} +proc gtk_label_set_use_underline*(`label`: PGtkLabel, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_use_underline".} +proc gtk_label_get_use_underline*(`label`: PGtkLabel): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_use_underline".} +proc gtk_label_set_markup_with_mnemonic*(`label`: PGtkLabel, str: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_label_set_markup_with_mnemonic".} +proc gtk_label_get_mnemonic_keyval*(`label`: PGtkLabel): guint{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_mnemonic_keyval".} +proc gtk_label_set_mnemonic_widget*(`label`: PGtkLabel, widget: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_label_set_mnemonic_widget".} +proc gtk_label_get_mnemonic_widget*(`label`: PGtkLabel): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_mnemonic_widget".} +proc gtk_label_set_text_with_mnemonic*(`label`: PGtkLabel, str: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_text_with_mnemonic".} +proc gtk_label_set_justify*(`label`: PGtkLabel, jtype: TGtkJustification){. + cdecl, dynlib: gtklib, importc: "gtk_label_set_justify".} +proc gtk_label_get_justify*(`label`: PGtkLabel): TGtkJustification{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_justify".} +proc gtk_label_set_pattern*(`label`: PGtkLabel, pattern: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_pattern".} +proc gtk_label_set_line_wrap*(`label`: PGtkLabel, wrap: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_line_wrap".} +proc gtk_label_get_line_wrap*(`label`: PGtkLabel): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_line_wrap".} +proc gtk_label_set_selectable*(`label`: PGtkLabel, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_label_set_selectable".} +proc gtk_label_get_selectable*(`label`: PGtkLabel): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_selectable".} +proc gtk_label_select_region*(`label`: PGtkLabel, start_offset: gint, + end_offset: gint){.cdecl, dynlib: gtklib, + importc: "gtk_label_select_region".} +proc gtk_label_get_selection_bounds*(`label`: PGtkLabel, start: Pgint, + theEnd: Pgint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_selection_bounds".} +proc gtk_label_get_layout*(`label`: PGtkLabel): PPangoLayout{.cdecl, + dynlib: gtklib, importc: "gtk_label_get_layout".} +proc gtk_label_get_layout_offsets*(`label`: PGtkLabel, x: Pgint, y: Pgint){. + cdecl, dynlib: gtklib, importc: "gtk_label_get_layout_offsets".} +const + bm_TGtkAccelLabelClass_latin1_to_char* = 0x00000001 + bp_TGtkAccelLabelClass_latin1_to_char* = 0 + +proc GTK_TYPE_ACCEL_LABEL*(): GType +proc GTK_ACCEL_LABEL*(obj: pointer): PGtkAccelLabel +proc GTK_ACCEL_LABEL_CLASS*(klass: pointer): PGtkAccelLabelClass +proc GTK_IS_ACCEL_LABEL*(obj: pointer): bool +proc GTK_IS_ACCEL_LABEL_CLASS*(klass: pointer): bool +proc GTK_ACCEL_LABEL_GET_CLASS*(obj: pointer): PGtkAccelLabelClass +proc latin1_to_char*(a: var TGtkAccelLabelClass): guint +proc set_latin1_to_char*(a: var TGtkAccelLabelClass, `latin1_to_char`: guint) +proc gtk_accel_label_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_accel_label_get_type".} +proc gtk_accel_label_new*(`string`: cstring): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_accel_label_new".} +proc gtk_accel_label_get_accel_widget*(accel_label: PGtkAccelLabel): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_accel_label_get_accel_widget".} +proc gtk_accel_label_get_accel_width*(accel_label: PGtkAccelLabel): guint{. + cdecl, dynlib: gtklib, importc: "gtk_accel_label_get_accel_width".} +proc gtk_accel_label_set_accel_widget*(accel_label: PGtkAccelLabel, + accel_widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_accel_label_set_accel_widget".} +proc gtk_accel_label_set_accel_closure*(accel_label: PGtkAccelLabel, + accel_closure: PGClosure){.cdecl, + dynlib: gtklib, importc: "gtk_accel_label_set_accel_closure".} +proc gtk_accel_label_refetch*(accel_label: PGtkAccelLabel): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_accel_label_refetch".} +proc gtk_accel_map_add_entry*(accel_path: cstring, accel_key: guint, + accel_mods: TGdkModifierType){.cdecl, + dynlib: gtklib, importc: "gtk_accel_map_add_entry".} +proc gtk_accel_map_lookup_entry*(accel_path: cstring, key: PGtkAccelKey): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_accel_map_lookup_entry".} +proc gtk_accel_map_change_entry*(accel_path: cstring, accel_key: guint, + accel_mods: TGdkModifierType, replace: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_accel_map_change_entry".} +proc gtk_accel_map_load*(file_name: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_accel_map_load".} +proc gtk_accel_map_save*(file_name: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_accel_map_save".} +proc gtk_accel_map_foreach*(data: gpointer, foreach_func: TGtkAccelMapForeach){. + cdecl, dynlib: gtklib, importc: "gtk_accel_map_foreach".} +proc gtk_accel_map_load_fd*(fd: gint){.cdecl, dynlib: gtklib, + importc: "gtk_accel_map_load_fd".} +proc gtk_accel_map_load_scanner*(scanner: PGScanner){.cdecl, dynlib: gtklib, + importc: "gtk_accel_map_load_scanner".} +proc gtk_accel_map_save_fd*(fd: gint){.cdecl, dynlib: gtklib, + importc: "gtk_accel_map_save_fd".} +proc gtk_accel_map_add_filter*(filter_pattern: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_accel_map_add_filter".} +proc gtk_accel_map_foreach_unfiltered*(data: gpointer, + foreach_func: TGtkAccelMapForeach){. + cdecl, dynlib: gtklib, importc: "gtk_accel_map_foreach_unfiltered".} +proc gtk_accel_map_init*(){.cdecl, dynlib: gtklib, + importc: "_gtk_accel_map_init".} +proc gtk_accel_map_add_group*(accel_path: cstring, accel_group: PGtkAccelGroup){. + cdecl, dynlib: gtklib, importc: "_gtk_accel_map_add_group".} +proc gtk_accel_map_remove_group*(accel_path: cstring, + accel_group: PGtkAccelGroup){.cdecl, + dynlib: gtklib, importc: "_gtk_accel_map_remove_group".} +proc gtk_accel_path_is_valid*(accel_path: cstring): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_accel_path_is_valid".} +proc GTK_TYPE_ACCESSIBLE*(): GType +proc GTK_ACCESSIBLE*(obj: pointer): PGtkAccessible +proc GTK_ACCESSIBLE_CLASS*(klass: pointer): PGtkAccessibleClass +proc GTK_IS_ACCESSIBLE*(obj: pointer): bool +proc GTK_IS_ACCESSIBLE_CLASS*(klass: pointer): bool +proc GTK_ACCESSIBLE_GET_CLASS*(obj: pointer): PGtkAccessibleClass +proc gtk_accessible_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_accessible_get_type".} +proc gtk_accessible_connect_widget_destroyed*(accessible: PGtkAccessible){. + cdecl, dynlib: gtklib, importc: "gtk_accessible_connect_widget_destroyed".} +proc GTK_TYPE_ADJUSTMENT*(): GType +proc GTK_ADJUSTMENT*(obj: pointer): PGtkAdjustment +proc GTK_ADJUSTMENT_CLASS*(klass: pointer): PGtkAdjustmentClass +proc GTK_IS_ADJUSTMENT*(obj: pointer): bool +proc GTK_IS_ADJUSTMENT_CLASS*(klass: pointer): bool +proc GTK_ADJUSTMENT_GET_CLASS*(obj: pointer): PGtkAdjustmentClass +proc gtk_adjustment_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_adjustment_get_type".} +proc gtk_adjustment_new*(value: gdouble, lower: gdouble, upper: gdouble, + step_increment: gdouble, page_increment: gdouble, + page_size: gdouble): PGtkObject{.cdecl, dynlib: gtklib, + importc: "gtk_adjustment_new".} +proc gtk_adjustment_changed*(adjustment: PGtkAdjustment){.cdecl, dynlib: gtklib, + importc: "gtk_adjustment_changed".} +proc gtk_adjustment_value_changed*(adjustment: PGtkAdjustment){.cdecl, + dynlib: gtklib, importc: "gtk_adjustment_value_changed".} +proc gtk_adjustment_clamp_page*(adjustment: PGtkAdjustment, lower: gdouble, + upper: gdouble){.cdecl, dynlib: gtklib, + importc: "gtk_adjustment_clamp_page".} +proc gtk_adjustment_get_value*(adjustment: PGtkAdjustment): gdouble{.cdecl, + dynlib: gtklib, importc: "gtk_adjustment_get_value".} +proc gtk_adjustment_set_value*(adjustment: PGtkAdjustment, value: gdouble){. + cdecl, dynlib: gtklib, importc: "gtk_adjustment_set_value".} +proc GTK_TYPE_ALIGNMENT*(): GType +proc GTK_ALIGNMENT*(obj: pointer): PGtkAlignment +proc GTK_ALIGNMENT_CLASS*(klass: pointer): PGtkAlignmentClass +proc GTK_IS_ALIGNMENT*(obj: pointer): bool +proc GTK_IS_ALIGNMENT_CLASS*(klass: pointer): bool +proc GTK_ALIGNMENT_GET_CLASS*(obj: pointer): PGtkAlignmentClass +proc gtk_alignment_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_alignment_get_type".} +proc gtk_alignment_new*(xalign: gfloat, yalign: gfloat, xscale: gfloat, + yscale: gfloat): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_alignment_new".} +proc gtk_alignment_set*(alignment: PGtkAlignment, xalign: gfloat, + yalign: gfloat, xscale: gfloat, yscale: gfloat){.cdecl, + dynlib: gtklib, importc: "gtk_alignment_set".} +proc GTK_TYPE_FRAME*(): GType +proc GTK_FRAME*(obj: pointer): PGtkFrame +proc GTK_FRAME_CLASS*(klass: pointer): PGtkFrameClass +proc GTK_IS_FRAME*(obj: pointer): bool +proc GTK_IS_FRAME_CLASS*(klass: pointer): bool +proc GTK_FRAME_GET_CLASS*(obj: pointer): PGtkFrameClass +proc gtk_frame_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_frame_get_type".} +proc gtk_frame_new*(`label`: cstring): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_frame_new".} +proc gtk_frame_set_label*(frame: PGtkFrame, `label`: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_frame_set_label".} +proc gtk_frame_get_label*(frame: PGtkFrame): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_frame_get_label".} +proc gtk_frame_set_label_widget*(frame: PGtkFrame, label_widget: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_frame_set_label_widget".} +proc gtk_frame_get_label_widget*(frame: PGtkFrame): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_frame_get_label_widget".} +proc gtk_frame_set_label_align*(frame: PGtkFrame, xalign: gfloat, yalign: gfloat){. + cdecl, dynlib: gtklib, importc: "gtk_frame_set_label_align".} +proc gtk_frame_get_label_align*(frame: PGtkFrame, xalign: Pgfloat, + yalign: Pgfloat){.cdecl, dynlib: gtklib, + importc: "gtk_frame_get_label_align".} +proc gtk_frame_set_shadow_type*(frame: PGtkFrame, thetype: TGtkShadowType){. + cdecl, dynlib: gtklib, importc: "gtk_frame_set_shadow_type".} +proc gtk_frame_get_shadow_type*(frame: PGtkFrame): TGtkShadowType{.cdecl, + dynlib: gtklib, importc: "gtk_frame_get_shadow_type".} +proc GTK_TYPE_ASPECT_FRAME*(): GType +proc GTK_ASPECT_FRAME*(obj: pointer): PGtkAspectFrame +proc GTK_ASPECT_FRAME_CLASS*(klass: pointer): PGtkAspectFrameClass +proc GTK_IS_ASPECT_FRAME*(obj: pointer): bool +proc GTK_IS_ASPECT_FRAME_CLASS*(klass: pointer): bool +proc GTK_ASPECT_FRAME_GET_CLASS*(obj: pointer): PGtkAspectFrameClass +proc gtk_aspect_frame_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_aspect_frame_get_type".} +proc gtk_aspect_frame_new*(`label`: cstring, xalign: gfloat, yalign: gfloat, + ratio: gfloat, obey_child: gboolean): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_aspect_frame_new".} +proc gtk_aspect_frame_set*(aspect_frame: PGtkAspectFrame, xalign: gfloat, + yalign: gfloat, ratio: gfloat, obey_child: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_aspect_frame_set".} +proc GTK_TYPE_ARROW*(): GType +proc GTK_ARROW*(obj: pointer): PGtkArrow +proc GTK_ARROW_CLASS*(klass: pointer): PGtkArrowClass +proc GTK_IS_ARROW*(obj: pointer): bool +proc GTK_IS_ARROW_CLASS*(klass: pointer): bool +proc GTK_ARROW_GET_CLASS*(obj: pointer): PGtkArrowClass +proc gtk_arrow_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_arrow_get_type".} +proc gtk_arrow_new*(arrow_type: TGtkArrowType, shadow_type: TGtkShadowType): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_arrow_new".} +proc gtk_arrow_set*(arrow: PGtkArrow, arrow_type: TGtkArrowType, + shadow_type: TGtkShadowType){.cdecl, dynlib: gtklib, + importc: "gtk_arrow_set".} +const + bm_TGtkBindingSet_parsed* = 0x00000001 + bp_TGtkBindingSet_parsed* = 0 + bm_TGtkBindingEntry_destroyed* = 0x00000001 + bp_TGtkBindingEntry_destroyed* = 0 + bm_TGtkBindingEntry_in_emission* = 0x00000002 + bp_TGtkBindingEntry_in_emission* = 1 + +proc gtk_binding_entry_add*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType) +proc parsed*(a: var TGtkBindingSet): guint +proc set_parsed*(a: var TGtkBindingSet, `parsed`: guint) +proc destroyed*(a: var TGtkBindingEntry): guint +proc set_destroyed*(a: var TGtkBindingEntry, `destroyed`: guint) +proc in_emission*(a: var TGtkBindingEntry): guint +proc set_in_emission*(a: var TGtkBindingEntry, `in_emission`: guint) +proc gtk_binding_set_new*(set_name: cstring): PGtkBindingSet{.cdecl, + dynlib: gtklib, importc: "gtk_binding_set_new".} +proc gtk_binding_set_by_class*(object_class: gpointer): PGtkBindingSet{.cdecl, + dynlib: gtklib, importc: "gtk_binding_set_by_class".} +proc gtk_binding_set_find*(set_name: cstring): PGtkBindingSet{.cdecl, + dynlib: gtklib, importc: "gtk_binding_set_find".} +proc gtk_bindings_activate*(anObject: PGtkObject, keyval: guint, + modifiers: TGdkModifierType): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_bindings_activate".} +proc gtk_binding_set_activate*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType, anObject: PGtkObject): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_binding_set_activate".} +proc gtk_binding_entry_clear*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType){.cdecl, + dynlib: gtklib, importc: "gtk_binding_entry_clear".} +proc gtk_binding_set_add_path*(binding_set: PGtkBindingSet, + path_type: TGtkPathType, path_pattern: cstring, + priority: TGtkPathPriorityType){.cdecl, + dynlib: gtklib, importc: "gtk_binding_set_add_path".} +proc gtk_binding_entry_remove*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType){.cdecl, + dynlib: gtklib, importc: "gtk_binding_entry_remove".} +proc gtk_binding_entry_add_signall*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType, + signal_name: cstring, binding_args: PGSList){. + cdecl, dynlib: gtklib, importc: "gtk_binding_entry_add_signall".} +proc gtk_binding_parse_binding*(scanner: PGScanner): guint{.cdecl, + dynlib: gtklib, importc: "gtk_binding_parse_binding".} +proc gtk_bindings_activate_event*(anObject: PGtkObject, event: PGdkEventKey): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_bindings_activate_event".} +proc gtk_binding_reset_parsed*(){.cdecl, dynlib: gtklib, + importc: "_gtk_binding_reset_parsed".} +const + bm_TGtkBox_homogeneous* = 0x00000001 + bp_TGtkBox_homogeneous* = 0 + bm_TGtkBoxChild_expand* = 0x00000001 + bp_TGtkBoxChild_expand* = 0 + bm_TGtkBoxChild_fill* = 0x00000002 + bp_TGtkBoxChild_fill* = 1 + bm_TGtkBoxChild_pack* = 0x00000004 + bp_TGtkBoxChild_pack* = 2 + bm_TGtkBoxChild_is_secondary* = 0x00000008 + bp_TGtkBoxChild_is_secondary* = 3 + +proc GTK_TYPE_BOX*(): GType +proc GTK_BOX*(obj: pointer): PGtkBox +proc GTK_BOX_CLASS*(klass: pointer): PGtkBoxClass +proc GTK_IS_BOX*(obj: pointer): bool +proc GTK_IS_BOX_CLASS*(klass: pointer): bool +proc GTK_BOX_GET_CLASS*(obj: pointer): PGtkBoxClass +proc homogeneous*(a: var TGtkBox): guint +proc set_homogeneous*(a: var TGtkBox, `homogeneous`: guint) +proc expand*(a: var TGtkBoxChild): guint +proc set_expand*(a: var TGtkBoxChild, `expand`: guint) +proc fill*(a: var TGtkBoxChild): guint +proc set_fill*(a: var TGtkBoxChild, `fill`: guint) +proc pack*(a: var TGtkBoxChild): guint +proc set_pack*(a: var TGtkBoxChild, `pack`: guint) +proc is_secondary*(a: var TGtkBoxChild): guint +proc set_is_secondary*(a: var TGtkBoxChild, `is_secondary`: guint) +proc gtk_box_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_box_get_type".} +proc gtk_box_pack_start*(box: PGtkBox, child: PGtkWidget, expand: gboolean, + fill: gboolean, padding: guint){.cdecl, dynlib: gtklib, + importc: "gtk_box_pack_start".} +proc gtk_box_pack_end*(box: PGtkBox, child: PGtkWidget, expand: gboolean, + fill: gboolean, padding: guint){.cdecl, dynlib: gtklib, + importc: "gtk_box_pack_end".} +proc gtk_box_pack_start_defaults*(box: PGtkBox, widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_box_pack_start_defaults".} +proc gtk_box_pack_end_defaults*(box: PGtkBox, widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_box_pack_end_defaults".} +proc gtk_box_set_homogeneous*(box: PGtkBox, homogeneous: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_box_set_homogeneous".} +proc gtk_box_get_homogeneous*(box: PGtkBox): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_box_get_homogeneous".} +proc gtk_box_set_spacing*(box: PGtkBox, spacing: gint){.cdecl, dynlib: gtklib, + importc: "gtk_box_set_spacing".} +proc gtk_box_get_spacing*(box: PGtkBox): gint{.cdecl, dynlib: gtklib, + importc: "gtk_box_get_spacing".} +proc gtk_box_reorder_child*(box: PGtkBox, child: PGtkWidget, position: gint){. + cdecl, dynlib: gtklib, importc: "gtk_box_reorder_child".} +proc gtk_box_query_child_packing*(box: PGtkBox, child: PGtkWidget, + expand: Pgboolean, fill: Pgboolean, + padding: Pguint, pack_type: PGtkPackType){. + cdecl, dynlib: gtklib, importc: "gtk_box_query_child_packing".} +proc gtk_box_set_child_packing*(box: PGtkBox, child: PGtkWidget, + expand: gboolean, fill: gboolean, + padding: guint, pack_type: TGtkPackType){.cdecl, + dynlib: gtklib, importc: "gtk_box_set_child_packing".} +const + GTK_BUTTONBOX_DEFAULT* = - (1) + +proc GTK_TYPE_BUTTON_BOX*(): GType +proc GTK_BUTTON_BOX*(obj: pointer): PGtkButtonBox +proc GTK_BUTTON_BOX_CLASS*(klass: pointer): PGtkButtonBoxClass +proc GTK_IS_BUTTON_BOX*(obj: pointer): bool +proc GTK_IS_BUTTON_BOX_CLASS*(klass: pointer): bool +proc GTK_BUTTON_BOX_GET_CLASS*(obj: pointer): PGtkButtonBoxClass +proc gtk_button_box_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_button_box_get_type".} +proc gtk_button_box_get_layout*(widget: PGtkButtonBox): TGtkButtonBoxStyle{. + cdecl, dynlib: gtklib, importc: "gtk_button_box_get_layout".} +proc gtk_button_box_set_layout*(widget: PGtkButtonBox, + layout_style: TGtkButtonBoxStyle){.cdecl, + dynlib: gtklib, importc: "gtk_button_box_set_layout".} +proc gtk_button_box_set_child_secondary*(widget: PGtkButtonBox, + child: PGtkWidget, is_secondary: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_button_box_set_child_secondary".} +proc gtk_button_box_child_requisition*(widget: PGtkWidget, + nvis_children: var int32, nvis_secondaries: var int32, width: var int32, + height: var int32){.cdecl, dynlib: gtklib, + importc: "_gtk_button_box_child_requisition".} +const + bm_TGtkButton_constructed* = 0x00000001 + bp_TGtkButton_constructed* = 0 + bm_TGtkButton_in_button* = 0x00000002 + bp_TGtkButton_in_button* = 1 + bm_TGtkButton_button_down* = 0x00000004 + bp_TGtkButton_button_down* = 2 + bm_TGtkButton_relief* = 0x00000018 + bp_TGtkButton_relief* = 3 + bm_TGtkButton_use_underline* = 0x00000020 + bp_TGtkButton_use_underline* = 5 + bm_TGtkButton_use_stock* = 0x00000040 + bp_TGtkButton_use_stock* = 6 + bm_TGtkButton_depressed* = 0x00000080 + bp_TGtkButton_depressed* = 7 + bm_TGtkButton_depress_on_activate* = 0x00000100 + bp_TGtkButton_depress_on_activate* = 8 + +proc GTK_TYPE_BUTTON*(): GType +proc GTK_BUTTON*(obj: pointer): PGtkButton +proc GTK_BUTTON_CLASS*(klass: pointer): PGtkButtonClass +proc GTK_IS_BUTTON*(obj: pointer): bool +proc GTK_IS_BUTTON_CLASS*(klass: pointer): bool +proc GTK_BUTTON_GET_CLASS*(obj: pointer): PGtkButtonClass +proc constructed*(a: var TGtkButton): guint +proc set_constructed*(a: var TGtkButton, `constructed`: guint) +proc in_button*(a: var TGtkButton): guint +proc set_in_button*(a: var TGtkButton, `in_button`: guint) +proc button_down*(a: var TGtkButton): guint +proc set_button_down*(a: var TGtkButton, `button_down`: guint) +proc relief*(a: var TGtkButton): guint +proc set_relief*(a: var TGtkButton, `relief`: guint) +proc use_underline*(a: var TGtkButton): guint +proc set_use_underline*(a: var TGtkButton, `use_underline`: guint) +proc use_stock*(a: var TGtkButton): guint +proc set_use_stock*(a: var TGtkButton, `use_stock`: guint) +proc depressed*(a: var TGtkButton): guint +proc set_depressed*(a: var TGtkButton, `depressed`: guint) +proc depress_on_activate*(a: var TGtkButton): guint +proc set_depress_on_activate*(a: var TGtkButton, `depress_on_activate`: guint) +proc gtk_button_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_button_get_type".} +proc gtk_button_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_button_new".} +proc gtk_button_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_button_new_with_label".} +proc gtk_button_new_from_stock*(stock_id: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_button_new_from_stock".} +proc gtk_button_new_with_mnemonic*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_button_new_with_mnemonic".} +proc gtk_button_pressed*(button: PGtkButton){.cdecl, dynlib: gtklib, + importc: "gtk_button_pressed".} +proc gtk_button_released*(button: PGtkButton){.cdecl, dynlib: gtklib, + importc: "gtk_button_released".} +proc gtk_button_clicked*(button: PGtkButton){.cdecl, dynlib: gtklib, + importc: "gtk_button_clicked".} +proc gtk_button_enter*(button: PGtkButton){.cdecl, dynlib: gtklib, + importc: "gtk_button_enter".} +proc gtk_button_leave*(button: PGtkButton){.cdecl, dynlib: gtklib, + importc: "gtk_button_leave".} +proc gtk_button_set_relief*(button: PGtkButton, newstyle: TGtkReliefStyle){. + cdecl, dynlib: gtklib, importc: "gtk_button_set_relief".} +proc gtk_button_get_relief*(button: PGtkButton): TGtkReliefStyle{.cdecl, + dynlib: gtklib, importc: "gtk_button_get_relief".} +proc gtk_button_set_label*(button: PGtkButton, `label`: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_button_set_label".} +proc gtk_button_get_label*(button: PGtkButton): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_button_get_label".} +proc gtk_button_set_use_underline*(button: PGtkButton, use_underline: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_button_set_use_underline".} +proc gtk_button_get_use_underline*(button: PGtkButton): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_button_get_use_underline".} +proc gtk_button_set_use_stock*(button: PGtkButton, use_stock: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_button_set_use_stock".} +proc gtk_button_get_use_stock*(button: PGtkButton): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_button_get_use_stock".} +proc gtk_button_set_depressed*(button: PGtkButton, depressed: gboolean){. + cdecl, dynlib: gtklib, importc: "_gtk_button_set_depressed".} +proc gtk_button_paint*(button: PGtkButton, area: PGdkRectangle, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + main_detail: cstring, default_detail: cstring){.cdecl, + dynlib: gtklib, importc: "_gtk_button_paint".} +const + GTK_CALENDAR_SHOW_HEADING* = 1 shl 0 + GTK_CALENDAR_SHOW_DAY_NAMES* = 1 shl 1 + GTK_CALENDAR_NO_MONTH_CHANGE* = 1 shl 2 + GTK_CALENDAR_SHOW_WEEK_NUMBERS* = 1 shl 3 + GTK_CALENDAR_WEEK_START_MONDAY* = 1 shl 4 + +proc GTK_TYPE_CALENDAR*(): GType +proc GTK_CALENDAR*(obj: pointer): PGtkCalendar +proc GTK_CALENDAR_CLASS*(klass: pointer): PGtkCalendarClass +proc GTK_IS_CALENDAR*(obj: pointer): bool +proc GTK_IS_CALENDAR_CLASS*(klass: pointer): bool +proc GTK_CALENDAR_GET_CLASS*(obj: pointer): PGtkCalendarClass +proc gtk_calendar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_calendar_get_type".} +proc gtk_calendar_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_calendar_new".} +proc gtk_calendar_select_month*(calendar: PGtkCalendar, month: guint, + year: guint): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_calendar_select_month".} +proc gtk_calendar_select_day*(calendar: PGtkCalendar, day: guint){.cdecl, + dynlib: gtklib, importc: "gtk_calendar_select_day".} +proc gtk_calendar_mark_day*(calendar: PGtkCalendar, day: guint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_calendar_mark_day".} +proc gtk_calendar_unmark_day*(calendar: PGtkCalendar, day: guint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_calendar_unmark_day".} +proc gtk_calendar_clear_marks*(calendar: PGtkCalendar){.cdecl, dynlib: gtklib, + importc: "gtk_calendar_clear_marks".} +proc gtk_calendar_display_options*(calendar: PGtkCalendar, + flags: TGtkCalendarDisplayOptions){.cdecl, + dynlib: gtklib, importc: "gtk_calendar_display_options".} +proc gtk_calendar_get_date*(calendar: PGtkCalendar, year: Pguint, month: Pguint, + day: Pguint){.cdecl, dynlib: gtklib, + importc: "gtk_calendar_get_date".} +proc gtk_calendar_freeze*(calendar: PGtkCalendar){.cdecl, dynlib: gtklib, + importc: "gtk_calendar_freeze".} +proc gtk_calendar_thaw*(calendar: PGtkCalendar){.cdecl, dynlib: gtklib, + importc: "gtk_calendar_thaw".} +proc GTK_TYPE_CELL_EDITABLE*(): GType +proc GTK_CELL_EDITABLE*(obj: pointer): PGtkCellEditable +proc GTK_CELL_EDITABLE_CLASS*(obj: pointer): PGtkCellEditableIface +proc GTK_IS_CELL_EDITABLE*(obj: pointer): bool +proc GTK_CELL_EDITABLE_GET_IFACE*(obj: pointer): PGtkCellEditableIface +proc gtk_cell_editable_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_cell_editable_get_type".} +proc gtk_cell_editable_start_editing*(cell_editable: PGtkCellEditable, + event: PGdkEvent){.cdecl, dynlib: gtklib, + importc: "gtk_cell_editable_start_editing".} +proc gtk_cell_editable_editing_done*(cell_editable: PGtkCellEditable){.cdecl, + dynlib: gtklib, importc: "gtk_cell_editable_editing_done".} +proc gtk_cell_editable_remove_widget*(cell_editable: PGtkCellEditable){.cdecl, + dynlib: gtklib, importc: "gtk_cell_editable_remove_widget".} +const + GTK_CELL_RENDERER_SELECTED* = 1 shl 0 + GTK_CELL_RENDERER_PRELIT* = 1 shl 1 + GTK_CELL_RENDERER_INSENSITIVE* = 1 shl 2 + GTK_CELL_RENDERER_SORTED* = 1 shl 3 + +const + bm_TGtkCellRenderer_mode* = 0x00000003 + bp_TGtkCellRenderer_mode* = 0 + bm_TGtkCellRenderer_visible* = 0x00000004 + bp_TGtkCellRenderer_visible* = 2 + bm_TGtkCellRenderer_is_expander* = 0x00000008 + bp_TGtkCellRenderer_is_expander* = 3 + bm_TGtkCellRenderer_is_expanded* = 0x00000010 + bp_TGtkCellRenderer_is_expanded* = 4 + bm_TGtkCellRenderer_cell_background_set* = 0x00000020 + bp_TGtkCellRenderer_cell_background_set* = 5 + +proc GTK_TYPE_CELL_RENDERER*(): GType +proc GTK_CELL_RENDERER*(obj: pointer): PGtkCellRenderer +proc GTK_CELL_RENDERER_CLASS*(klass: pointer): PGtkCellRendererClass +proc GTK_IS_CELL_RENDERER*(obj: pointer): bool +proc GTK_IS_CELL_RENDERER_CLASS*(klass: pointer): bool +proc GTK_CELL_RENDERER_GET_CLASS*(obj: pointer): PGtkCellRendererClass +proc mode*(a: var TGtkCellRenderer): guint +proc set_mode*(a: var TGtkCellRenderer, `mode`: guint) +proc visible*(a: var TGtkCellRenderer): guint +proc set_visible*(a: var TGtkCellRenderer, `visible`: guint) +proc is_expander*(a: var TGtkCellRenderer): guint +proc set_is_expander*(a: var TGtkCellRenderer, `is_expander`: guint) +proc is_expanded*(a: var TGtkCellRenderer): guint +proc set_is_expanded*(a: var TGtkCellRenderer, `is_expanded`: guint) +proc cell_background_set*(a: var TGtkCellRenderer): guint +proc set_cell_background_set*(a: var TGtkCellRenderer, + `cell_background_set`: guint) +proc gtk_cell_renderer_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_get_type".} +proc gtk_cell_renderer_get_size*(cell: PGtkCellRenderer, widget: PGtkWidget, + cell_area: PGdkRectangle, x_offset: Pgint, + y_offset: Pgint, width: Pgint, height: Pgint){. + cdecl, dynlib: gtklib, importc: "gtk_cell_renderer_get_size".} +proc gtk_cell_renderer_render*(cell: PGtkCellRenderer, window: PGdkWindow, + widget: PGtkWidget, + background_area: PGdkRectangle, + cell_area: PGdkRectangle, + expose_area: PGdkRectangle, + flags: TGtkCellRendererState){.cdecl, + dynlib: gtklib, importc: "gtk_cell_renderer_render".} +proc gtk_cell_renderer_activate*(cell: PGtkCellRenderer, event: PGdkEvent, + widget: PGtkWidget, path: cstring, + background_area: PGdkRectangle, + cell_area: PGdkRectangle, + flags: TGtkCellRendererState): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_cell_renderer_activate".} +proc gtk_cell_renderer_start_editing*(cell: PGtkCellRenderer, event: PGdkEvent, + widget: PGtkWidget, path: cstring, + background_area: PGdkRectangle, + cell_area: PGdkRectangle, + flags: TGtkCellRendererState): PGtkCellEditable{. + cdecl, dynlib: gtklib, importc: "gtk_cell_renderer_start_editing".} +proc gtk_cell_renderer_set_fixed_size*(cell: PGtkCellRenderer, width: gint, + height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_set_fixed_size".} +proc gtk_cell_renderer_get_fixed_size*(cell: PGtkCellRenderer, width: Pgint, + height: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_get_fixed_size".} +const + bm_TGtkCellRendererText_strikethrough* = 0x00000001 + bp_TGtkCellRendererText_strikethrough* = 0 + bm_TGtkCellRendererText_editable* = 0x00000002 + bp_TGtkCellRendererText_editable* = 1 + bm_TGtkCellRendererText_scale_set* = 0x00000004 + bp_TGtkCellRendererText_scale_set* = 2 + bm_TGtkCellRendererText_foreground_set* = 0x00000008 + bp_TGtkCellRendererText_foreground_set* = 3 + bm_TGtkCellRendererText_background_set* = 0x00000010 + bp_TGtkCellRendererText_background_set* = 4 + bm_TGtkCellRendererText_underline_set* = 0x00000020 + bp_TGtkCellRendererText_underline_set* = 5 + bm_TGtkCellRendererText_rise_set* = 0x00000040 + bp_TGtkCellRendererText_rise_set* = 6 + bm_TGtkCellRendererText_strikethrough_set* = 0x00000080 + bp_TGtkCellRendererText_strikethrough_set* = 7 + bm_TGtkCellRendererText_editable_set* = 0x00000100 + bp_TGtkCellRendererText_editable_set* = 8 + bm_TGtkCellRendererText_calc_fixed_height* = 0x00000200 + bp_TGtkCellRendererText_calc_fixed_height* = 9 + +proc GTK_TYPE_CELL_RENDERER_TEXT*(): GType +proc GTK_CELL_RENDERER_TEXT*(obj: pointer): PGtkCellRendererText +proc GTK_CELL_RENDERER_TEXT_CLASS*(klass: pointer): PGtkCellRendererTextClass +proc GTK_IS_CELL_RENDERER_TEXT*(obj: pointer): bool +proc GTK_IS_CELL_RENDERER_TEXT_CLASS*(klass: pointer): bool +proc GTK_CELL_RENDERER_TEXT_GET_CLASS*(obj: pointer): PGtkCellRendererTextClass +proc strikethrough*(a: var TGtkCellRendererText): guint +proc set_strikethrough*(a: var TGtkCellRendererText, `strikethrough`: guint) +proc editable*(a: var TGtkCellRendererText): guint +proc set_editable*(a: var TGtkCellRendererText, `editable`: guint) +proc scale_set*(a: var TGtkCellRendererText): guint +proc set_scale_set*(a: var TGtkCellRendererText, `scale_set`: guint) +proc foreground_set*(a: var TGtkCellRendererText): guint +proc set_foreground_set*(a: var TGtkCellRendererText, `foreground_set`: guint) +proc background_set*(a: var TGtkCellRendererText): guint +proc set_background_set*(a: var TGtkCellRendererText, `background_set`: guint) +proc underline_set*(a: var TGtkCellRendererText): guint +proc set_underline_set*(a: var TGtkCellRendererText, `underline_set`: guint) +proc rise_set*(a: var TGtkCellRendererText): guint +proc set_rise_set*(a: var TGtkCellRendererText, `rise_set`: guint) +proc strikethrough_set*(a: var TGtkCellRendererText): guint +proc set_strikethrough_set*(a: var TGtkCellRendererText, + `strikethrough_set`: guint) +proc editable_set*(a: var TGtkCellRendererText): guint +proc set_editable_set*(a: var TGtkCellRendererText, `editable_set`: guint) +proc calc_fixed_height*(a: var TGtkCellRendererText): guint +proc set_calc_fixed_height*(a: var TGtkCellRendererText, + `calc_fixed_height`: guint) +proc gtk_cell_renderer_text_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_text_get_type".} +proc gtk_cell_renderer_text_new*(): PGtkCellRenderer{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_text_new".} +proc gtk_cell_renderer_text_set_fixed_height_from_font*( + renderer: PGtkCellRendererText, number_of_rows: gint){.cdecl, + dynlib: gtklib, importc: "gtk_cell_renderer_text_set_fixed_height_from_font".} +const + bm_TGtkCellRendererToggle_active* = 0x00000001 + bp_TGtkCellRendererToggle_active* = 0 + bm_TGtkCellRendererToggle_activatable* = 0x00000002 + bp_TGtkCellRendererToggle_activatable* = 1 + bm_TGtkCellRendererToggle_radio* = 0x00000004 + bp_TGtkCellRendererToggle_radio* = 2 + +proc GTK_TYPE_CELL_RENDERER_TOGGLE*(): GType +proc GTK_CELL_RENDERER_TOGGLE*(obj: pointer): PGtkCellRendererToggle +proc GTK_CELL_RENDERER_TOGGLE_CLASS*(klass: pointer): PGtkCellRendererToggleClass +proc GTK_IS_CELL_RENDERER_TOGGLE*(obj: pointer): bool +proc GTK_IS_CELL_RENDERER_TOGGLE_CLASS*(klass: pointer): bool +proc GTK_CELL_RENDERER_TOGGLE_GET_CLASS*(obj: pointer): PGtkCellRendererToggleClass +proc active*(a: var TGtkCellRendererToggle): guint +proc set_active*(a: var TGtkCellRendererToggle, `active`: guint) +proc activatable*(a: var TGtkCellRendererToggle): guint +proc set_activatable*(a: var TGtkCellRendererToggle, `activatable`: guint) +proc radio*(a: var TGtkCellRendererToggle): guint +proc set_radio*(a: var TGtkCellRendererToggle, `radio`: guint) +proc gtk_cell_renderer_toggle_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_toggle_get_type".} +proc gtk_cell_renderer_toggle_new*(): PGtkCellRenderer{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_toggle_new".} +proc gtk_cell_renderer_toggle_get_radio*(toggle: PGtkCellRendererToggle): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_cell_renderer_toggle_get_radio".} +proc gtk_cell_renderer_toggle_set_radio*(toggle: PGtkCellRendererToggle, + radio: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_toggle_set_radio".} +proc gtk_cell_renderer_toggle_get_active*(toggle: PGtkCellRendererToggle): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_cell_renderer_toggle_get_active".} +proc gtk_cell_renderer_toggle_set_active*(toggle: PGtkCellRendererToggle, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_toggle_set_active".} +proc GTK_TYPE_CELL_RENDERER_PIXBUF*(): GType +proc GTK_CELL_RENDERER_PIXBUF*(obj: pointer): PGtkCellRendererPixbuf +proc GTK_CELL_RENDERER_PIXBUF_CLASS*(klass: pointer): PGtkCellRendererPixbufClass +proc GTK_IS_CELL_RENDERER_PIXBUF*(obj: pointer): bool +proc GTK_IS_CELL_RENDERER_PIXBUF_CLASS*(klass: pointer): bool +proc GTK_CELL_RENDERER_PIXBUF_GET_CLASS*(obj: pointer): PGtkCellRendererPixbufClass +proc gtk_cell_renderer_pixbuf_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_pixbuf_get_type".} +proc gtk_cell_renderer_pixbuf_new*(): PGtkCellRenderer{.cdecl, dynlib: gtklib, + importc: "gtk_cell_renderer_pixbuf_new".} +proc GTK_TYPE_ITEM*(): GType +proc GTK_ITEM*(obj: pointer): PGtkItem +proc GTK_ITEM_CLASS*(klass: pointer): PGtkItemClass +proc GTK_IS_ITEM*(obj: pointer): bool +proc GTK_IS_ITEM_CLASS*(klass: pointer): bool +proc GTK_ITEM_GET_CLASS*(obj: pointer): PGtkItemClass +proc gtk_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_item_get_type".} +proc gtk_item_select*(item: PGtkItem){.cdecl, dynlib: gtklib, + importc: "gtk_item_select".} +proc gtk_item_deselect*(item: PGtkItem){.cdecl, dynlib: gtklib, + importc: "gtk_item_deselect".} +proc gtk_item_toggle*(item: PGtkItem){.cdecl, dynlib: gtklib, + importc: "gtk_item_toggle".} +const + bm_TGtkMenuItem_show_submenu_indicator* = 0x00000001 + bp_TGtkMenuItem_show_submenu_indicator* = 0 + bm_TGtkMenuItem_submenu_placement* = 0x00000002 + bp_TGtkMenuItem_submenu_placement* = 1 + bm_TGtkMenuItem_submenu_direction* = 0x00000004 + bp_TGtkMenuItem_submenu_direction* = 2 + bm_TGtkMenuItem_right_justify* = 0x00000008 + bp_TGtkMenuItem_right_justify* = 3 + bm_TGtkMenuItem_timer_from_keypress* = 0x00000010 + bp_TGtkMenuItem_timer_from_keypress* = 4 + bm_TGtkMenuItemClass_hide_on_activate* = 0x00000001 + bp_TGtkMenuItemClass_hide_on_activate* = 0 + +proc GTK_TYPE_MENU_ITEM*(): GType +proc GTK_MENU_ITEM*(obj: pointer): PGtkMenuItem +proc GTK_MENU_ITEM_CLASS*(klass: pointer): PGtkMenuItemClass +proc GTK_IS_MENU_ITEM*(obj: pointer): bool +proc GTK_IS_MENU_ITEM_CLASS*(klass: pointer): bool +proc GTK_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkMenuItemClass +proc show_submenu_indicator*(a: var TGtkMenuItem): guint +proc set_show_submenu_indicator*(a: var TGtkMenuItem, + `show_submenu_indicator`: guint) +proc submenu_placement*(a: var TGtkMenuItem): guint +proc set_submenu_placement*(a: var TGtkMenuItem, `submenu_placement`: guint) +proc submenu_direction*(a: var TGtkMenuItem): guint +proc set_submenu_direction*(a: var TGtkMenuItem, `submenu_direction`: guint) +proc right_justify*(a: var TGtkMenuItem): guint +proc set_right_justify*(a: var TGtkMenuItem, `right_justify`: guint) +proc timer_from_keypress*(a: var TGtkMenuItem): guint +proc set_timer_from_keypress*(a: var TGtkMenuItem, `timer_from_keypress`: guint) +proc hide_on_activate*(a: var TGtkMenuItemClass): guint +proc set_hide_on_activate*(a: var TGtkMenuItemClass, `hide_on_activate`: guint) +proc gtk_menu_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_menu_item_get_type".} +proc gtk_menu_item_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_menu_item_new".} +proc gtk_menu_item_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_menu_item_new_with_label".} +proc gtk_menu_item_new_with_mnemonic*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_menu_item_new_with_mnemonic".} +proc gtk_menu_item_set_submenu*(menu_item: PGtkMenuItem, submenu: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_menu_item_set_submenu".} +proc gtk_menu_item_get_submenu*(menu_item: PGtkMenuItem): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_menu_item_get_submenu".} +proc gtk_menu_item_remove_submenu*(menu_item: PGtkMenuItem){.cdecl, + dynlib: gtklib, importc: "gtk_menu_item_remove_submenu".} +proc gtk_menu_item_select*(menu_item: PGtkMenuItem){.cdecl, dynlib: gtklib, + importc: "gtk_menu_item_select".} +proc gtk_menu_item_deselect*(menu_item: PGtkMenuItem){.cdecl, dynlib: gtklib, + importc: "gtk_menu_item_deselect".} +proc gtk_menu_item_activate*(menu_item: PGtkMenuItem){.cdecl, dynlib: gtklib, + importc: "gtk_menu_item_activate".} +proc gtk_menu_item_toggle_size_request*(menu_item: PGtkMenuItem, + requisition: Pgint){.cdecl, + dynlib: gtklib, importc: "gtk_menu_item_toggle_size_request".} +proc gtk_menu_item_toggle_size_allocate*(menu_item: PGtkMenuItem, + allocation: gint){.cdecl, dynlib: gtklib, + importc: "gtk_menu_item_toggle_size_allocate".} +proc gtk_menu_item_set_right_justified*(menu_item: PGtkMenuItem, + right_justified: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_menu_item_set_right_justified".} +proc gtk_menu_item_get_right_justified*(menu_item: PGtkMenuItem): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_menu_item_get_right_justified".} +proc gtk_menu_item_set_accel_path*(menu_item: PGtkMenuItem, accel_path: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_menu_item_set_accel_path".} +proc gtk_menu_item_refresh_accel_path*(menu_item: PGtkMenuItem, + prefix: cstring, accel_group: PGtkAccelGroup, group_changed: gboolean){. + cdecl, dynlib: gtklib, importc: "_gtk_menu_item_refresh_accel_path".} +proc gtk_menu_item_is_selectable*(menu_item: PGtkWidget): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_menu_item_is_selectable".} +const + bm_TGtkToggleButton_active* = 0x00000001 + bp_TGtkToggleButton_active* = 0 + bm_TGtkToggleButton_draw_indicator* = 0x00000002 + bp_TGtkToggleButton_draw_indicator* = 1 + bm_TGtkToggleButton_inconsistent* = 0x00000004 + bp_TGtkToggleButton_inconsistent* = 2 + +proc GTK_TYPE_TOGGLE_BUTTON*(): GType +proc GTK_TOGGLE_BUTTON*(obj: pointer): PGtkToggleButton +proc GTK_TOGGLE_BUTTON_CLASS*(klass: pointer): PGtkToggleButtonClass +proc GTK_IS_TOGGLE_BUTTON*(obj: pointer): bool +proc GTK_IS_TOGGLE_BUTTON_CLASS*(klass: pointer): bool +proc GTK_TOGGLE_BUTTON_GET_CLASS*(obj: pointer): PGtkToggleButtonClass +proc active*(a: var TGtkToggleButton): guint +proc set_active*(a: var TGtkToggleButton, `active`: guint) +proc draw_indicator*(a: var TGtkToggleButton): guint +proc set_draw_indicator*(a: var TGtkToggleButton, `draw_indicator`: guint) +proc inconsistent*(a: var TGtkToggleButton): guint +proc set_inconsistent*(a: var TGtkToggleButton, `inconsistent`: guint) +proc gtk_toggle_button_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_toggle_button_get_type".} +proc gtk_toggle_button_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_toggle_button_new".} +proc gtk_toggle_button_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_toggle_button_new_with_label".} +proc gtk_toggle_button_new_with_mnemonic*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_toggle_button_new_with_mnemonic".} +proc gtk_toggle_button_set_mode*(toggle_button: PGtkToggleButton, + draw_indicator: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_toggle_button_set_mode".} +proc gtk_toggle_button_get_mode*(toggle_button: PGtkToggleButton): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_toggle_button_get_mode".} +proc gtk_toggle_button_set_active*(toggle_button: PGtkToggleButton, + is_active: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_toggle_button_set_active".} +proc gtk_toggle_button_get_active*(toggle_button: PGtkToggleButton): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_toggle_button_get_active".} +proc gtk_toggle_button_toggled*(toggle_button: PGtkToggleButton){.cdecl, + dynlib: gtklib, importc: "gtk_toggle_button_toggled".} +proc gtk_toggle_button_set_inconsistent*(toggle_button: PGtkToggleButton, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_toggle_button_set_inconsistent".} +proc gtk_toggle_button_get_inconsistent*(toggle_button: PGtkToggleButton): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_toggle_button_get_inconsistent".} +proc GTK_TYPE_CHECK_BUTTON*(): GType +proc GTK_CHECK_BUTTON*(obj: pointer): PGtkCheckButton +proc GTK_CHECK_BUTTON_CLASS*(klass: pointer): PGtkCheckButtonClass +proc GTK_IS_CHECK_BUTTON*(obj: pointer): bool +proc GTK_IS_CHECK_BUTTON_CLASS*(klass: pointer): bool +proc GTK_CHECK_BUTTON_GET_CLASS*(obj: pointer): PGtkCheckButtonClass +proc gtk_check_button_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_check_button_get_type".} +proc gtk_check_button_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_check_button_new".} +proc gtk_check_button_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_check_button_new_with_label".} +proc gtk_check_button_new_with_mnemonic*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_check_button_new_with_mnemonic".} +proc gtk_check_button_get_props*(check_button: PGtkCheckButton, + indicator_size: Pgint, + indicator_spacing: Pgint){.cdecl, + dynlib: gtklib, importc: "_gtk_check_button_get_props".} +const + bm_TGtkCheckMenuItem_active* = 0x00000001 + bp_TGtkCheckMenuItem_active* = 0 + bm_TGtkCheckMenuItem_always_show_toggle* = 0x00000002 + bp_TGtkCheckMenuItem_always_show_toggle* = 1 + bm_TGtkCheckMenuItem_inconsistent* = 0x00000004 + bp_TGtkCheckMenuItem_inconsistent* = 2 + +proc GTK_TYPE_CHECK_MENU_ITEM*(): GType +proc GTK_CHECK_MENU_ITEM*(obj: pointer): PGtkCheckMenuItem +proc GTK_CHECK_MENU_ITEM_CLASS*(klass: pointer): PGtkCheckMenuItemClass +proc GTK_IS_CHECK_MENU_ITEM*(obj: pointer): bool +proc GTK_IS_CHECK_MENU_ITEM_CLASS*(klass: pointer): bool +proc GTK_CHECK_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkCheckMenuItemClass +proc active*(a: var TGtkCheckMenuItem): guint +proc set_active*(a: var TGtkCheckMenuItem, `active`: guint) +proc always_show_toggle*(a: var TGtkCheckMenuItem): guint +proc set_always_show_toggle*(a: var TGtkCheckMenuItem, + `always_show_toggle`: guint) +proc inconsistent*(a: var TGtkCheckMenuItem): guint +proc set_inconsistent*(a: var TGtkCheckMenuItem, `inconsistent`: guint) +proc gtk_check_menu_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_check_menu_item_get_type".} +proc gtk_check_menu_item_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_check_menu_item_new".} +proc gtk_check_menu_item_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_check_menu_item_new_with_label".} +proc gtk_check_menu_item_new_with_mnemonic*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_check_menu_item_new_with_mnemonic".} +proc gtk_check_menu_item_set_active*(check_menu_item: PGtkCheckMenuItem, + is_active: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_check_menu_item_set_active".} +proc gtk_check_menu_item_get_active*(check_menu_item: PGtkCheckMenuItem): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_check_menu_item_get_active".} +proc gtk_check_menu_item_toggled*(check_menu_item: PGtkCheckMenuItem){.cdecl, + dynlib: gtklib, importc: "gtk_check_menu_item_toggled".} +proc gtk_check_menu_item_set_inconsistent*(check_menu_item: PGtkCheckMenuItem, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_check_menu_item_set_inconsistent".} +proc gtk_check_menu_item_get_inconsistent*(check_menu_item: PGtkCheckMenuItem): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_check_menu_item_get_inconsistent".} +proc gtk_clipboard_get_for_display*(display: PGdkDisplay, selection: TGdkAtom): PGtkClipboard{. + cdecl, dynlib: gtklib, importc: "gtk_clipboard_get_for_display".} +proc gtk_clipboard_get_display*(clipboard: PGtkClipboard): PGdkDisplay{.cdecl, + dynlib: gtklib, importc: "gtk_clipboard_get_display".} +proc gtk_clipboard_set_with_data*(clipboard: PGtkClipboard, + targets: PGtkTargetEntry, n_targets: guint, + get_func: TGtkClipboardGetFunc, + clear_func: TGtkClipboardClearFunc, + user_data: gpointer): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_clipboard_set_with_data".} +proc gtk_clipboard_set_with_owner*(clipboard: PGtkClipboard, + targets: PGtkTargetEntry, n_targets: guint, + get_func: TGtkClipboardGetFunc, + clear_func: TGtkClipboardClearFunc, + owner: PGObject): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_clipboard_set_with_owner".} +proc gtk_clipboard_get_owner*(clipboard: PGtkClipboard): PGObject{.cdecl, + dynlib: gtklib, importc: "gtk_clipboard_get_owner".} +proc gtk_clipboard_clear*(clipboard: PGtkClipboard){.cdecl, dynlib: gtklib, + importc: "gtk_clipboard_clear".} +proc gtk_clipboard_set_text*(clipboard: PGtkClipboard, text: cstring, len: gint){. + cdecl, dynlib: gtklib, importc: "gtk_clipboard_set_text".} +proc gtk_clipboard_request_contents*(clipboard: PGtkClipboard, target: TGdkAtom, + callback: TGtkClipboardReceivedFunc, + user_data: gpointer){.cdecl, + dynlib: gtklib, importc: "gtk_clipboard_request_contents".} +proc gtk_clipboard_request_text*(clipboard: PGtkClipboard, + callback: TGtkClipboardTextReceivedFunc, + user_data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_clipboard_request_text".} +proc gtk_clipboard_wait_for_contents*(clipboard: PGtkClipboard, target: TGdkAtom): PGtkSelectionData{. + cdecl, dynlib: gtklib, importc: "gtk_clipboard_wait_for_contents".} +proc gtk_clipboard_wait_for_text*(clipboard: PGtkClipboard): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_clipboard_wait_for_text".} +proc gtk_clipboard_wait_is_text_available*(clipboard: PGtkClipboard): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_clipboard_wait_is_text_available".} +const + GTK_CLIST_IN_DRAG* = 1 shl 0 + GTK_CLIST_ROW_HEIGHT_SET* = 1 shl 1 + GTK_CLIST_SHOW_TITLES* = 1 shl 2 + GTK_CLIST_ADD_MODE* = 1 shl 4 + GTK_CLIST_AUTO_SORT* = 1 shl 5 + GTK_CLIST_AUTO_RESIZE_BLOCKED* = 1 shl 6 + GTK_CLIST_REORDERABLE* = 1 shl 7 + GTK_CLIST_USE_DRAG_ICONS* = 1 shl 8 + GTK_CLIST_DRAW_DRAG_LINE* = 1 shl 9 + GTK_CLIST_DRAW_DRAG_RECT* = 1 shl 10 + GTK_BUTTON_IGNORED* = 0 + GTK_BUTTON_SELECTS* = 1 shl 0 + GTK_BUTTON_DRAGS* = 1 shl 1 + GTK_BUTTON_EXPANDS* = 1 shl 2 + +const + bm_TGtkCListColumn_visible* = 0x00000001 + bp_TGtkCListColumn_visible* = 0 + bm_TGtkCListColumn_width_set* = 0x00000002 + bp_TGtkCListColumn_width_set* = 1 + bm_TGtkCListColumn_resizeable* = 0x00000004 + bp_TGtkCListColumn_resizeable* = 2 + bm_TGtkCListColumn_auto_resize* = 0x00000008 + bp_TGtkCListColumn_auto_resize* = 3 + bm_TGtkCListColumn_button_passive* = 0x00000010 + bp_TGtkCListColumn_button_passive* = 4 + bm_TGtkCListRow_fg_set* = 0x00000001 + bp_TGtkCListRow_fg_set* = 0 + bm_TGtkCListRow_bg_set* = 0x00000002 + bp_TGtkCListRow_bg_set* = 1 + bm_TGtkCListRow_selectable* = 0x00000004 + bp_TGtkCListRow_selectable* = 2 + +proc GTK_TYPE_CLIST*(): GType +proc GTK_CLIST*(obj: pointer): PGtkCList +proc GTK_CLIST_CLASS*(klass: pointer): PGtkCListClass +proc GTK_IS_CLIST*(obj: pointer): bool +proc GTK_IS_CLIST_CLASS*(klass: pointer): bool +proc GTK_CLIST_GET_CLASS*(obj: pointer): PGtkCListClass +proc GTK_CLIST_FLAGS*(clist: pointer): guint16 +proc GTK_CLIST_SET_FLAG*(clist: PGtkCList, flag: guint16) +proc GTK_CLIST_UNSET_FLAG*(clist: PGtkCList, flag: guint16) +#proc GTK_CLIST_IN_DRAG_get*(clist: pointer): bool +#proc GTK_CLIST_ROW_HEIGHT_SET_get*(clist: pointer): bool +#proc GTK_CLIST_SHOW_TITLES_get*(clist: pointer): bool +#proc GTK_CLIST_ADD_MODE_get*(clist: pointer): bool +#proc GTK_CLIST_AUTO_SORT_get*(clist: pointer): bool +#proc GTK_CLIST_AUTO_RESIZE_BLOCKED_get*(clist: pointer): bool +#proc GTK_CLIST_REORDERABLE_get*(clist: pointer): bool +#proc GTK_CLIST_USE_DRAG_ICONS_get*(clist: pointer): bool +#proc GTK_CLIST_DRAW_DRAG_LINE_get*(clist: pointer): bool +#proc GTK_CLIST_DRAW_DRAG_RECT_get*(clist: pointer): bool +#proc GTK_CLIST_ROW_get*(`glist_`: PGList): PGtkCListRow +#proc GTK_CELL_TEXT_get*(cell: pointer): PGtkCellText +#proc GTK_CELL_PIXMAP_get*(cell: pointer): PGtkCellPixmap +#proc GTK_CELL_PIXTEXT_get*(cell: pointer): PGtkCellPixText +#proc GTK_CELL_WIDGET_get*(cell: pointer): PGtkCellWidget +proc visible*(a: var TGtkCListColumn): guint +proc set_visible*(a: var TGtkCListColumn, `visible`: guint) +proc width_set*(a: var TGtkCListColumn): guint +proc set_width_set*(a: var TGtkCListColumn, `width_set`: guint) +proc resizeable*(a: var TGtkCListColumn): guint +proc set_resizeable*(a: var TGtkCListColumn, `resizeable`: guint) +proc auto_resize*(a: var TGtkCListColumn): guint +proc set_auto_resize*(a: var TGtkCListColumn, `auto_resize`: guint) +proc button_passive*(a: var TGtkCListColumn): guint +proc set_button_passive*(a: var TGtkCListColumn, `button_passive`: guint) +proc fg_set*(a: var TGtkCListRow): guint +proc set_fg_set*(a: var TGtkCListRow, `fg_set`: guint) +proc bg_set*(a: var TGtkCListRow): guint +proc set_bg_set*(a: var TGtkCListRow, `bg_set`: guint) +proc selectable*(a: var TGtkCListRow): guint +proc set_selectable*(a: var TGtkCListRow, `selectable`: guint) +proc gtk_clist_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_clist_get_type".} +proc gtk_clist_new*(columns: gint): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_clist_new".} +proc gtk_clist_set_hadjustment*(clist: PGtkCList, adjustment: PGtkAdjustment){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_hadjustment".} +proc gtk_clist_set_vadjustment*(clist: PGtkCList, adjustment: PGtkAdjustment){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_vadjustment".} +proc gtk_clist_get_hadjustment*(clist: PGtkCList): PGtkAdjustment{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_hadjustment".} +proc gtk_clist_get_vadjustment*(clist: PGtkCList): PGtkAdjustment{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_vadjustment".} +proc gtk_clist_set_shadow_type*(clist: PGtkCList, thetype: TGtkShadowType){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_shadow_type".} +proc gtk_clist_set_selection_mode*(clist: PGtkCList, mode: TGtkSelectionMode){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_selection_mode".} +proc gtk_clist_set_reorderable*(clist: PGtkCList, reorderable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_reorderable".} +proc gtk_clist_set_use_drag_icons*(clist: PGtkCList, use_icons: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_use_drag_icons".} +proc gtk_clist_set_button_actions*(clist: PGtkCList, button: guint, + button_actions: guint8){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_button_actions".} +proc gtk_clist_freeze*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_freeze".} +proc gtk_clist_thaw*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_thaw".} +proc gtk_clist_column_titles_show*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_column_titles_show".} +proc gtk_clist_column_titles_hide*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_column_titles_hide".} +proc gtk_clist_column_title_active*(clist: PGtkCList, column: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_column_title_active".} +proc gtk_clist_column_title_passive*(clist: PGtkCList, column: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_column_title_passive".} +proc gtk_clist_column_titles_active*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_column_titles_active".} +proc gtk_clist_column_titles_passive*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_column_titles_passive".} +proc gtk_clist_set_column_title*(clist: PGtkCList, column: gint, title: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_column_title".} +proc gtk_clist_get_column_title*(clist: PGtkCList, column: gint): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_column_title".} +proc gtk_clist_set_column_widget*(clist: PGtkCList, column: gint, + widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_clist_set_column_widget".} +proc gtk_clist_get_column_widget*(clist: PGtkCList, column: gint): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_clist_get_column_widget".} +proc gtk_clist_set_column_justification*(clist: PGtkCList, column: gint, + justification: TGtkJustification){.cdecl, dynlib: gtklib, importc: "gtk_clist_set_column_justification".} +proc gtk_clist_set_column_visibility*(clist: PGtkCList, column: gint, + visible: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_clist_set_column_visibility".} +proc gtk_clist_set_column_resizeable*(clist: PGtkCList, column: gint, + resizeable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_column_resizeable".} +proc gtk_clist_set_column_auto_resize*(clist: PGtkCList, column: gint, + auto_resize: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_column_auto_resize".} +proc gtk_clist_columns_autosize*(clist: PGtkCList): gint{.cdecl, dynlib: gtklib, + importc: "gtk_clist_columns_autosize".} +proc gtk_clist_optimal_column_width*(clist: PGtkCList, column: gint): gint{. + cdecl, dynlib: gtklib, importc: "gtk_clist_optimal_column_width".} +proc gtk_clist_set_column_width*(clist: PGtkCList, column: gint, width: gint){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_column_width".} +proc gtk_clist_set_column_min_width*(clist: PGtkCList, column: gint, + min_width: gint){.cdecl, dynlib: gtklib, + importc: "gtk_clist_set_column_min_width".} +proc gtk_clist_set_column_max_width*(clist: PGtkCList, column: gint, + max_width: gint){.cdecl, dynlib: gtklib, + importc: "gtk_clist_set_column_max_width".} +proc gtk_clist_set_row_height*(clist: PGtkCList, height: guint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_row_height".} +proc gtk_clist_moveto*(clist: PGtkCList, row: gint, column: gint, + row_align: gfloat, col_align: gfloat){.cdecl, + dynlib: gtklib, importc: "gtk_clist_moveto".} +proc gtk_clist_row_is_visible*(clist: PGtkCList, row: gint): TGtkVisibility{. + cdecl, dynlib: gtklib, importc: "gtk_clist_row_is_visible".} +proc gtk_clist_get_cell_type*(clist: PGtkCList, row: gint, column: gint): TGtkCellType{. + cdecl, dynlib: gtklib, importc: "gtk_clist_get_cell_type".} +proc gtk_clist_set_text*(clist: PGtkCList, row: gint, column: gint, text: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_text".} +proc gtk_clist_get_text*(clist: PGtkCList, row: gint, column: gint, + text: PPgchar): gint{.cdecl, dynlib: gtklib, + importc: "gtk_clist_get_text".} +proc gtk_clist_set_pixmap*(clist: PGtkCList, row: gint, column: gint, + pixmap: PGdkPixmap, mask: PGdkBitmap){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_pixmap".} +proc gtk_clist_get_pixmap*(clist: PGtkCList, row: gint, column: gint, + pixmap: var PGdkPixmap, mask: var PGdkBitmap): gint{. + cdecl, dynlib: gtklib, importc: "gtk_clist_get_pixmap".} +proc gtk_clist_set_pixtext*(clist: PGtkCList, row: gint, column: gint, + text: cstring, spacing: guint8, pixmap: PGdkPixmap, + mask: PGdkBitmap){.cdecl, dynlib: gtklib, + importc: "gtk_clist_set_pixtext".} +proc gtk_clist_set_foreground*(clist: PGtkCList, row: gint, color: PGdkColor){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_foreground".} +proc gtk_clist_set_background*(clist: PGtkCList, row: gint, color: PGdkColor){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_background".} +proc gtk_clist_set_cell_style*(clist: PGtkCList, row: gint, column: gint, + style: PGtkStyle){.cdecl, dynlib: gtklib, + importc: "gtk_clist_set_cell_style".} +proc gtk_clist_get_cell_style*(clist: PGtkCList, row: gint, column: gint): PGtkStyle{. + cdecl, dynlib: gtklib, importc: "gtk_clist_get_cell_style".} +proc gtk_clist_set_row_style*(clist: PGtkCList, row: gint, style: PGtkStyle){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_row_style".} +proc gtk_clist_get_row_style*(clist: PGtkCList, row: gint): PGtkStyle{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_row_style".} +proc gtk_clist_set_shift*(clist: PGtkCList, row: gint, column: gint, + vertical: gint, horizontal: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_shift".} +proc gtk_clist_set_selectable*(clist: PGtkCList, row: gint, selectable: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_selectable".} +proc gtk_clist_get_selectable*(clist: PGtkCList, row: gint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_selectable".} +proc gtk_clist_remove*(clist: PGtkCList, row: gint){.cdecl, dynlib: gtklib, + importc: "gtk_clist_remove".} +proc gtk_clist_set_row_data*(clist: PGtkCList, row: gint, data: gpointer){. + cdecl, dynlib: gtklib, importc: "gtk_clist_set_row_data".} +proc gtk_clist_set_row_data_full*(clist: PGtkCList, row: gint, data: gpointer, + destroy: TGtkDestroyNotify){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_row_data_full".} +proc gtk_clist_get_row_data*(clist: PGtkCList, row: gint): gpointer{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_row_data".} +proc gtk_clist_find_row_from_data*(clist: PGtkCList, data: gpointer): gint{. + cdecl, dynlib: gtklib, importc: "gtk_clist_find_row_from_data".} +proc gtk_clist_select_row*(clist: PGtkCList, row: gint, column: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_select_row".} +proc gtk_clist_unselect_row*(clist: PGtkCList, row: gint, column: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_unselect_row".} +proc gtk_clist_undo_selection*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_undo_selection".} +proc gtk_clist_clear*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_clear".} +proc gtk_clist_get_selection_info*(clist: PGtkCList, x: gint, y: gint, + row: Pgint, column: Pgint): gint{.cdecl, + dynlib: gtklib, importc: "gtk_clist_get_selection_info".} +proc gtk_clist_select_all*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_select_all".} +proc gtk_clist_unselect_all*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_unselect_all".} +proc gtk_clist_swap_rows*(clist: PGtkCList, row1: gint, row2: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_swap_rows".} +proc gtk_clist_row_move*(clist: PGtkCList, source_row: gint, dest_row: gint){. + cdecl, dynlib: gtklib, importc: "gtk_clist_row_move".} +proc gtk_clist_set_compare_func*(clist: PGtkCList, + cmp_func: TGtkCListCompareFunc){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_compare_func".} +proc gtk_clist_set_sort_column*(clist: PGtkCList, column: gint){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_sort_column".} +proc gtk_clist_set_sort_type*(clist: PGtkCList, sort_type: TGtkSortType){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_sort_type".} +proc gtk_clist_sort*(clist: PGtkCList){.cdecl, dynlib: gtklib, + importc: "gtk_clist_sort".} +proc gtk_clist_set_auto_sort*(clist: PGtkCList, auto_sort: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_clist_set_auto_sort".} +proc gtk_clist_create_cell_layout*(clist: PGtkCList, clist_row: PGtkCListRow, + column: gint): PPangoLayout{.cdecl, + dynlib: gtklib, importc: "_gtk_clist_create_cell_layout".} +const + GTK_DIALOG_MODAL* = 1 shl 0 + GTK_DIALOG_DESTROY_WITH_PARENT* = 1 shl 1 + GTK_DIALOG_NO_SEPARATOR* = 1 shl 2 + 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) + +proc GTK_TYPE_DIALOG*(): GType +proc GTK_DIALOG*(obj: pointer): PGtkDialog +proc GTK_DIALOG_CLASS*(klass: pointer): PGtkDialogClass +proc GTK_IS_DIALOG*(obj: pointer): bool +proc GTK_IS_DIALOG_CLASS*(klass: pointer): bool +proc GTK_DIALOG_GET_CLASS*(obj: pointer): PGtkDialogClass +proc gtk_dialog_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_dialog_get_type".} +proc gtk_dialog_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_dialog_new".} +proc gtk_dialog_add_action_widget*(dialog: PGtkDialog, child: PGtkWidget, + response_id: gint){.cdecl, dynlib: gtklib, + importc: "gtk_dialog_add_action_widget".} +proc gtk_dialog_add_button*(dialog: PGtkDialog, button_text: cstring, + response_id: gint): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_dialog_add_button".} +proc gtk_dialog_set_response_sensitive*(dialog: PGtkDialog, response_id: gint, + setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_dialog_set_response_sensitive".} +proc gtk_dialog_set_default_response*(dialog: PGtkDialog, response_id: gint){. + cdecl, dynlib: gtklib, importc: "gtk_dialog_set_default_response".} +proc gtk_dialog_set_has_separator*(dialog: PGtkDialog, setting: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_dialog_set_has_separator".} +proc gtk_dialog_get_has_separator*(dialog: PGtkDialog): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_dialog_get_has_separator".} +proc gtk_dialog_response*(dialog: PGtkDialog, response_id: gint){.cdecl, + dynlib: gtklib, importc: "gtk_dialog_response".} +proc gtk_dialog_run*(dialog: PGtkDialog): gint{.cdecl, dynlib: gtklib, + importc: "gtk_dialog_run".} +proc GTK_TYPE_VBOX*(): GType +proc GTK_VBOX*(obj: pointer): PGtkVBox +proc GTK_VBOX_CLASS*(klass: pointer): PGtkVBoxClass +proc GTK_IS_VBOX*(obj: pointer): bool +proc GTK_IS_VBOX_CLASS*(klass: pointer): bool +proc GTK_VBOX_GET_CLASS*(obj: pointer): PGtkVBoxClass +proc gtk_vbox_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vbox_get_type".} +proc gtk_vbox_new*(homogeneous: gboolean, spacing: gint): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_vbox_new".} +proc GTK_TYPE_COLOR_SELECTION*(): GType +proc GTK_COLOR_SELECTION*(obj: pointer): PGtkColorSelection +proc GTK_COLOR_SELECTION_CLASS*(klass: pointer): PGtkColorSelectionClass +proc GTK_IS_COLOR_SELECTION*(obj: pointer): bool +proc GTK_IS_COLOR_SELECTION_CLASS*(klass: pointer): bool +proc GTK_COLOR_SELECTION_GET_CLASS*(obj: pointer): PGtkColorSelectionClass +proc gtk_color_selection_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_get_type".} +proc gtk_color_selection_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_new".} +proc gtk_color_selection_get_has_opacity_control*(colorsel: PGtkColorSelection): gboolean{. + cdecl, dynlib: gtklib, + importc: "gtk_color_selection_get_has_opacity_control".} +proc gtk_color_selection_set_has_opacity_control*(colorsel: PGtkColorSelection, + has_opacity: gboolean){.cdecl, dynlib: gtklib, importc: "gtk_color_selection_set_has_opacity_control".} +proc gtk_color_selection_get_has_palette*(colorsel: PGtkColorSelection): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_color_selection_get_has_palette".} +proc gtk_color_selection_set_has_palette*(colorsel: PGtkColorSelection, + has_palette: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_set_has_palette".} +proc gtk_color_selection_set_current_color*(colorsel: PGtkColorSelection, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_set_current_color".} +proc gtk_color_selection_set_current_alpha*(colorsel: PGtkColorSelection, + alpha: guint16){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_set_current_alpha".} +proc gtk_color_selection_get_current_color*(colorsel: PGtkColorSelection, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_get_current_color".} +proc gtk_color_selection_get_current_alpha*(colorsel: PGtkColorSelection): guint16{. + cdecl, dynlib: gtklib, importc: "gtk_color_selection_get_current_alpha".} +proc gtk_color_selection_set_previous_color*(colorsel: PGtkColorSelection, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_set_previous_color".} +proc gtk_color_selection_set_previous_alpha*(colorsel: PGtkColorSelection, + alpha: guint16){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_set_previous_alpha".} +proc gtk_color_selection_get_previous_color*(colorsel: PGtkColorSelection, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_get_previous_color".} +proc gtk_color_selection_get_previous_alpha*(colorsel: PGtkColorSelection): guint16{. + cdecl, dynlib: gtklib, importc: "gtk_color_selection_get_previous_alpha".} +proc gtk_color_selection_is_adjusting*(colorsel: PGtkColorSelection): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_color_selection_is_adjusting".} +proc gtk_color_selection_palette_from_string*(str: cstring, + colors: var PGdkColor, n_colors: Pgint): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_palette_from_string".} +proc gtk_color_selection_palette_to_string*(colors: PGdkColor, n_colors: gint): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_color_selection_palette_to_string".} +proc gtk_color_selection_set_change_palette_with_screen_hook*( + func: TGtkColorSelectionChangePaletteWithScreenFunc): TGtkColorSelectionChangePaletteWithScreenFunc{. + cdecl, dynlib: gtklib, + importc: "gtk_color_selection_set_change_palette_with_screen_hook".} +proc GTK_TYPE_COLOR_SELECTION_DIALOG*(): GType +proc GTK_COLOR_SELECTION_DIALOG*(obj: pointer): PGtkColorSelectionDialog +proc GTK_COLOR_SELECTION_DIALOG_CLASS*(klass: pointer): PGtkColorSelectionDialogClass +proc GTK_IS_COLOR_SELECTION_DIALOG*(obj: pointer): bool +proc GTK_IS_COLOR_SELECTION_DIALOG_CLASS*(klass: pointer): bool +proc GTK_COLOR_SELECTION_DIALOG_GET_CLASS*(obj: pointer): PGtkColorSelectionDialogClass +proc gtk_color_selection_dialog_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_color_selection_dialog_get_type".} +proc gtk_color_selection_dialog_new*(title: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_color_selection_dialog_new".} +proc GTK_TYPE_HBOX*(): GType +proc GTK_HBOX*(obj: pointer): PGtkHBox +proc GTK_HBOX_CLASS*(klass: pointer): PGtkHBoxClass +proc GTK_IS_HBOX*(obj: pointer): bool +proc GTK_IS_HBOX_CLASS*(klass: pointer): bool +proc GTK_HBOX_GET_CLASS*(obj: pointer): PGtkHBoxClass +proc gtk_hbox_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hbox_get_type".} +proc gtk_hbox_new*(homogeneous: gboolean, spacing: gint): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_hbox_new".} +const + bm_TGtkCombo_value_in_list* = 0x00000001 + bp_TGtkCombo_value_in_list* = 0 + bm_TGtkCombo_ok_if_empty* = 0x00000002 + bp_TGtkCombo_ok_if_empty* = 1 + bm_TGtkCombo_case_sensitive* = 0x00000004 + bp_TGtkCombo_case_sensitive* = 2 + bm_TGtkCombo_use_arrows* = 0x00000008 + bp_TGtkCombo_use_arrows* = 3 + bm_TGtkCombo_use_arrows_always* = 0x00000010 + bp_TGtkCombo_use_arrows_always* = 4 + +proc GTK_TYPE_COMBO*(): GType +proc GTK_COMBO*(obj: pointer): PGtkCombo +proc GTK_COMBO_CLASS*(klass: pointer): PGtkComboClass +proc GTK_IS_COMBO*(obj: pointer): bool +proc GTK_IS_COMBO_CLASS*(klass: pointer): bool +proc GTK_COMBO_GET_CLASS*(obj: pointer): PGtkComboClass +proc value_in_list*(a: var TGtkCombo): guint +proc set_value_in_list*(a: var TGtkCombo, `value_in_list`: guint) +proc ok_if_empty*(a: var TGtkCombo): guint +proc set_ok_if_empty*(a: var TGtkCombo, `ok_if_empty`: guint) +proc case_sensitive*(a: var TGtkCombo): guint +proc set_case_sensitive*(a: var TGtkCombo, `case_sensitive`: guint) +proc use_arrows*(a: var TGtkCombo): guint +proc set_use_arrows*(a: var TGtkCombo, `use_arrows`: guint) +proc use_arrows_always*(a: var TGtkCombo): guint +proc set_use_arrows_always*(a: var TGtkCombo, `use_arrows_always`: guint) +proc gtk_combo_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_combo_get_type".} +proc gtk_combo_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_combo_new".} +proc gtk_combo_set_value_in_list*(combo: PGtkCombo, val: gboolean, + ok_if_empty: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_combo_set_value_in_list".} +proc gtk_combo_set_use_arrows*(combo: PGtkCombo, val: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_combo_set_use_arrows".} +proc gtk_combo_set_use_arrows_always*(combo: PGtkCombo, val: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_combo_set_use_arrows_always".} +proc gtk_combo_set_case_sensitive*(combo: PGtkCombo, val: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_combo_set_case_sensitive".} +proc gtk_combo_set_item_string*(combo: PGtkCombo, item: PGtkItem, + item_value: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_combo_set_item_string".} +proc gtk_combo_set_popdown_strings*(combo: PGtkCombo, strings: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_combo_set_popdown_strings".} +proc gtk_combo_disable_activate*(combo: PGtkCombo){.cdecl, dynlib: gtklib, + importc: "gtk_combo_disable_activate".} +const + bm_TGtkCTree_line_style* = 0x00000003 + bp_TGtkCTree_line_style* = 0 + bm_TGtkCTree_expander_style* = 0x0000000C + bp_TGtkCTree_expander_style* = 2 + bm_TGtkCTree_show_stub* = 0x00000010 + bp_TGtkCTree_show_stub* = 4 + bm_TGtkCTreeRow_is_leaf* = 0x00000001 + bp_TGtkCTreeRow_is_leaf* = 0 + bm_TGtkCTreeRow_expanded* = 0x00000002 + bp_TGtkCTreeRow_expanded* = 1 + +proc GTK_TYPE_CTREE*(): GType +proc GTK_CTREE*(obj: pointer): PGtkCTree +proc GTK_CTREE_CLASS*(klass: pointer): PGtkCTreeClass +proc GTK_IS_CTREE*(obj: pointer): bool +proc GTK_IS_CTREE_CLASS*(klass: pointer): bool +proc GTK_CTREE_GET_CLASS*(obj: pointer): PGtkCTreeClass +proc GTK_CTREE_ROW*(`node_`: TAddress): PGtkCTreeRow +proc GTK_CTREE_NODE*(`node_`: TAddress): PGtkCTreeNode +proc GTK_CTREE_NODE_NEXT*(`nnode_`: TAddress): PGtkCTreeNode +proc GTK_CTREE_NODE_PREV*(`pnode_`: TAddress): PGtkCTreeNode +proc GTK_CTREE_FUNC*(`func_`: TAddress): TGtkCTreeFunc +proc GTK_TYPE_CTREE_NODE*(): GType +proc line_style*(a: var TGtkCTree): guint +proc set_line_style*(a: var TGtkCTree, `line_style`: guint) +proc expander_style*(a: var TGtkCTree): guint +proc set_expander_style*(a: var TGtkCTree, `expander_style`: guint) +proc show_stub*(a: var TGtkCTree): guint +proc set_show_stub*(a: var TGtkCTree, `show_stub`: guint) +proc is_leaf*(a: var TGtkCTreeRow): guint +proc set_is_leaf*(a: var TGtkCTreeRow, `is_leaf`: guint) +proc expanded*(a: var TGtkCTreeRow): guint +proc set_expanded*(a: var TGtkCTreeRow, `expanded`: guint) +proc gtk_ctree_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_ctree_get_type".} +proc gtk_ctree_new*(columns: gint, tree_column: gint): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_new".} +proc gtk_ctree_insert_node*(ctree: PGtkCTree, parent: PGtkCTreeNode, + sibling: PGtkCTreeNode, text: openarray[cstring], + spacing: guint8, pixmap_closed: PGdkPixmap, + mask_closed: PGdkBitmap, pixmap_opened: PGdkPixmap, + mask_opened: PGdkBitmap, is_leaf: gboolean, + expanded: gboolean): PGtkCTreeNode{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_insert_node".} +proc gtk_ctree_remove_node*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_remove_node".} +proc gtk_ctree_insert_gnode*(ctree: PGtkCTree, parent: PGtkCTreeNode, + sibling: PGtkCTreeNode, gnode: PGNode, + func_: TGtkCTreeGNodeFunc, data: gpointer): PGtkCTreeNode{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_insert_gnode".} +proc gtk_ctree_export_to_gnode*(ctree: PGtkCTree, parent: PGNode, + sibling: PGNode, node_: PGtkCTreeNode, + func_: TGtkCTreeGNodeFunc, data: gpointer): PGNode{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_export_to_gnode".} +proc gtk_ctree_post_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode, + func_: TGtkCTreeFunc, data: gpointer){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_post_recursive".} +proc gtk_ctree_post_recursive_to_depth*(ctree: PGtkCTree, node_: PGtkCTreeNode, + depth: gint, func_: TGtkCTreeFunc, + data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_post_recursive_to_depth".} +proc gtk_ctree_pre_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode, + func_: TGtkCTreeFunc, data: gpointer){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_pre_recursive".} +proc gtk_ctree_pre_recursive_to_depth*(ctree: PGtkCTree, node_: PGtkCTreeNode, + depth: gint, func_: TGtkCTreeFunc, + data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_pre_recursive_to_depth".} +proc gtk_ctree_is_viewable*(ctree: PGtkCTree, node_: PGtkCTreeNode): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_is_viewable".} +proc gtk_ctree_last*(ctree: PGtkCTree, node_: PGtkCTreeNode): PGtkCTreeNode{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_last".} +proc gtk_ctree_find_node_ptr*(ctree: PGtkCTree, ctree_row: PGtkCTreeRow): PGtkCTreeNode{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_find_node_ptr".} +proc gtk_ctree_node_nth*(ctree: PGtkCTree, row: guint): PGtkCTreeNode{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_nth".} +proc gtk_ctree_find*(ctree: PGtkCTree, node_: PGtkCTreeNode, + child: PGtkCTreeNode): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_ctree_find".} +proc gtk_ctree_is_ancestor*(ctree: PGtkCTree, node_: PGtkCTreeNode, + child: PGtkCTreeNode): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_is_ancestor".} +proc gtk_ctree_find_by_row_data*(ctree: PGtkCTree, node_: PGtkCTreeNode, + data: gpointer): PGtkCTreeNode{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_find_by_row_data".} +proc gtk_ctree_find_all_by_row_data*(ctree: PGtkCTree, node_: PGtkCTreeNode, + data: gpointer): PGList{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_find_all_by_row_data".} +proc gtk_ctree_find_by_row_data_custom*(ctree: PGtkCTree, node_: PGtkCTreeNode, + data: gpointer, func_: TGCompareFunc): PGtkCTreeNode{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_find_by_row_data_custom".} +proc gtk_ctree_find_all_by_row_data_custom*(ctree: PGtkCTree, + node_: PGtkCTreeNode, data: gpointer, func_: TGCompareFunc): PGList{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_find_all_by_row_data_custom".} +proc gtk_ctree_is_hot_spot*(ctree: PGtkCTree, x: gint, y: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_is_hot_spot".} +proc gtk_ctree_move*(ctree: PGtkCTree, node_: PGtkCTreeNode, + new_parent: PGtkCTreeNode, new_sibling: PGtkCTreeNode){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_move".} +proc gtk_ctree_expand*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_expand".} +proc gtk_ctree_expand_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_expand_recursive".} +proc gtk_ctree_expand_to_depth*(ctree: PGtkCTree, node_: PGtkCTreeNode, + depth: gint){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_expand_to_depth".} +proc gtk_ctree_collapse*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_collapse".} +proc gtk_ctree_collapse_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_collapse_recursive".} +proc gtk_ctree_collapse_to_depth*(ctree: PGtkCTree, node_: PGtkCTreeNode, + depth: gint){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_collapse_to_depth".} +proc gtk_ctree_toggle_expansion*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_toggle_expansion".} +proc gtk_ctree_toggle_expansion_recursive*(ctree: PGtkCTree, + node_: PGtkCTreeNode){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_toggle_expansion_recursive".} +proc gtk_ctree_select*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_select".} +proc gtk_ctree_select_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_select_recursive".} +proc gtk_ctree_unselect*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_unselect".} +proc gtk_ctree_unselect_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_unselect_recursive".} +proc gtk_ctree_real_select_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode, + state: gint){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_real_select_recursive".} +proc gtk_ctree_node_set_text*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, text: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_set_text".} +proc gtk_ctree_node_set_pixmap*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, pixmap: PGdkPixmap, + mask: PGdkBitmap){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_node_set_pixmap".} +proc gtk_ctree_node_set_pixtext*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, text: cstring, spacing: guint8, + pixmap: PGdkPixmap, mask: PGdkBitmap){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_set_pixtext".} +proc gtk_ctree_set_node_info*(ctree: PGtkCTree, node_: PGtkCTreeNode, + text: cstring, spacing: guint8, + pixmap_closed: PGdkPixmap, + mask_closed: PGdkBitmap, + pixmap_opened: PGdkPixmap, + mask_opened: PGdkBitmap, is_leaf: gboolean, + expanded: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_set_node_info".} +proc gtk_ctree_node_set_shift*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, vertical: gint, horizontal: gint){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_node_set_shift".} +proc gtk_ctree_node_set_selectable*(ctree: PGtkCTree, node_: PGtkCTreeNode, + selectable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_set_selectable".} +proc gtk_ctree_node_get_selectable*(ctree: PGtkCTree, node_: PGtkCTreeNode): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_node_get_selectable".} +proc gtk_ctree_node_get_cell_type*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint): TGtkCellType{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_get_cell_type".} +proc gtk_ctree_node_get_text*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, text: PPgchar): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_get_text".} +proc gtk_ctree_node_set_row_style*(ctree: PGtkCTree, node_: PGtkCTreeNode, + style: PGtkStyle){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_node_set_row_style".} +proc gtk_ctree_node_get_row_style*(ctree: PGtkCTree, node_: PGtkCTreeNode): PGtkStyle{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_node_get_row_style".} +proc gtk_ctree_node_set_cell_style*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, style: PGtkStyle){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_set_cell_style".} +proc gtk_ctree_node_get_cell_style*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint): PGtkStyle{.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_get_cell_style".} +proc gtk_ctree_node_set_foreground*(ctree: PGtkCTree, node_: PGtkCTreeNode, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_node_set_foreground".} +proc gtk_ctree_node_set_background*(ctree: PGtkCTree, node_: PGtkCTreeNode, + color: PGdkColor){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_node_set_background".} +proc gtk_ctree_node_set_row_data*(ctree: PGtkCTree, node_: PGtkCTreeNode, + data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_ctree_node_set_row_data".} +proc gtk_ctree_node_set_row_data_full*(ctree: PGtkCTree, node_: PGtkCTreeNode, + data: gpointer, + destroy: TGtkDestroyNotify){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_node_set_row_data_full".} +proc gtk_ctree_node_get_row_data*(ctree: PGtkCTree, node_: PGtkCTreeNode): gpointer{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_node_get_row_data".} +proc gtk_ctree_node_moveto*(ctree: PGtkCTree, node_: PGtkCTreeNode, + column: gint, row_align: gfloat, col_align: gfloat){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_node_moveto".} +proc gtk_ctree_node_is_visible*(ctree: PGtkCTree, node_: PGtkCTreeNode): TGtkVisibility{. + cdecl, dynlib: gtklib, importc: "gtk_ctree_node_is_visible".} +proc gtk_ctree_set_indent*(ctree: PGtkCTree, indent: gint){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_set_indent".} +proc gtk_ctree_set_spacing*(ctree: PGtkCTree, spacing: gint){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_set_spacing".} +proc gtk_ctree_set_show_stub*(ctree: PGtkCTree, show_stub: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_set_show_stub".} +proc gtk_ctree_set_line_style*(ctree: PGtkCTree, line_style: TGtkCTreeLineStyle){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_set_line_style".} +proc gtk_ctree_set_expander_style*(ctree: PGtkCTree, + expander_style: TGtkCTreeExpanderStyle){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_set_expander_style".} +proc gtk_ctree_set_drag_compare_func*(ctree: PGtkCTree, + cmp_func: TGtkCTreeCompareDragFunc){. + cdecl, dynlib: gtklib, importc: "gtk_ctree_set_drag_compare_func".} +proc gtk_ctree_sort_node*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_sort_node".} +proc gtk_ctree_sort_recursive*(ctree: PGtkCTree, node_: PGtkCTreeNode){.cdecl, + dynlib: gtklib, importc: "gtk_ctree_sort_recursive".} +proc gtk_ctree_set_reorderable*(t: pointer, r: bool) +proc gtk_ctree_node_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_ctree_node_get_type".} +proc GTK_TYPE_DRAWING_AREA*(): GType +proc GTK_DRAWING_AREA*(obj: pointer): PGtkDrawingArea +proc GTK_DRAWING_AREA_CLASS*(klass: pointer): PGtkDrawingAreaClass +proc GTK_IS_DRAWING_AREA*(obj: pointer): bool +proc GTK_IS_DRAWING_AREA_CLASS*(klass: pointer): bool +proc GTK_DRAWING_AREA_GET_CLASS*(obj: pointer): PGtkDrawingAreaClass +proc gtk_drawing_area_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_drawing_area_get_type".} +proc gtk_drawing_area_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_drawing_area_new".} +proc GTK_TYPE_CURVE*(): GType +proc GTK_CURVE*(obj: pointer): PGtkCurve +proc GTK_CURVE_CLASS*(klass: pointer): PGtkCurveClass +proc GTK_IS_CURVE*(obj: pointer): bool +proc GTK_IS_CURVE_CLASS*(klass: pointer): bool +proc GTK_CURVE_GET_CLASS*(obj: pointer): PGtkCurveClass +proc gtk_curve_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_curve_get_type".} +proc gtk_curve_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_curve_new".} +proc gtk_curve_reset*(curve: PGtkCurve){.cdecl, dynlib: gtklib, + importc: "gtk_curve_reset".} +proc gtk_curve_set_gamma*(curve: PGtkCurve, gamma: gfloat){.cdecl, + dynlib: gtklib, importc: "gtk_curve_set_gamma".} +proc gtk_curve_set_range*(curve: PGtkCurve, min_x: gfloat, max_x: gfloat, + min_y: gfloat, max_y: gfloat){.cdecl, dynlib: gtklib, + importc: "gtk_curve_set_range".} +proc gtk_curve_set_curve_type*(curve: PGtkCurve, thetype: TGtkCurveType){.cdecl, + dynlib: gtklib, importc: "gtk_curve_set_curve_type".} +const + GTK_DEST_DEFAULT_MOTION* = 1 shl 0 + GTK_DEST_DEFAULT_HIGHLIGHT* = 1 shl 1 + GTK_DEST_DEFAULT_DROP* = 1 shl 2 + GTK_DEST_DEFAULT_ALL* = 0x00000007 + GTK_TARGET_SAME_APP* = 1 shl 0 + GTK_TARGET_SAME_WIDGET* = 1 shl 1 + +proc gtk_drag_get_data*(widget: PGtkWidget, context: PGdkDragContext, + target: TGdkAtom, time: guint32){.cdecl, dynlib: gtklib, + importc: "gtk_drag_get_data".} +proc gtk_drag_finish*(context: PGdkDragContext, success: gboolean, + del: gboolean, time: guint32){.cdecl, dynlib: gtklib, + importc: "gtk_drag_finish".} +proc gtk_drag_get_source_widget*(context: PGdkDragContext): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_drag_get_source_widget".} +proc gtk_drag_highlight*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_drag_highlight".} +proc gtk_drag_unhighlight*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_drag_unhighlight".} +proc gtk_drag_dest_set*(widget: PGtkWidget, flags: TGtkDestDefaults, + targets: PGtkTargetEntry, n_targets: gint, + actions: TGdkDragAction){.cdecl, dynlib: gtklib, + importc: "gtk_drag_dest_set".} +proc gtk_drag_dest_set_proxy*(widget: PGtkWidget, proxy_window: PGdkWindow, + protocol: TGdkDragProtocol, + use_coordinates: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_drag_dest_set_proxy".} +proc gtk_drag_dest_unset*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_drag_dest_unset".} +proc gtk_drag_dest_find_target*(widget: PGtkWidget, context: PGdkDragContext, + target_list: PGtkTargetList): TGdkAtom{.cdecl, + dynlib: gtklib, importc: "gtk_drag_dest_find_target".} +proc gtk_drag_dest_get_target_list*(widget: PGtkWidget): PGtkTargetList{.cdecl, + dynlib: gtklib, importc: "gtk_drag_dest_get_target_list".} +proc gtk_drag_dest_set_target_list*(widget: PGtkWidget, + target_list: PGtkTargetList){.cdecl, + dynlib: gtklib, importc: "gtk_drag_dest_set_target_list".} +proc gtk_drag_source_set*(widget: PGtkWidget, + start_button_mask: TGdkModifierType, + targets: PGtkTargetEntry, n_targets: gint, + actions: TGdkDragAction){.cdecl, dynlib: gtklib, + importc: "gtk_drag_source_set".} +proc gtk_drag_source_unset*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_drag_source_unset".} +proc gtk_drag_source_set_icon*(widget: PGtkWidget, colormap: PGdkColormap, + pixmap: PGdkPixmap, mask: PGdkBitmap){.cdecl, + dynlib: gtklib, importc: "gtk_drag_source_set_icon".} +proc gtk_drag_source_set_icon_pixbuf*(widget: PGtkWidget, pixbuf: PGdkPixbuf){. + cdecl, dynlib: gtklib, importc: "gtk_drag_source_set_icon_pixbuf".} +proc gtk_drag_source_set_icon_stock*(widget: PGtkWidget, stock_id: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_drag_source_set_icon_stock".} +proc gtk_drag_begin*(widget: PGtkWidget, targets: PGtkTargetList, + actions: TGdkDragAction, button: gint, event: PGdkEvent): PGdkDragContext{. + cdecl, dynlib: gtklib, importc: "gtk_drag_begin".} +proc gtk_drag_set_icon_widget*(context: PGdkDragContext, widget: PGtkWidget, + hot_x: gint, hot_y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_drag_set_icon_widget".} +proc gtk_drag_set_icon_pixmap*(context: PGdkDragContext, colormap: PGdkColormap, + pixmap: PGdkPixmap, mask: PGdkBitmap, + hot_x: gint, hot_y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_drag_set_icon_pixmap".} +proc gtk_drag_set_icon_pixbuf*(context: PGdkDragContext, pixbuf: PGdkPixbuf, + hot_x: gint, hot_y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_drag_set_icon_pixbuf".} +proc gtk_drag_set_icon_stock*(context: PGdkDragContext, stock_id: cstring, + hot_x: gint, hot_y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_drag_set_icon_stock".} +proc gtk_drag_set_icon_default*(context: PGdkDragContext){.cdecl, + dynlib: gtklib, importc: "gtk_drag_set_icon_default".} +proc gtk_drag_check_threshold*(widget: PGtkWidget, start_x: gint, start_y: gint, + current_x: gint, current_y: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_drag_check_threshold".} +proc gtk_drag_source_handle_event*(widget: PGtkWidget, event: PGdkEvent){. + cdecl, dynlib: gtklib, importc: "_gtk_drag_source_handle_event".} +proc gtk_drag_dest_handle_event*(toplevel: PGtkWidget, event: PGdkEvent){. + cdecl, dynlib: gtklib, importc: "_gtk_drag_dest_handle_event".} +proc GTK_TYPE_EDITABLE*(): GType +proc GTK_EDITABLE*(obj: pointer): PGtkEditable +proc GTK_EDITABLE_CLASS*(vtable: pointer): PGtkEditableClass +proc GTK_IS_EDITABLE*(obj: pointer): bool +proc GTK_IS_EDITABLE_CLASS*(vtable: pointer): bool +proc GTK_EDITABLE_GET_CLASS*(inst: pointer): PGtkEditableClass +proc gtk_editable_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_editable_get_type".} +proc gtk_editable_select_region*(editable: PGtkEditable, start: gint, + theEnd: gint){.cdecl, dynlib: gtklib, + importc: "gtk_editable_select_region".} +proc gtk_editable_get_selection_bounds*(editable: PGtkEditable, start: Pgint, + theEnd: Pgint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_editable_get_selection_bounds".} +proc gtk_editable_insert_text*(editable: PGtkEditable, new_text: cstring, + new_text_length: gint, position: Pgint){.cdecl, + dynlib: gtklib, importc: "gtk_editable_insert_text".} +proc gtk_editable_delete_text*(editable: PGtkEditable, start_pos: gint, + end_pos: gint){.cdecl, dynlib: gtklib, + importc: "gtk_editable_delete_text".} +proc gtk_editable_get_chars*(editable: PGtkEditable, start_pos: gint, + end_pos: gint): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_editable_get_chars".} +proc gtk_editable_cut_clipboard*(editable: PGtkEditable){.cdecl, dynlib: gtklib, + importc: "gtk_editable_cut_clipboard".} +proc gtk_editable_copy_clipboard*(editable: PGtkEditable){.cdecl, + dynlib: gtklib, importc: "gtk_editable_copy_clipboard".} +proc gtk_editable_paste_clipboard*(editable: PGtkEditable){.cdecl, + dynlib: gtklib, importc: "gtk_editable_paste_clipboard".} +proc gtk_editable_delete_selection*(editable: PGtkEditable){.cdecl, + dynlib: gtklib, importc: "gtk_editable_delete_selection".} +proc gtk_editable_set_position*(editable: PGtkEditable, position: gint){.cdecl, + dynlib: gtklib, importc: "gtk_editable_set_position".} +proc gtk_editable_get_position*(editable: PGtkEditable): gint{.cdecl, + dynlib: gtklib, importc: "gtk_editable_get_position".} +proc gtk_editable_set_editable*(editable: PGtkEditable, is_editable: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_editable_set_editable".} +proc gtk_editable_get_editable*(editable: PGtkEditable): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_editable_get_editable".} +proc GTK_TYPE_IM_CONTEXT*(): GType +proc GTK_IM_CONTEXT*(obj: pointer): PGtkIMContext +proc GTK_IM_CONTEXT_CLASS*(klass: pointer): PGtkIMContextClass +proc GTK_IS_IM_CONTEXT*(obj: pointer): bool +proc GTK_IS_IM_CONTEXT_CLASS*(klass: pointer): bool +proc GTK_IM_CONTEXT_GET_CLASS*(obj: pointer): PGtkIMContextClass +proc gtk_im_context_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_im_context_get_type".} +proc gtk_im_context_set_client_window*(context: PGtkIMContext, + window: PGdkWindow){.cdecl, + dynlib: gtklib, importc: "gtk_im_context_set_client_window".} +proc gtk_im_context_filter_keypress*(context: PGtkIMContext, event: PGdkEventKey): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_im_context_filter_keypress".} +proc gtk_im_context_focus_in*(context: PGtkIMContext){.cdecl, dynlib: gtklib, + importc: "gtk_im_context_focus_in".} +proc gtk_im_context_focus_out*(context: PGtkIMContext){.cdecl, dynlib: gtklib, + importc: "gtk_im_context_focus_out".} +proc gtk_im_context_reset*(context: PGtkIMContext){.cdecl, dynlib: gtklib, + importc: "gtk_im_context_reset".} +proc gtk_im_context_set_cursor_location*(context: PGtkIMContext, + area: PGdkRectangle){.cdecl, dynlib: gtklib, + importc: "gtk_im_context_set_cursor_location".} +proc gtk_im_context_set_use_preedit*(context: PGtkIMContext, + use_preedit: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_im_context_set_use_preedit".} +proc gtk_im_context_set_surrounding*(context: PGtkIMContext, text: cstring, + len: gint, cursor_index: gint){.cdecl, + dynlib: gtklib, importc: "gtk_im_context_set_surrounding".} +proc gtk_im_context_get_surrounding*(context: PGtkIMContext, text: PPgchar, + cursor_index: Pgint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_im_context_get_surrounding".} +proc gtk_im_context_delete_surrounding*(context: PGtkIMContext, offset: gint, + n_chars: gint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_im_context_delete_surrounding".} +const + bm_TGtkMenuShell_active* = 0x00000001 + bp_TGtkMenuShell_active* = 0 + bm_TGtkMenuShell_have_grab* = 0x00000002 + bp_TGtkMenuShell_have_grab* = 1 + bm_TGtkMenuShell_have_xgrab* = 0x00000004 + bp_TGtkMenuShell_have_xgrab* = 2 + bm_TGtkMenuShell_ignore_leave* = 0x00000008 + bp_TGtkMenuShell_ignore_leave* = 3 + bm_TGtkMenuShell_menu_flag* = 0x00000010 + bp_TGtkMenuShell_menu_flag* = 4 + bm_TGtkMenuShell_ignore_enter* = 0x00000020 + bp_TGtkMenuShell_ignore_enter* = 5 + bm_TGtkMenuShellClass_submenu_placement* = 0x00000001 + bp_TGtkMenuShellClass_submenu_placement* = 0 + +proc GTK_TYPE_MENU_SHELL*(): GType +proc GTK_MENU_SHELL*(obj: pointer): PGtkMenuShell +proc GTK_MENU_SHELL_CLASS*(klass: pointer): PGtkMenuShellClass +proc GTK_IS_MENU_SHELL*(obj: pointer): bool +proc GTK_IS_MENU_SHELL_CLASS*(klass: pointer): bool +proc GTK_MENU_SHELL_GET_CLASS*(obj: pointer): PGtkMenuShellClass +proc active*(a: var TGtkMenuShell): guint +proc set_active*(a: var TGtkMenuShell, `active`: guint) +proc have_grab*(a: var TGtkMenuShell): guint +proc set_have_grab*(a: var TGtkMenuShell, `have_grab`: guint) +proc have_xgrab*(a: var TGtkMenuShell): guint +proc set_have_xgrab*(a: var TGtkMenuShell, `have_xgrab`: guint) +proc ignore_leave*(a: var TGtkMenuShell): guint +proc set_ignore_leave*(a: var TGtkMenuShell, `ignore_leave`: guint) +proc menu_flag*(a: var TGtkMenuShell): guint +proc set_menu_flag*(a: var TGtkMenuShell, `menu_flag`: guint) +proc ignore_enter*(a: var TGtkMenuShell): guint +proc set_ignore_enter*(a: var TGtkMenuShell, `ignore_enter`: guint) +proc submenu_placement*(a: var TGtkMenuShellClass): guint +proc set_submenu_placement*(a: var TGtkMenuShellClass, + `submenu_placement`: guint) +proc gtk_menu_shell_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_menu_shell_get_type".} +proc gtk_menu_shell_append*(menu_shell: PGtkMenuShell, child: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_menu_shell_append".} +proc gtk_menu_shell_prepend*(menu_shell: PGtkMenuShell, child: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_menu_shell_prepend".} +proc gtk_menu_shell_insert*(menu_shell: PGtkMenuShell, child: PGtkWidget, + position: gint){.cdecl, dynlib: gtklib, + importc: "gtk_menu_shell_insert".} +proc gtk_menu_shell_deactivate*(menu_shell: PGtkMenuShell){.cdecl, + dynlib: gtklib, importc: "gtk_menu_shell_deactivate".} +proc gtk_menu_shell_select_item*(menu_shell: PGtkMenuShell, + menu_item: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_menu_shell_select_item".} +proc gtk_menu_shell_deselect*(menu_shell: PGtkMenuShell){.cdecl, dynlib: gtklib, + importc: "gtk_menu_shell_deselect".} +proc gtk_menu_shell_activate_item*(menu_shell: PGtkMenuShell, + menu_item: PGtkWidget, + force_deactivate: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_menu_shell_activate_item".} +proc gtk_menu_shell_select_first*(menu_shell: PGtkMenuShell){.cdecl, + dynlib: gtklib, importc: "_gtk_menu_shell_select_first".} +proc gtk_menu_shell_activate*(menu_shell: PGtkMenuShell){.cdecl, + dynlib: gtklib, importc: "_gtk_menu_shell_activate".} +const + bm_TGtkMenu_needs_destruction_ref_count* = 0x00000001 + bp_TGtkMenu_needs_destruction_ref_count* = 0 + bm_TGtkMenu_torn_off* = 0x00000002 + bp_TGtkMenu_torn_off* = 1 + bm_TGtkMenu_tearoff_active* = 0x00000004 + bp_TGtkMenu_tearoff_active* = 2 + bm_TGtkMenu_scroll_fast* = 0x00000008 + bp_TGtkMenu_scroll_fast* = 3 + bm_TGtkMenu_upper_arrow_visible* = 0x00000010 + bp_TGtkMenu_upper_arrow_visible* = 4 + bm_TGtkMenu_lower_arrow_visible* = 0x00000020 + bp_TGtkMenu_lower_arrow_visible* = 5 + bm_TGtkMenu_upper_arrow_prelight* = 0x00000040 + bp_TGtkMenu_upper_arrow_prelight* = 6 + bm_TGtkMenu_lower_arrow_prelight* = 0x00000080 + bp_TGtkMenu_lower_arrow_prelight* = 7 + +proc GTK_TYPE_MENU*(): GType +proc GTK_MENU*(obj: pointer): PGtkMenu +proc GTK_MENU_CLASS*(klass: pointer): PGtkMenuClass +proc GTK_IS_MENU*(obj: pointer): bool +proc GTK_IS_MENU_CLASS*(klass: pointer): bool +proc GTK_MENU_GET_CLASS*(obj: pointer): PGtkMenuClass +proc needs_destruction_ref_count*(a: var TGtkMenu): guint +proc set_needs_destruction_ref_count*(a: var TGtkMenu, + `needs_destruction_ref_count`: guint) +proc torn_off*(a: var TGtkMenu): guint +proc set_torn_off*(a: var TGtkMenu, `torn_off`: guint) +proc tearoff_active*(a: var TGtkMenu): guint +proc set_tearoff_active*(a: var TGtkMenu, `tearoff_active`: guint) +proc scroll_fast*(a: var TGtkMenu): guint +proc set_scroll_fast*(a: var TGtkMenu, `scroll_fast`: guint) +proc upper_arrow_visible*(a: var TGtkMenu): guint +proc set_upper_arrow_visible*(a: var TGtkMenu, `upper_arrow_visible`: guint) +proc lower_arrow_visible*(a: var TGtkMenu): guint +proc set_lower_arrow_visible*(a: var TGtkMenu, `lower_arrow_visible`: guint) +proc upper_arrow_prelight*(a: var TGtkMenu): guint +proc set_upper_arrow_prelight*(a: var TGtkMenu, `upper_arrow_prelight`: guint) +proc lower_arrow_prelight*(a: var TGtkMenu): guint +proc set_lower_arrow_prelight*(a: var TGtkMenu, `lower_arrow_prelight`: guint) +proc gtk_menu_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_menu_get_type".} +proc gtk_menu_new*(): PGtkWidget{.cdecl, dynlib: gtklib, importc: "gtk_menu_new".} +proc gtk_menu_popup*(menu: PGtkMenu, parent_menu_shell: PGtkWidget, + parent_menu_item: PGtkWidget, func_: TGtkMenuPositionFunc, + data: gpointer, button: guint, activate_time: guint32){. + cdecl, dynlib: gtklib, importc: "gtk_menu_popup".} +proc gtk_menu_reposition*(menu: PGtkMenu){.cdecl, dynlib: gtklib, + importc: "gtk_menu_reposition".} +proc gtk_menu_popdown*(menu: PGtkMenu){.cdecl, dynlib: gtklib, + importc: "gtk_menu_popdown".} +proc gtk_menu_get_active*(menu: PGtkMenu): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_menu_get_active".} +proc gtk_menu_set_active*(menu: PGtkMenu, index: guint){.cdecl, dynlib: gtklib, + importc: "gtk_menu_set_active".} +proc gtk_menu_set_accel_group*(menu: PGtkMenu, accel_group: PGtkAccelGroup){. + cdecl, dynlib: gtklib, importc: "gtk_menu_set_accel_group".} +proc gtk_menu_get_accel_group*(menu: PGtkMenu): PGtkAccelGroup{.cdecl, + dynlib: gtklib, importc: "gtk_menu_get_accel_group".} +proc gtk_menu_set_accel_path*(menu: PGtkMenu, accel_path: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_menu_set_accel_path".} +proc gtk_menu_attach_to_widget*(menu: PGtkMenu, attach_widget: PGtkWidget, + detacher: TGtkMenuDetachFunc){.cdecl, + dynlib: gtklib, importc: "gtk_menu_attach_to_widget".} +proc gtk_menu_detach*(menu: PGtkMenu){.cdecl, dynlib: gtklib, + importc: "gtk_menu_detach".} +proc gtk_menu_get_attach_widget*(menu: PGtkMenu): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_menu_get_attach_widget".} +proc gtk_menu_set_tearoff_state*(menu: PGtkMenu, torn_off: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_menu_set_tearoff_state".} +proc gtk_menu_get_tearoff_state*(menu: PGtkMenu): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_menu_get_tearoff_state".} +proc gtk_menu_set_title*(menu: PGtkMenu, title: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_menu_set_title".} +proc gtk_menu_get_title*(menu: PGtkMenu): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_menu_get_title".} +proc gtk_menu_reorder_child*(menu: PGtkMenu, child: PGtkWidget, position: gint){. + cdecl, dynlib: gtklib, importc: "gtk_menu_reorder_child".} +proc gtk_menu_set_screen*(menu: PGtkMenu, screen: PGdkScreen){.cdecl, + dynlib: gtklib, importc: "gtk_menu_set_screen".} +const + bm_TGtkEntry_editable* = 0x00000001 + bp_TGtkEntry_editable* = 0 + bm_TGtkEntry_visible* = 0x00000002 + bp_TGtkEntry_visible* = 1 + bm_TGtkEntry_overwrite_mode* = 0x00000004 + bp_TGtkEntry_overwrite_mode* = 2 + bm_TGtkEntry_in_drag* = 0x00000008 + bp_TGtkEntry_in_drag* = 3 + bm_TGtkEntry_cache_includes_preedit* = 0x00000001 + bp_TGtkEntry_cache_includes_preedit* = 0 + bm_TGtkEntry_need_im_reset* = 0x00000002 + bp_TGtkEntry_need_im_reset* = 1 + bm_TGtkEntry_has_frame* = 0x00000004 + bp_TGtkEntry_has_frame* = 2 + bm_TGtkEntry_activates_default* = 0x00000008 + bp_TGtkEntry_activates_default* = 3 + bm_TGtkEntry_cursor_visible* = 0x00000010 + bp_TGtkEntry_cursor_visible* = 4 + bm_TGtkEntry_in_click* = 0x00000020 + bp_TGtkEntry_in_click* = 5 + bm_TGtkEntry_is_cell_renderer* = 0x00000040 + bp_TGtkEntry_is_cell_renderer* = 6 + bm_TGtkEntry_editing_canceled* = 0x00000080 + bp_TGtkEntry_editing_canceled* = 7 + bm_TGtkEntry_mouse_cursor_obscured* = 0x00000100 + bp_TGtkEntry_mouse_cursor_obscured* = 8 + +proc GTK_TYPE_ENTRY*(): GType +proc GTK_ENTRY*(obj: pointer): PGtkEntry +proc GTK_ENTRY_CLASS*(klass: pointer): PGtkEntryClass +proc GTK_IS_ENTRY*(obj: pointer): bool +proc GTK_IS_ENTRY_CLASS*(klass: pointer): bool +proc GTK_ENTRY_GET_CLASS*(obj: pointer): PGtkEntryClass +proc editable*(a: var TGtkEntry): guint +proc set_editable*(a: var TGtkEntry, `editable`: guint) +proc visible*(a: var TGtkEntry): guint +proc set_visible*(a: var TGtkEntry, `visible`: guint) +proc overwrite_mode*(a: var TGtkEntry): guint +proc set_overwrite_mode*(a: var TGtkEntry, `overwrite_mode`: guint) +proc in_drag*(a: var TGtkEntry): guint +proc set_in_drag*(a: var TGtkEntry, `in_drag`: guint) +proc cache_includes_preedit*(a: var TGtkEntry): guint +proc set_cache_includes_preedit*(a: var TGtkEntry, + `cache_includes_preedit`: guint) +proc need_im_reset*(a: var TGtkEntry): guint +proc set_need_im_reset*(a: var TGtkEntry, `need_im_reset`: guint) +proc has_frame*(a: var TGtkEntry): guint +proc set_has_frame*(a: var TGtkEntry, `has_frame`: guint) +proc activates_default*(a: var TGtkEntry): guint +proc set_activates_default*(a: var TGtkEntry, `activates_default`: guint) +proc cursor_visible*(a: var TGtkEntry): guint +proc set_cursor_visible*(a: var TGtkEntry, `cursor_visible`: guint) +proc in_click*(a: var TGtkEntry): guint +proc set_in_click*(a: var TGtkEntry, `in_click`: guint) +proc is_cell_renderer*(a: var TGtkEntry): guint +proc set_is_cell_renderer*(a: var TGtkEntry, `is_cell_renderer`: guint) +proc editing_canceled*(a: var TGtkEntry): guint +proc set_editing_canceled*(a: var TGtkEntry, `editing_canceled`: guint) +proc mouse_cursor_obscured*(a: var TGtkEntry): guint +proc set_mouse_cursor_obscured*(a: var TGtkEntry, `mouse_cursor_obscured`: guint) +proc gtk_entry_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_entry_get_type".} +proc gtk_entry_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_entry_new".} +proc gtk_entry_set_visibility*(entry: PGtkEntry, visible: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_entry_set_visibility".} +proc gtk_entry_get_visibility*(entry: PGtkEntry): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_entry_get_visibility".} +proc gtk_entry_set_invisible_char*(entry: PGtkEntry, ch: gunichar){.cdecl, + dynlib: gtklib, importc: "gtk_entry_set_invisible_char".} +proc gtk_entry_get_invisible_char*(entry: PGtkEntry): gunichar{.cdecl, + dynlib: gtklib, importc: "gtk_entry_get_invisible_char".} +proc gtk_entry_set_has_frame*(entry: PGtkEntry, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_entry_set_has_frame".} +proc gtk_entry_get_has_frame*(entry: PGtkEntry): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_entry_get_has_frame".} +proc gtk_entry_set_max_length*(entry: PGtkEntry, max: gint){.cdecl, + dynlib: gtklib, importc: "gtk_entry_set_max_length".} +proc gtk_entry_get_max_length*(entry: PGtkEntry): gint{.cdecl, dynlib: gtklib, + importc: "gtk_entry_get_max_length".} +proc gtk_entry_set_activates_default*(entry: PGtkEntry, setting: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_entry_set_activates_default".} +proc gtk_entry_get_activates_default*(entry: PGtkEntry): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_entry_get_activates_default".} +proc gtk_entry_set_width_chars*(entry: PGtkEntry, n_chars: gint){.cdecl, + dynlib: gtklib, importc: "gtk_entry_set_width_chars".} +proc gtk_entry_get_width_chars*(entry: PGtkEntry): gint{.cdecl, dynlib: gtklib, + importc: "gtk_entry_get_width_chars".} +proc gtk_entry_set_text*(entry: PGtkEntry, text: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_entry_set_text".} +proc gtk_entry_get_text*(entry: PGtkEntry): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_entry_get_text".} +proc gtk_entry_get_layout*(entry: PGtkEntry): PPangoLayout{.cdecl, + dynlib: gtklib, importc: "gtk_entry_get_layout".} +proc gtk_entry_get_layout_offsets*(entry: PGtkEntry, x: Pgint, y: Pgint){.cdecl, + dynlib: gtklib, importc: "gtk_entry_get_layout_offsets".} +const + 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* = GTK_ANCHOR_NORTH + GTK_ANCHOR_NW* = GTK_ANCHOR_NORTH_WEST + GTK_ANCHOR_NE* = GTK_ANCHOR_NORTH_EAST + GTK_ANCHOR_S* = GTK_ANCHOR_SOUTH + GTK_ANCHOR_SW* = GTK_ANCHOR_SOUTH_WEST + GTK_ANCHOR_SE* = GTK_ANCHOR_SOUTH_EAST + GTK_ANCHOR_W* = GTK_ANCHOR_WEST + GTK_ANCHOR_E* = GTK_ANCHOR_EAST + GTK_ARROW_UP* = 0 + GTK_ARROW_DOWN* = 1 + GTK_ARROW_LEFT* = 2 + GTK_ARROW_RIGHT* = 3 + GTK_EXPAND* = 1 shl 0 + GTK_SHRINK* = 1 shl 1 + GTK_FILL* = 1 shl 2 + GTK_BUTTONBOX_DEFAULT_STYLE* = 0 + GTK_BUTTONBOX_SPREAD* = 1 + GTK_BUTTONBOX_EDGE* = 2 + GTK_BUTTONBOX_START* = 3 + GTK_BUTTONBOX_END* = 4 + GTK_CURVE_TYPE_LINEAR* = 0 + GTK_CURVE_TYPE_SPLINE* = 1 + GTK_CURVE_TYPE_FREE* = 2 + 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 + 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 + GTK_EXPANDER_COLLAPSED* = 0 + GTK_EXPANDER_SEMI_COLLAPSED* = 1 + GTK_EXPANDER_SEMI_EXPANDED* = 2 + GTK_EXPANDER_EXPANDED* = 3 + 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 + GTK_TEXT_DIR_NONE* = 0 + GTK_TEXT_DIR_LTR* = 1 + GTK_TEXT_DIR_RTL* = 2 + GTK_JUSTIFY_LEFT* = 0 + GTK_JUSTIFY_RIGHT* = 1 + GTK_JUSTIFY_CENTER* = 2 + GTK_JUSTIFY_FILL* = 3 + GTK_MENU_DIR_PARENT* = 0 + GTK_MENU_DIR_CHILD* = 1 + GTK_MENU_DIR_NEXT* = 2 + GTK_MENU_DIR_PREV* = 3 + GTK_PIXELS* = 0 + GTK_INCHES* = 1 + GTK_CENTIMETERS* = 2 + 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_ORIENTATION_HORIZONTAL* = 0 + GTK_ORIENTATION_VERTICAL* = 1 + GTK_CORNER_TOP_LEFT* = 0 + GTK_CORNER_BOTTOM_LEFT* = 1 + GTK_CORNER_TOP_RIGHT* = 2 + GTK_CORNER_BOTTOM_RIGHT* = 3 + GTK_PACK_START* = 0 + GTK_PACK_END* = 1 + 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 + GTK_PATH_WIDGET* = 0 + GTK_PATH_WIDGET_CLASS* = 1 + GTK_PATH_CLASS* = 2 + GTK_POLICY_ALWAYS* = 0 + GTK_POLICY_AUTOMATIC* = 1 + GTK_POLICY_NEVER* = 2 + GTK_POS_LEFT* = 0 + GTK_POS_RIGHT* = 1 + GTK_POS_TOP* = 2 + GTK_POS_BOTTOM* = 3 + GTK_PREVIEW_COLOR* = 0 + GTK_PREVIEW_GRAYSCALE* = 1 + GTK_RELIEF_NORMAL* = 0 + GTK_RELIEF_HALF* = 1 + GTK_RELIEF_NONE* = 2 + GTK_RESIZE_PARENT* = 0 + GTK_RESIZE_QUEUE* = 1 + GTK_RESIZE_IMMEDIATE* = 2 + 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 + GTK_SELECTION_NONE* = 0 + GTK_SELECTION_SINGLE* = 1 + GTK_SELECTION_BROWSE* = 2 + GTK_SELECTION_MULTIPLE* = 3 + GTK_SELECTION_EXTENDED* = GTK_SELECTION_MULTIPLE + GTK_SHADOW_NONE* = 0 + GTK_SHADOW_IN* = 1 + GTK_SHADOW_OUT* = 2 + GTK_SHADOW_ETCHED_IN* = 3 + GTK_SHADOW_ETCHED_OUT* = 4 + GTK_STATE_NORMAL* = 0 + GTK_STATE_ACTIVE* = 1 + GTK_STATE_PRELIGHT* = 2 + GTK_STATE_SELECTED* = 3 + GTK_STATE_INSENSITIVE* = 4 + GTK_DIRECTION_LEFT* = 0 + GTK_DIRECTION_RIGHT* = 1 + GTK_TOP_BOTTOM* = 0 + GTK_LEFT_RIGHT* = 1 + GTK_TOOLBAR_ICONS* = 0 + GTK_TOOLBAR_TEXT* = 1 + GTK_TOOLBAR_BOTH* = 2 + GTK_TOOLBAR_BOTH_HORIZ* = 3 + GTK_UPDATE_CONTINUOUS* = 0 + GTK_UPDATE_DISCONTINUOUS* = 1 + GTK_UPDATE_DELAYED* = 2 + GTK_VISIBILITY_NONE* = 0 + GTK_VISIBILITY_PARTIAL* = 1 + GTK_VISIBILITY_FULL* = 2 + 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 + GTK_WINDOW_TOPLEVEL* = 0 + GTK_WINDOW_POPUP* = 1 + GTK_WRAP_NONE* = 0 + GTK_WRAP_CHAR* = 1 + GTK_WRAP_WORD* = 2 + GTK_SORT_ASCENDING* = 0 + GTK_SORT_DESCENDING* = 1 + +proc GTK_TYPE_EVENT_BOX*(): GType +proc GTK_EVENT_BOX*(obj: pointer): PGtkEventBox +proc GTK_EVENT_BOX_CLASS*(klass: pointer): PGtkEventBoxClass +proc GTK_IS_EVENT_BOX*(obj: pointer): bool +proc GTK_IS_EVENT_BOX_CLASS*(klass: pointer): bool +proc GTK_EVENT_BOX_GET_CLASS*(obj: pointer): PGtkEventBoxClass +proc gtk_event_box_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_event_box_get_type".} +proc gtk_event_box_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_event_box_new".} +const + FNM_PATHNAME* = 1 shl 0 + FNM_NOESCAPE* = 1 shl 1 + FNM_PERIOD* = 1 shl 2 + +const + FNM_FILE_NAME* = FNM_PATHNAME + FNM_LEADING_DIR* = 1 shl 3 + FNM_CASEFOLD* = 1 shl 4 + +const + FNM_NOMATCH* = 1 + +proc fnmatch*(`pattern`: char, `string`: char, `flags`: gint): gint{.cdecl, + dynlib: gtklib, importc: "fnmatch".} +proc GTK_TYPE_FILE_SELECTION*(): GType +proc GTK_FILE_SELECTION*(obj: pointer): PGtkFileSelection +proc GTK_FILE_SELECTION_CLASS*(klass: pointer): PGtkFileSelectionClass +proc GTK_IS_FILE_SELECTION*(obj: pointer): bool +proc GTK_IS_FILE_SELECTION_CLASS*(klass: pointer): bool +proc GTK_FILE_SELECTION_GET_CLASS*(obj: pointer): PGtkFileSelectionClass +proc gtk_file_selection_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_file_selection_get_type".} +proc gtk_file_selection_new*(title: cstring): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_file_selection_new".} +proc gtk_file_selection_set_filename*(filesel: PGtkFileSelection, + filename: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_file_selection_set_filename".} +proc gtk_file_selection_get_filename*(filesel: PGtkFileSelection): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_file_selection_get_filename".} +proc gtk_file_selection_complete*(filesel: PGtkFileSelection, pattern: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_file_selection_complete".} +proc gtk_file_selection_show_fileop_buttons*(filesel: PGtkFileSelection){.cdecl, + dynlib: gtklib, importc: "gtk_file_selection_show_fileop_buttons".} +proc gtk_file_selection_hide_fileop_buttons*(filesel: PGtkFileSelection){.cdecl, + dynlib: gtklib, importc: "gtk_file_selection_hide_fileop_buttons".} +proc gtk_file_selection_get_selections*(filesel: PGtkFileSelection): PPgchar{. + cdecl, dynlib: gtklib, importc: "gtk_file_selection_get_selections".} +proc gtk_file_selection_set_select_multiple*(filesel: PGtkFileSelection, + select_multiple: gboolean){.cdecl, dynlib: gtklib, importc: "gtk_file_selection_set_select_multiple".} +proc gtk_file_selection_get_select_multiple*(filesel: PGtkFileSelection): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_selection_get_select_multiple".} +proc GTK_TYPE_FIXED*(): GType +proc GTK_FIXED*(obj: pointer): PGtkFixed +proc GTK_FIXED_CLASS*(klass: pointer): PGtkFixedClass +proc GTK_IS_FIXED*(obj: pointer): bool +proc GTK_IS_FIXED_CLASS*(klass: pointer): bool +proc GTK_FIXED_GET_CLASS*(obj: pointer): PGtkFixedClass +proc gtk_fixed_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_fixed_get_type".} +proc gtk_fixed_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_fixed_new".} +proc gtk_fixed_put*(fixed: PGtkFixed, widget: PGtkWidget, x: gint, y: gint){. + cdecl, dynlib: gtklib, importc: "gtk_fixed_put".} +proc gtk_fixed_move*(fixed: PGtkFixed, widget: PGtkWidget, x: gint, y: gint){. + cdecl, dynlib: gtklib, importc: "gtk_fixed_move".} +proc gtk_fixed_set_has_window*(fixed: PGtkFixed, has_window: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_fixed_set_has_window".} +proc gtk_fixed_get_has_window*(fixed: PGtkFixed): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_fixed_get_has_window".} +proc GTK_TYPE_FONT_SELECTION*(): GType +proc GTK_FONT_SELECTION*(obj: pointer): PGtkFontSelection +proc GTK_FONT_SELECTION_CLASS*(klass: pointer): PGtkFontSelectionClass +proc GTK_IS_FONT_SELECTION*(obj: pointer): bool +proc GTK_IS_FONT_SELECTION_CLASS*(klass: pointer): bool +proc GTK_FONT_SELECTION_GET_CLASS*(obj: pointer): PGtkFontSelectionClass +proc GTK_TYPE_FONT_SELECTION_DIALOG*(): GType +proc GTK_FONT_SELECTION_DIALOG*(obj: pointer): PGtkFontSelectionDialog +proc GTK_FONT_SELECTION_DIALOG_CLASS*(klass: pointer): PGtkFontSelectionDialogClass +proc GTK_IS_FONT_SELECTION_DIALOG*(obj: pointer): bool +proc GTK_IS_FONT_SELECTION_DIALOG_CLASS*(klass: pointer): bool +proc GTK_FONT_SELECTION_DIALOG_GET_CLASS*(obj: pointer): PGtkFontSelectionDialogClass +proc gtk_font_selection_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_font_selection_get_type".} +proc gtk_font_selection_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_font_selection_new".} +proc gtk_font_selection_get_font_name*(fontsel: PGtkFontSelection): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_font_selection_get_font_name".} +proc gtk_font_selection_set_font_name*(fontsel: PGtkFontSelection, + fontname: cstring): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_font_selection_set_font_name".} +proc gtk_font_selection_get_preview_text*(fontsel: PGtkFontSelection): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_font_selection_get_preview_text".} +proc gtk_font_selection_set_preview_text*(fontsel: PGtkFontSelection, + text: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_font_selection_set_preview_text".} +proc gtk_font_selection_dialog_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_font_selection_dialog_get_type".} +proc gtk_font_selection_dialog_new*(title: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_font_selection_dialog_new".} +proc gtk_font_selection_dialog_get_font_name*(fsd: PGtkFontSelectionDialog): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_font_selection_dialog_get_font_name".} +proc gtk_font_selection_dialog_set_font_name*(fsd: PGtkFontSelectionDialog, + fontname: cstring): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_font_selection_dialog_set_font_name".} +proc gtk_font_selection_dialog_get_preview_text*(fsd: PGtkFontSelectionDialog): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_font_selection_dialog_get_preview_text".} +proc gtk_font_selection_dialog_set_preview_text*(fsd: PGtkFontSelectionDialog, + text: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_font_selection_dialog_set_preview_text".} +proc GTK_TYPE_GAMMA_CURVE*(): GType +proc GTK_GAMMA_CURVE*(obj: pointer): PGtkGammaCurve +proc GTK_GAMMA_CURVE_CLASS*(klass: pointer): PGtkGammaCurveClass +proc GTK_IS_GAMMA_CURVE*(obj: pointer): bool +proc GTK_IS_GAMMA_CURVE_CLASS*(klass: pointer): bool +proc GTK_GAMMA_CURVE_GET_CLASS*(obj: pointer): PGtkGammaCurveClass +proc gtk_gamma_curve_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_gamma_curve_get_type".} +proc gtk_gamma_curve_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_gamma_curve_new".} +proc gtk_gc_get*(depth: gint, colormap: PGdkColormap, values: PGdkGCValues, + values_mask: TGdkGCValuesMask): PGdkGC{.cdecl, dynlib: gtklib, + importc: "gtk_gc_get".} +proc gtk_gc_release*(gc: PGdkGC){.cdecl, dynlib: gtklib, + importc: "gtk_gc_release".} +const + bm_TGtkHandleBox_handle_position* = 0x00000003 + bp_TGtkHandleBox_handle_position* = 0 + bm_TGtkHandleBox_float_window_mapped* = 0x00000004 + bp_TGtkHandleBox_float_window_mapped* = 2 + bm_TGtkHandleBox_child_detached* = 0x00000008 + bp_TGtkHandleBox_child_detached* = 3 + bm_TGtkHandleBox_in_drag* = 0x00000010 + bp_TGtkHandleBox_in_drag* = 4 + bm_TGtkHandleBox_shrink_on_detach* = 0x00000020 + bp_TGtkHandleBox_shrink_on_detach* = 5 + bm_TGtkHandleBox_snap_edge* = 0x000001C0 + bp_TGtkHandleBox_snap_edge* = 6 + +proc GTK_TYPE_HANDLE_BOX*(): GType +proc GTK_HANDLE_BOX*(obj: pointer): PGtkHandleBox +proc GTK_HANDLE_BOX_CLASS*(klass: pointer): PGtkHandleBoxClass +proc GTK_IS_HANDLE_BOX*(obj: pointer): bool +proc GTK_IS_HANDLE_BOX_CLASS*(klass: pointer): bool +proc GTK_HANDLE_BOX_GET_CLASS*(obj: pointer): PGtkHandleBoxClass +proc handle_position*(a: var TGtkHandleBox): guint +proc set_handle_position*(a: var TGtkHandleBox, `handle_position`: guint) +proc float_window_mapped*(a: var TGtkHandleBox): guint +proc set_float_window_mapped*(a: var TGtkHandleBox, `float_window_mapped`: guint) +proc child_detached*(a: var TGtkHandleBox): guint +proc set_child_detached*(a: var TGtkHandleBox, `child_detached`: guint) +proc in_drag*(a: var TGtkHandleBox): guint +proc set_in_drag*(a: var TGtkHandleBox, `in_drag`: guint) +proc shrink_on_detach*(a: var TGtkHandleBox): guint +proc set_shrink_on_detach*(a: var TGtkHandleBox, `shrink_on_detach`: guint) +proc snap_edge*(a: var TGtkHandleBox): gint +proc set_snap_edge*(a: var TGtkHandleBox, `snap_edge`: gint) +proc gtk_handle_box_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_handle_box_get_type".} +proc gtk_handle_box_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_handle_box_new".} +proc gtk_handle_box_set_shadow_type*(handle_box: PGtkHandleBox, + thetype: TGtkShadowType){.cdecl, + dynlib: gtklib, importc: "gtk_handle_box_set_shadow_type".} +proc gtk_handle_box_get_shadow_type*(handle_box: PGtkHandleBox): TGtkShadowType{. + cdecl, dynlib: gtklib, importc: "gtk_handle_box_get_shadow_type".} +proc gtk_handle_box_set_handle_position*(handle_box: PGtkHandleBox, + position: TGtkPositionType){.cdecl, dynlib: gtklib, + importc: "gtk_handle_box_set_handle_position".} +proc gtk_handle_box_get_handle_position*(handle_box: PGtkHandleBox): TGtkPositionType{. + cdecl, dynlib: gtklib, importc: "gtk_handle_box_get_handle_position".} +proc gtk_handle_box_set_snap_edge*(handle_box: PGtkHandleBox, + edge: TGtkPositionType){.cdecl, + dynlib: gtklib, importc: "gtk_handle_box_set_snap_edge".} +proc gtk_handle_box_get_snap_edge*(handle_box: PGtkHandleBox): TGtkPositionType{. + cdecl, dynlib: gtklib, importc: "gtk_handle_box_get_snap_edge".} +const + bm_TGtkPaned_position_set* = 0x00000001 + bp_TGtkPaned_position_set* = 0 + bm_TGtkPaned_in_drag* = 0x00000002 + bp_TGtkPaned_in_drag* = 1 + bm_TGtkPaned_child1_shrink* = 0x00000004 + bp_TGtkPaned_child1_shrink* = 2 + bm_TGtkPaned_child1_resize* = 0x00000008 + bp_TGtkPaned_child1_resize* = 3 + bm_TGtkPaned_child2_shrink* = 0x00000010 + bp_TGtkPaned_child2_shrink* = 4 + bm_TGtkPaned_child2_resize* = 0x00000020 + bp_TGtkPaned_child2_resize* = 5 + bm_TGtkPaned_orientation* = 0x00000040 + bp_TGtkPaned_orientation* = 6 + bm_TGtkPaned_in_recursion* = 0x00000080 + bp_TGtkPaned_in_recursion* = 7 + bm_TGtkPaned_handle_prelit* = 0x00000100 + bp_TGtkPaned_handle_prelit* = 8 + +proc GTK_TYPE_PANED*(): GType +proc GTK_PANED*(obj: pointer): PGtkPaned +proc GTK_PANED_CLASS*(klass: pointer): PGtkPanedClass +proc GTK_IS_PANED*(obj: pointer): bool +proc GTK_IS_PANED_CLASS*(klass: pointer): bool +proc GTK_PANED_GET_CLASS*(obj: pointer): PGtkPanedClass +proc position_set*(a: var TGtkPaned): guint +proc set_position_set*(a: var TGtkPaned, `position_set`: guint) +proc in_drag*(a: var TGtkPaned): guint +proc set_in_drag*(a: var TGtkPaned, `in_drag`: guint) +proc child1_shrink*(a: var TGtkPaned): guint +proc set_child1_shrink*(a: var TGtkPaned, `child1_shrink`: guint) +proc child1_resize*(a: var TGtkPaned): guint +proc set_child1_resize*(a: var TGtkPaned, `child1_resize`: guint) +proc child2_shrink*(a: var TGtkPaned): guint +proc set_child2_shrink*(a: var TGtkPaned, `child2_shrink`: guint) +proc child2_resize*(a: var TGtkPaned): guint +proc set_child2_resize*(a: var TGtkPaned, `child2_resize`: guint) +proc orientation*(a: var TGtkPaned): guint +proc set_orientation*(a: var TGtkPaned, `orientation`: guint) +proc in_recursion*(a: var TGtkPaned): guint +proc set_in_recursion*(a: var TGtkPaned, `in_recursion`: guint) +proc handle_prelit*(a: var TGtkPaned): guint +proc set_handle_prelit*(a: var TGtkPaned, `handle_prelit`: guint) +proc gtk_paned_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_paned_get_type".} +proc gtk_paned_add1*(paned: PGtkPaned, child: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_paned_add1".} +proc gtk_paned_add2*(paned: PGtkPaned, child: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_paned_add2".} +proc gtk_paned_pack1*(paned: PGtkPaned, child: PGtkWidget, resize: gboolean, + shrink: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_paned_pack1".} +proc gtk_paned_pack2*(paned: PGtkPaned, child: PGtkWidget, resize: gboolean, + shrink: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_paned_pack2".} +proc gtk_paned_get_position*(paned: PGtkPaned): gint{.cdecl, dynlib: gtklib, + importc: "gtk_paned_get_position".} +proc gtk_paned_set_position*(paned: PGtkPaned, position: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paned_set_position".} +proc gtk_paned_compute_position*(paned: PGtkPaned, allocation: gint, + child1_req: gint, child2_req: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paned_compute_position".} +proc GTK_TYPE_HBUTTON_BOX*(): GType +proc GTK_HBUTTON_BOX*(obj: pointer): PGtkHButtonBox +proc GTK_HBUTTON_BOX_CLASS*(klass: pointer): PGtkHButtonBoxClass +proc GTK_IS_HBUTTON_BOX*(obj: pointer): bool +proc GTK_IS_HBUTTON_BOX_CLASS*(klass: pointer): bool +proc GTK_HBUTTON_BOX_GET_CLASS*(obj: pointer): PGtkHButtonBoxClass +proc gtk_hbutton_box_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hbutton_box_get_type".} +proc gtk_hbutton_box_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_hbutton_box_new".} +proc GTK_TYPE_HPANED*(): GType +proc GTK_HPANED*(obj: pointer): PGtkHPaned +proc GTK_HPANED_CLASS*(klass: pointer): PGtkHPanedClass +proc GTK_IS_HPANED*(obj: pointer): bool +proc GTK_IS_HPANED_CLASS*(klass: pointer): bool +proc GTK_HPANED_GET_CLASS*(obj: pointer): PGtkHPanedClass +proc gtk_hpaned_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hpaned_get_type".} +proc gtk_hpaned_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_hpaned_new".} +proc GTK_TYPE_RULER*(): GType +proc GTK_RULER*(obj: pointer): PGtkRuler +proc GTK_RULER_CLASS*(klass: pointer): PGtkRulerClass +proc GTK_IS_RULER*(obj: pointer): bool +proc GTK_IS_RULER_CLASS*(klass: pointer): bool +proc GTK_RULER_GET_CLASS*(obj: pointer): PGtkRulerClass +proc gtk_ruler_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_ruler_get_type".} +proc gtk_ruler_set_metric*(ruler: PGtkRuler, metric: TGtkMetricType){.cdecl, + dynlib: gtklib, importc: "gtk_ruler_set_metric".} +proc gtk_ruler_set_range*(ruler: PGtkRuler, lower: gdouble, upper: gdouble, + position: gdouble, max_size: gdouble){.cdecl, + dynlib: gtklib, importc: "gtk_ruler_set_range".} +proc gtk_ruler_draw_ticks*(ruler: PGtkRuler){.cdecl, dynlib: gtklib, + importc: "gtk_ruler_draw_ticks".} +proc gtk_ruler_draw_pos*(ruler: PGtkRuler){.cdecl, dynlib: gtklib, + importc: "gtk_ruler_draw_pos".} +proc gtk_ruler_get_metric*(ruler: PGtkRuler): TGtkMetricType{.cdecl, + dynlib: gtklib, importc: "gtk_ruler_get_metric".} +proc gtk_ruler_get_range*(ruler: PGtkRuler, lower: Pgdouble, upper: Pgdouble, + position: Pgdouble, max_size: Pgdouble){.cdecl, + dynlib: gtklib, importc: "gtk_ruler_get_range".} +proc GTK_TYPE_HRULER*(): GType +proc GTK_HRULER*(obj: pointer): PGtkHRuler +proc GTK_HRULER_CLASS*(klass: pointer): PGtkHRulerClass +proc GTK_IS_HRULER*(obj: pointer): bool +proc GTK_IS_HRULER_CLASS*(klass: pointer): bool +proc GTK_HRULER_GET_CLASS*(obj: pointer): PGtkHRulerClass +proc gtk_hruler_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hruler_get_type".} +proc gtk_hruler_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_hruler_new".} +proc GTK_TYPE_SETTINGS*(): GType +proc GTK_SETTINGS*(obj: pointer): PGtkSettings +proc GTK_SETTINGS_CLASS*(klass: pointer): PGtkSettingsClass +proc GTK_IS_SETTINGS*(obj: pointer): bool +proc GTK_IS_SETTINGS_CLASS*(klass: pointer): bool +proc GTK_SETTINGS_GET_CLASS*(obj: pointer): PGtkSettingsClass +proc gtk_settings_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_settings_get_type".} +proc gtk_settings_get_for_screen*(screen: PGdkScreen): PGtkSettings{.cdecl, + dynlib: gtklib, importc: "gtk_settings_get_for_screen".} +proc gtk_settings_install_property*(pspec: PGParamSpec){.cdecl, dynlib: gtklib, + importc: "gtk_settings_install_property".} +proc gtk_settings_install_property_parser*(pspec: PGParamSpec, + parser: TGtkRcPropertyParser){.cdecl, dynlib: gtklib, importc: "gtk_settings_install_property_parser".} +proc gtk_rc_property_parse_color*(pspec: PGParamSpec, gstring: PGString, + property_value: PGValue): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_rc_property_parse_color".} +proc gtk_rc_property_parse_enum*(pspec: PGParamSpec, gstring: PGString, + property_value: PGValue): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_rc_property_parse_enum".} +proc gtk_rc_property_parse_flags*(pspec: PGParamSpec, gstring: PGString, + property_value: PGValue): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_rc_property_parse_flags".} +proc gtk_rc_property_parse_requisition*(pspec: PGParamSpec, gstring: PGString, + property_value: PGValue): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_rc_property_parse_requisition".} +proc gtk_rc_property_parse_border*(pspec: PGParamSpec, gstring: PGString, + property_value: PGValue): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_rc_property_parse_border".} +proc gtk_settings_set_property_value*(settings: PGtkSettings, name: cstring, + svalue: PGtkSettingsValue){.cdecl, + dynlib: gtklib, importc: "gtk_settings_set_property_value".} +proc gtk_settings_set_string_property*(settings: PGtkSettings, name: cstring, + v_string: cstring, origin: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_settings_set_string_property".} +proc gtk_settings_set_long_property*(settings: PGtkSettings, name: cstring, + v_long: glong, origin: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_settings_set_long_property".} +proc gtk_settings_set_double_property*(settings: PGtkSettings, name: cstring, + v_double: gdouble, origin: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_settings_set_double_property".} +proc gtk_settings_handle_event*(event: PGdkEventSetting){.cdecl, + dynlib: gtklib, importc: "_gtk_settings_handle_event".} +proc gtk_rc_property_parser_from_type*(thetype: GType): TGtkRcPropertyParser{. + cdecl, dynlib: gtklib, importc: "_gtk_rc_property_parser_from_type".} +proc gtk_settings_parse_convert*(parser: TGtkRcPropertyParser, + src_value: PGValue, pspec: PGParamSpec, + dest_value: PGValue): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_settings_parse_convert".} +const + GTK_RC_FG* = 1 shl 0 + GTK_RC_BG* = 1 shl 1 + GTK_RC_TEXT* = 1 shl 2 + GTK_RC_BASE* = 1 shl 3 + bm_TGtkRcStyle_engine_specified* = 0x00000001 + bp_TGtkRcStyle_engine_specified* = 0 + +proc GTK_TYPE_RC_STYLE*(): GType +proc GTK_RC_STYLE_get*(anObject: pointer): PGtkRcStyle +proc GTK_RC_STYLE_CLASS*(klass: pointer): PGtkRcStyleClass +proc GTK_IS_RC_STYLE*(anObject: pointer): bool +proc GTK_IS_RC_STYLE_CLASS*(klass: pointer): bool +proc GTK_RC_STYLE_GET_CLASS*(obj: pointer): PGtkRcStyleClass +proc engine_specified*(a: var TGtkRcStyle): guint +proc set_engine_specified*(a: var TGtkRcStyle, `engine_specified`: guint) +proc gtk_rc_init*(){.cdecl, dynlib: gtklib, importc: "_gtk_rc_init".} +proc gtk_rc_add_default_file*(filename: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_rc_add_default_file".} +proc gtk_rc_set_default_files*(filenames: PPgchar){.cdecl, dynlib: gtklib, + importc: "gtk_rc_set_default_files".} +proc gtk_rc_get_default_files*(): PPgchar{.cdecl, dynlib: gtklib, + importc: "gtk_rc_get_default_files".} +proc gtk_rc_get_style*(widget: PGtkWidget): PGtkStyle{.cdecl, dynlib: gtklib, + importc: "gtk_rc_get_style".} +proc gtk_rc_get_style_by_paths*(settings: PGtkSettings, widget_path: cstring, + class_path: cstring, thetype: GType): PGtkStyle{. + cdecl, dynlib: gtklib, importc: "gtk_rc_get_style_by_paths".} +proc gtk_rc_reparse_all_for_settings*(settings: PGtkSettings, + force_load: gboolean): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_rc_reparse_all_for_settings".} +proc gtk_rc_find_pixmap_in_path*(settings: PGtkSettings, scanner: PGScanner, + pixmap_file: cstring): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_rc_find_pixmap_in_path".} +proc gtk_rc_parse*(filename: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_rc_parse".} +proc gtk_rc_parse_string*(rc_string: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_rc_parse_string".} +proc gtk_rc_reparse_all*(): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_rc_reparse_all".} +proc gtk_rc_style_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_rc_style_get_type".} +proc gtk_rc_style_new*(): PGtkRcStyle{.cdecl, dynlib: gtklib, + importc: "gtk_rc_style_new".} +proc gtk_rc_style_copy*(orig: PGtkRcStyle): PGtkRcStyle{.cdecl, dynlib: gtklib, + importc: "gtk_rc_style_copy".} +proc gtk_rc_style_ref*(rc_style: PGtkRcStyle){.cdecl, dynlib: gtklib, + importc: "gtk_rc_style_ref".} +proc gtk_rc_style_unref*(rc_style: PGtkRcStyle){.cdecl, dynlib: gtklib, + importc: "gtk_rc_style_unref".} +proc gtk_rc_find_module_in_path*(module_file: cstring): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_rc_find_module_in_path".} +proc gtk_rc_get_theme_dir*(): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_rc_get_theme_dir".} +proc gtk_rc_get_module_dir*(): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_rc_get_module_dir".} +proc gtk_rc_get_im_module_path*(): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_rc_get_im_module_path".} +proc gtk_rc_get_im_module_file*(): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_rc_get_im_module_file".} +proc gtk_rc_scanner_new*(): PGScanner{.cdecl, dynlib: gtklib, + importc: "gtk_rc_scanner_new".} +proc gtk_rc_parse_color*(scanner: PGScanner, color: PGdkColor): guint{.cdecl, + dynlib: gtklib, importc: "gtk_rc_parse_color".} +proc gtk_rc_parse_state*(scanner: PGScanner, state: PGtkStateType): guint{. + cdecl, dynlib: gtklib, importc: "gtk_rc_parse_state".} +proc gtk_rc_parse_priority*(scanner: PGScanner, priority: PGtkPathPriorityType): guint{. + cdecl, dynlib: gtklib, importc: "gtk_rc_parse_priority".} +proc gtk_rc_style_lookup_rc_property*(rc_style: PGtkRcStyle, + type_name: TGQuark, + property_name: TGQuark): PGtkRcProperty{. + cdecl, dynlib: gtklib, importc: "_gtk_rc_style_lookup_rc_property".} +proc gtk_rc_context_get_default_font_name*(settings: PGtkSettings): cstring{. + cdecl, dynlib: gtklib, importc: "_gtk_rc_context_get_default_font_name".} +proc GTK_TYPE_STYLE*(): GType +proc GTK_STYLE*(anObject: pointer): PGtkStyle +proc GTK_STYLE_CLASS*(klass: pointer): PGtkStyleClass +proc GTK_IS_STYLE*(anObject: pointer): bool +proc GTK_IS_STYLE_CLASS*(klass: pointer): bool +proc GTK_STYLE_GET_CLASS*(obj: pointer): PGtkStyleClass +proc GTK_TYPE_BORDER*(): GType +proc GTK_STYLE_ATTACHED*(style: pointer): bool +proc gtk_style_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_style_get_type".} +proc gtk_style_new*(): PGtkStyle{.cdecl, dynlib: gtklib, + importc: "gtk_style_new".} +proc gtk_style_copy*(style: PGtkStyle): PGtkStyle{.cdecl, dynlib: gtklib, + importc: "gtk_style_copy".} +proc gtk_style_attach*(style: PGtkStyle, window: PGdkWindow): PGtkStyle{.cdecl, + dynlib: gtklib, importc: "gtk_style_attach".} +proc gtk_style_detach*(style: PGtkStyle){.cdecl, dynlib: gtklib, + importc: "gtk_style_detach".} +proc gtk_style_set_background*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType){.cdecl, + dynlib: gtklib, importc: "gtk_style_set_background".} +proc gtk_style_apply_default_background*(style: PGtkStyle, window: PGdkWindow, + set_bg: gboolean, state_type: TGtkStateType, area: PGdkRectangle, x: gint, + y: gint, width: gint, height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_style_apply_default_background".} +proc gtk_style_lookup_icon_set*(style: PGtkStyle, stock_id: cstring): PGtkIconSet{. + cdecl, dynlib: gtklib, importc: "gtk_style_lookup_icon_set".} +proc gtk_style_render_icon*(style: PGtkStyle, source: PGtkIconSource, + direction: TGtkTextDirection, state: TGtkStateType, + size: TGtkIconSize, widget: PGtkWidget, + detail: cstring): PGdkPixbuf{.cdecl, dynlib: gtklib, + importc: "gtk_style_render_icon".} +proc gtk_paint_hline*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x1: gint, x2: gint, + y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_paint_hline".} +proc gtk_paint_vline*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, y1: gint, y2: gint, + x: gint){.cdecl, dynlib: gtklib, + importc: "gtk_paint_vline".} +proc gtk_paint_shadow*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_shadow".} +proc gtk_paint_polygon*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + points: PGdkPoint, npoints: gint, fill: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_paint_polygon".} +proc gtk_paint_arrow*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + arrow_type: TGtkArrowType, fill: gboolean, x: gint, + y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_arrow".} +proc gtk_paint_diamond*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_diamond".} +proc gtk_paint_box*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_box".} +proc gtk_paint_flat_box*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, + detail: cstring, x: gint, y: gint, width: gint, + height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_paint_flat_box".} +proc gtk_paint_check*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_check".} +proc gtk_paint_option*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_option".} +proc gtk_paint_tab*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_paint_tab".} +proc gtk_paint_shadow_gap*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, + shadow_type: TGtkShadowType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + width: gint, height: gint, + gap_side: TGtkPositionType, gap_x: gint, + gap_width: gint){.cdecl, dynlib: gtklib, + importc: "gtk_paint_shadow_gap".} +proc gtk_paint_box_gap*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint, + gap_side: TGtkPositionType, gap_x: gint, gap_width: gint){. + cdecl, dynlib: gtklib, importc: "gtk_paint_box_gap".} +proc gtk_paint_extension*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, + shadow_type: TGtkShadowType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + width: gint, height: gint, gap_side: TGtkPositionType){. + cdecl, dynlib: gtklib, importc: "gtk_paint_extension".} +proc gtk_paint_focus*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + width: gint, height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_paint_focus".} +proc gtk_paint_slider*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint, + orientation: TGtkOrientation){.cdecl, dynlib: gtklib, + importc: "gtk_paint_slider".} +proc gtk_paint_handle*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, shadow_type: TGtkShadowType, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, width: gint, height: gint, + orientation: TGtkOrientation){.cdecl, dynlib: gtklib, + importc: "gtk_paint_handle".} +proc gtk_paint_expander*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, x: gint, y: gint, + expander_style: TGtkExpanderStyle){.cdecl, + dynlib: gtklib, importc: "gtk_paint_expander".} +proc gtk_paint_layout*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, use_text: gboolean, + area: PGdkRectangle, widget: PGtkWidget, detail: cstring, + x: gint, y: gint, layout: PPangoLayout){.cdecl, + dynlib: gtklib, importc: "gtk_paint_layout".} +proc gtk_paint_resize_grip*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, area: PGdkRectangle, + widget: PGtkWidget, detail: cstring, + edge: TGdkWindowEdge, x: gint, y: gint, width: gint, + height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_paint_resize_grip".} +proc gtk_border_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_border_get_type".} +proc gtk_border_copy*(border: PGtkBorder): PGtkBorder{.cdecl, dynlib: gtklib, + importc: "gtk_border_copy".} +proc gtk_border_free*(border: PGtkBorder){.cdecl, dynlib: gtklib, + importc: "gtk_border_free".} +proc gtk_style_peek_property_value*(style: PGtkStyle, widget_type: GType, + pspec: PGParamSpec, + parser: TGtkRcPropertyParser): PGValue{. + cdecl, dynlib: gtklib, importc: "_gtk_style_peek_property_value".} +proc gtk_get_insertion_cursor_gc*(widget: PGtkWidget, is_primary: gboolean): PGdkGC{. + cdecl, dynlib: gtklib, importc: "_gtk_get_insertion_cursor_gc".} +proc gtk_draw_insertion_cursor*(widget: PGtkWidget, drawable: PGdkDrawable, + gc: PGdkGC, location: PGdkRectangle, + direction: TGtkTextDirection, + draw_arrow: gboolean){.cdecl, dynlib: gtklib, + importc: "_gtk_draw_insertion_cursor".} +const + bm_TGtkRange_inverted* = 0x00000001 + bp_TGtkRange_inverted* = 0 + bm_TGtkRange_flippable* = 0x00000002 + bp_TGtkRange_flippable* = 1 + bm_TGtkRange_has_stepper_a* = 0x00000004 + bp_TGtkRange_has_stepper_a* = 2 + bm_TGtkRange_has_stepper_b* = 0x00000008 + bp_TGtkRange_has_stepper_b* = 3 + bm_TGtkRange_has_stepper_c* = 0x00000010 + bp_TGtkRange_has_stepper_c* = 4 + bm_TGtkRange_has_stepper_d* = 0x00000020 + bp_TGtkRange_has_stepper_d* = 5 + bm_TGtkRange_need_recalc* = 0x00000040 + bp_TGtkRange_need_recalc* = 6 + bm_TGtkRange_slider_size_fixed* = 0x00000080 + bp_TGtkRange_slider_size_fixed* = 7 + bm_TGtkRange_trough_click_forward* = 0x00000001 + bp_TGtkRange_trough_click_forward* = 0 + bm_TGtkRange_update_pending* = 0x00000002 + bp_TGtkRange_update_pending* = 1 + +proc GTK_TYPE_RANGE*(): GType +proc GTK_RANGE*(obj: pointer): PGtkRange +proc GTK_RANGE_CLASS*(klass: pointer): PGtkRangeClass +proc GTK_IS_RANGE*(obj: pointer): bool +proc GTK_IS_RANGE_CLASS*(klass: pointer): bool +proc GTK_RANGE_GET_CLASS*(obj: pointer): PGtkRangeClass +proc inverted*(a: var TGtkRange): guint +proc set_inverted*(a: var TGtkRange, `inverted`: guint) +proc flippable*(a: var TGtkRange): guint +proc set_flippable*(a: var TGtkRange, `flippable`: guint) +proc has_stepper_a*(a: var TGtkRange): guint +proc set_has_stepper_a*(a: var TGtkRange, `has_stepper_a`: guint) +proc has_stepper_b*(a: var TGtkRange): guint +proc set_has_stepper_b*(a: var TGtkRange, `has_stepper_b`: guint) +proc has_stepper_c*(a: var TGtkRange): guint +proc set_has_stepper_c*(a: var TGtkRange, `has_stepper_c`: guint) +proc has_stepper_d*(a: var TGtkRange): guint +proc set_has_stepper_d*(a: var TGtkRange, `has_stepper_d`: guint) +proc need_recalc*(a: var TGtkRange): guint +proc set_need_recalc*(a: var TGtkRange, `need_recalc`: guint) +proc slider_size_fixed*(a: var TGtkRange): guint +proc set_slider_size_fixed*(a: var TGtkRange, `slider_size_fixed`: guint) +proc trough_click_forward*(a: var TGtkRange): guint +proc set_trough_click_forward*(a: var TGtkRange, `trough_click_forward`: guint) +proc update_pending*(a: var TGtkRange): guint +proc set_update_pending*(a: var TGtkRange, `update_pending`: guint) +proc gtk_range_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_range_get_type".} +proc gtk_range_set_update_policy*(range: PGtkRange, policy: TGtkUpdateType){. + cdecl, dynlib: gtklib, importc: "gtk_range_set_update_policy".} +proc gtk_range_get_update_policy*(range: PGtkRange): TGtkUpdateType{.cdecl, + dynlib: gtklib, importc: "gtk_range_get_update_policy".} +proc gtk_range_set_adjustment*(range: PGtkRange, adjustment: PGtkAdjustment){. + cdecl, dynlib: gtklib, importc: "gtk_range_set_adjustment".} +proc gtk_range_get_adjustment*(range: PGtkRange): PGtkAdjustment{.cdecl, + dynlib: gtklib, importc: "gtk_range_get_adjustment".} +proc gtk_range_set_inverted*(range: PGtkRange, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_range_set_inverted".} +proc gtk_range_get_inverted*(range: PGtkRange): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_range_get_inverted".} +proc gtk_range_set_increments*(range: PGtkRange, step: gdouble, page: gdouble){. + cdecl, dynlib: gtklib, importc: "gtk_range_set_increments".} +proc gtk_range_set_range*(range: PGtkRange, min: gdouble, max: gdouble){.cdecl, + dynlib: gtklib, importc: "gtk_range_set_range".} +proc gtk_range_set_value*(range: PGtkRange, value: gdouble){.cdecl, + dynlib: gtklib, importc: "gtk_range_set_value".} +proc gtk_range_get_value*(range: PGtkRange): gdouble{.cdecl, dynlib: gtklib, + importc: "gtk_range_get_value".} +const + bm_TGtkScale_draw_value* = 0x00000001 + bp_TGtkScale_draw_value* = 0 + bm_TGtkScale_value_pos* = 0x00000006 + bp_TGtkScale_value_pos* = 1 + +proc GTK_TYPE_SCALE*(): GType +proc GTK_SCALE*(obj: pointer): PGtkScale +proc GTK_SCALE_CLASS*(klass: pointer): PGtkScaleClass +proc GTK_IS_SCALE*(obj: pointer): bool +proc GTK_IS_SCALE_CLASS*(klass: pointer): bool +proc GTK_SCALE_GET_CLASS*(obj: pointer): PGtkScaleClass +proc draw_value*(a: var TGtkScale): guint +proc set_draw_value*(a: var TGtkScale, `draw_value`: guint) +proc value_pos*(a: var TGtkScale): guint +proc set_value_pos*(a: var TGtkScale, `value_pos`: guint) +proc gtk_scale_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_scale_get_type".} +proc gtk_scale_set_digits*(scale: PGtkScale, digits: gint){.cdecl, + dynlib: gtklib, importc: "gtk_scale_set_digits".} +proc gtk_scale_get_digits*(scale: PGtkScale): gint{.cdecl, dynlib: gtklib, + importc: "gtk_scale_get_digits".} +proc gtk_scale_set_draw_value*(scale: PGtkScale, draw_value: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_scale_set_draw_value".} +proc gtk_scale_get_draw_value*(scale: PGtkScale): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_scale_get_draw_value".} +proc gtk_scale_set_value_pos*(scale: PGtkScale, pos: TGtkPositionType){.cdecl, + dynlib: gtklib, importc: "gtk_scale_set_value_pos".} +proc gtk_scale_get_value_pos*(scale: PGtkScale): TGtkPositionType{.cdecl, + dynlib: gtklib, importc: "gtk_scale_get_value_pos".} +proc gtk_scale_get_value_size*(scale: PGtkScale, width: Pgint, height: Pgint){. + cdecl, dynlib: gtklib, importc: "_gtk_scale_get_value_size".} +proc gtk_scale_format_value*(scale: PGtkScale, value: gdouble): cstring{.cdecl, + dynlib: gtklib, importc: "_gtk_scale_format_value".} +proc GTK_TYPE_HSCALE*(): GType +proc GTK_HSCALE*(obj: pointer): PGtkHScale +proc GTK_HSCALE_CLASS*(klass: pointer): PGtkHScaleClass +proc GTK_IS_HSCALE*(obj: pointer): bool +proc GTK_IS_HSCALE_CLASS*(klass: pointer): bool +proc GTK_HSCALE_GET_CLASS*(obj: pointer): PGtkHScaleClass +proc gtk_hscale_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hscale_get_type".} +proc gtk_hscale_new*(adjustment: PGtkAdjustment): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_hscale_new".} +proc gtk_hscale_new_with_range*(min: gdouble, max: gdouble, step: gdouble): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_hscale_new_with_range".} +proc GTK_TYPE_SCROLLBAR*(): GType +proc GTK_SCROLLBAR*(obj: pointer): PGtkScrollbar +proc GTK_SCROLLBAR_CLASS*(klass: pointer): PGtkScrollbarClass +proc GTK_IS_SCROLLBAR*(obj: pointer): bool +proc GTK_IS_SCROLLBAR_CLASS*(klass: pointer): bool +proc GTK_SCROLLBAR_GET_CLASS*(obj: pointer): PGtkScrollbarClass +proc gtk_scrollbar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_scrollbar_get_type".} +proc GTK_TYPE_HSCROLLBAR*(): GType +proc GTK_HSCROLLBAR*(obj: pointer): PGtkHScrollbar +proc GTK_HSCROLLBAR_CLASS*(klass: pointer): PGtkHScrollbarClass +proc GTK_IS_HSCROLLBAR*(obj: pointer): bool +proc GTK_IS_HSCROLLBAR_CLASS*(klass: pointer): bool +proc GTK_HSCROLLBAR_GET_CLASS*(obj: pointer): PGtkHScrollbarClass +proc gtk_hscrollbar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hscrollbar_get_type".} +proc gtk_hscrollbar_new*(adjustment: PGtkAdjustment): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_hscrollbar_new".} +proc GTK_TYPE_SEPARATOR*(): GType +proc GTK_SEPARATOR*(obj: pointer): PGtkSeparator +proc GTK_SEPARATOR_CLASS*(klass: pointer): PGtkSeparatorClass +proc GTK_IS_SEPARATOR*(obj: pointer): bool +proc GTK_IS_SEPARATOR_CLASS*(klass: pointer): bool +proc GTK_SEPARATOR_GET_CLASS*(obj: pointer): PGtkSeparatorClass +proc gtk_separator_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_separator_get_type".} +proc GTK_TYPE_HSEPARATOR*(): GType +proc GTK_HSEPARATOR*(obj: pointer): PGtkHSeparator +proc GTK_HSEPARATOR_CLASS*(klass: pointer): PGtkHSeparatorClass +proc GTK_IS_HSEPARATOR*(obj: pointer): bool +proc GTK_IS_HSEPARATOR_CLASS*(klass: pointer): bool +proc GTK_HSEPARATOR_GET_CLASS*(obj: pointer): PGtkHSeparatorClass +proc gtk_hseparator_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_hseparator_get_type".} +proc gtk_hseparator_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_hseparator_new".} +proc GTK_TYPE_ICON_FACTORY*(): GType +proc GTK_ICON_FACTORY*(anObject: pointer): PGtkIconFactory +proc GTK_ICON_FACTORY_CLASS*(klass: pointer): PGtkIconFactoryClass +proc GTK_IS_ICON_FACTORY*(anObject: pointer): bool +proc GTK_IS_ICON_FACTORY_CLASS*(klass: pointer): bool +proc GTK_ICON_FACTORY_GET_CLASS*(obj: pointer): PGtkIconFactoryClass +proc GTK_TYPE_ICON_SET*(): GType +proc GTK_TYPE_ICON_SOURCE*(): GType +proc gtk_icon_factory_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_icon_factory_get_type".} +proc gtk_icon_factory_new*(): PGtkIconFactory{.cdecl, dynlib: gtklib, + importc: "gtk_icon_factory_new".} +proc gtk_icon_factory_add*(factory: PGtkIconFactory, stock_id: cstring, + icon_set: PGtkIconSet){.cdecl, dynlib: gtklib, + importc: "gtk_icon_factory_add".} +proc gtk_icon_factory_lookup*(factory: PGtkIconFactory, stock_id: cstring): PGtkIconSet{. + cdecl, dynlib: gtklib, importc: "gtk_icon_factory_lookup".} +proc gtk_icon_factory_add_default*(factory: PGtkIconFactory){.cdecl, + dynlib: gtklib, importc: "gtk_icon_factory_add_default".} +proc gtk_icon_factory_remove_default*(factory: PGtkIconFactory){.cdecl, + dynlib: gtklib, importc: "gtk_icon_factory_remove_default".} +proc gtk_icon_factory_lookup_default*(stock_id: cstring): PGtkIconSet{.cdecl, + dynlib: gtklib, importc: "gtk_icon_factory_lookup_default".} +proc gtk_icon_size_lookup*(size: TGtkIconSize, width: Pgint, height: Pgint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_icon_size_lookup".} +proc gtk_icon_size_register*(name: cstring, width: gint, height: gint): TGtkIconSize{. + cdecl, dynlib: gtklib, importc: "gtk_icon_size_register".} +proc gtk_icon_size_register_alias*(alias: cstring, target: TGtkIconSize){.cdecl, + dynlib: gtklib, importc: "gtk_icon_size_register_alias".} +proc gtk_icon_size_from_name*(name: cstring): TGtkIconSize{.cdecl, + dynlib: gtklib, importc: "gtk_icon_size_from_name".} +proc gtk_icon_size_get_name*(size: TGtkIconSize): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_icon_size_get_name".} +proc gtk_icon_set_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_icon_set_get_type".} +proc gtk_icon_set_new*(): PGtkIconSet{.cdecl, dynlib: gtklib, + importc: "gtk_icon_set_new".} +proc gtk_icon_set_new_from_pixbuf*(pixbuf: PGdkPixbuf): PGtkIconSet{.cdecl, + dynlib: gtklib, importc: "gtk_icon_set_new_from_pixbuf".} +proc gtk_icon_set_ref*(icon_set: PGtkIconSet): PGtkIconSet{.cdecl, + dynlib: gtklib, importc: "gtk_icon_set_ref".} +proc gtk_icon_set_unref*(icon_set: PGtkIconSet){.cdecl, dynlib: gtklib, + importc: "gtk_icon_set_unref".} +proc gtk_icon_set_copy*(icon_set: PGtkIconSet): PGtkIconSet{.cdecl, + dynlib: gtklib, importc: "gtk_icon_set_copy".} +proc gtk_icon_set_render_icon*(icon_set: PGtkIconSet, style: PGtkStyle, + direction: TGtkTextDirection, + state: TGtkStateType, size: TGtkIconSize, + widget: PGtkWidget, detail: cstring): PGdkPixbuf{. + cdecl, dynlib: gtklib, importc: "gtk_icon_set_render_icon".} +proc gtk_icon_set_add_source*(icon_set: PGtkIconSet, source: PGtkIconSource){. + cdecl, dynlib: gtklib, importc: "gtk_icon_set_add_source".} +proc gtk_icon_set_get_sizes*(icon_set: PGtkIconSet, sizes: PPGtkIconSize, + n_sizes: pgint){.cdecl, dynlib: gtklib, + importc: "gtk_icon_set_get_sizes".} +proc gtk_icon_source_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_icon_source_get_type".} +proc gtk_icon_source_new*(): PGtkIconSource{.cdecl, dynlib: gtklib, + importc: "gtk_icon_source_new".} +proc gtk_icon_source_copy*(source: PGtkIconSource): PGtkIconSource{.cdecl, + dynlib: gtklib, importc: "gtk_icon_source_copy".} +proc gtk_icon_source_free*(source: PGtkIconSource){.cdecl, dynlib: gtklib, + importc: "gtk_icon_source_free".} +proc gtk_icon_source_set_filename*(source: PGtkIconSource, filename: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_set_filename".} +proc gtk_icon_source_set_pixbuf*(source: PGtkIconSource, pixbuf: PGdkPixbuf){. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_set_pixbuf".} +proc gtk_icon_source_get_filename*(source: PGtkIconSource): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_icon_source_get_filename".} +proc gtk_icon_source_get_pixbuf*(source: PGtkIconSource): PGdkPixbuf{.cdecl, + dynlib: gtklib, importc: "gtk_icon_source_get_pixbuf".} +proc gtk_icon_source_set_direction_wildcarded*(source: PGtkIconSource, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_icon_source_set_direction_wildcarded".} +proc gtk_icon_source_set_state_wildcarded*(source: PGtkIconSource, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_icon_source_set_state_wildcarded".} +proc gtk_icon_source_set_size_wildcarded*(source: PGtkIconSource, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_icon_source_set_size_wildcarded".} +proc gtk_icon_source_get_size_wildcarded*(source: PGtkIconSource): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_get_size_wildcarded".} +proc gtk_icon_source_get_state_wildcarded*(source: PGtkIconSource): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_get_state_wildcarded".} +proc gtk_icon_source_get_direction_wildcarded*(source: PGtkIconSource): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_get_direction_wildcarded".} +proc gtk_icon_source_set_direction*(source: PGtkIconSource, + direction: TGtkTextDirection){.cdecl, + dynlib: gtklib, importc: "gtk_icon_source_set_direction".} +proc gtk_icon_source_set_state*(source: PGtkIconSource, state: TGtkStateType){. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_set_state".} +proc gtk_icon_source_set_size*(source: PGtkIconSource, size: TGtkIconSize){. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_set_size".} +proc gtk_icon_source_get_direction*(source: PGtkIconSource): TGtkTextDirection{. + cdecl, dynlib: gtklib, importc: "gtk_icon_source_get_direction".} +proc gtk_icon_source_get_state*(source: PGtkIconSource): TGtkStateType{.cdecl, + dynlib: gtklib, importc: "gtk_icon_source_get_state".} +proc gtk_icon_source_get_size*(source: PGtkIconSource): TGtkIconSize{.cdecl, + dynlib: gtklib, importc: "gtk_icon_source_get_size".} +proc gtk_icon_set_invalidate_caches*(){.cdecl, dynlib: gtklib, + importc: "_gtk_icon_set_invalidate_caches".} +proc gtk_icon_factory_list_ids*(): PGSList{.cdecl, dynlib: gtklib, + importc: "_gtk_icon_factory_list_ids".} +proc GTK_TYPE_IMAGE*(): GType +proc GTK_IMAGE*(obj: pointer): PGtkImage +proc GTK_IMAGE_CLASS*(klass: pointer): PGtkImageClass +proc GTK_IS_IMAGE*(obj: pointer): bool +proc GTK_IS_IMAGE_CLASS*(klass: pointer): bool +proc GTK_IMAGE_GET_CLASS*(obj: pointer): PGtkImageClass +proc gtk_image_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_image_get_type".} +proc gtk_image_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_image_new".} +proc gtk_image_new_from_pixmap*(pixmap: PGdkPixmap, mask: PGdkBitmap): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_image_new_from_pixmap".} +proc gtk_image_new_from_image*(image: PGdkImage, mask: PGdkBitmap): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_image_new_from_image".} +proc gtk_image_new_from_file*(filename: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_image_new_from_file".} +proc gtk_image_new_from_pixbuf*(pixbuf: PGdkPixbuf): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_image_new_from_pixbuf".} +proc gtk_image_new_from_stock*(stock_id: cstring, size: TGtkIconSize): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_image_new_from_stock".} +proc gtk_image_new_from_icon_set*(icon_set: PGtkIconSet, size: TGtkIconSize): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_image_new_from_icon_set".} +proc gtk_image_new_from_animation*(animation: PGdkPixbufAnimation): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_image_new_from_animation".} +proc gtk_image_set_from_pixmap*(image: PGtkImage, pixmap: PGdkPixmap, + mask: PGdkBitmap){.cdecl, dynlib: gtklib, + importc: "gtk_image_set_from_pixmap".} +proc gtk_image_set_from_image*(image: PGtkImage, gdk_image: PGdkImage, + mask: PGdkBitmap){.cdecl, dynlib: gtklib, + importc: "gtk_image_set_from_image".} +proc gtk_image_set_from_file*(image: PGtkImage, filename: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_image_set_from_file".} +proc gtk_image_set_from_pixbuf*(image: PGtkImage, pixbuf: PGdkPixbuf){.cdecl, + dynlib: gtklib, importc: "gtk_image_set_from_pixbuf".} +proc gtk_image_set_from_stock*(image: PGtkImage, stock_id: cstring, + size: TGtkIconSize){.cdecl, dynlib: gtklib, + importc: "gtk_image_set_from_stock".} +proc gtk_image_set_from_icon_set*(image: PGtkImage, icon_set: PGtkIconSet, + size: TGtkIconSize){.cdecl, dynlib: gtklib, + importc: "gtk_image_set_from_icon_set".} +proc gtk_image_set_from_animation*(image: PGtkImage, + animation: PGdkPixbufAnimation){.cdecl, + dynlib: gtklib, importc: "gtk_image_set_from_animation".} +proc gtk_image_get_storage_type*(image: PGtkImage): TGtkImageType{.cdecl, + dynlib: gtklib, importc: "gtk_image_get_storage_type".} +proc gtk_image_get_pixbuf*(image: PGtkImage): PGdkPixbuf{.cdecl, dynlib: gtklib, + importc: "gtk_image_get_pixbuf".} +proc gtk_image_get_stock*(image: PGtkImage, stock_id: PPgchar, + size: PGtkIconSize){.cdecl, dynlib: gtklib, + importc: "gtk_image_get_stock".} +proc gtk_image_get_animation*(image: PGtkImage): PGdkPixbufAnimation{.cdecl, + dynlib: gtklib, importc: "gtk_image_get_animation".} +proc GTK_TYPE_IMAGE_MENU_ITEM*(): GType +proc GTK_IMAGE_MENU_ITEM*(obj: pointer): PGtkImageMenuItem +proc GTK_IMAGE_MENU_ITEM_CLASS*(klass: pointer): PGtkImageMenuItemClass +proc GTK_IS_IMAGE_MENU_ITEM*(obj: pointer): bool +proc GTK_IS_IMAGE_MENU_ITEM_CLASS*(klass: pointer): bool +proc GTK_IMAGE_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkImageMenuItemClass +proc gtk_image_menu_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_image_menu_item_get_type".} +proc gtk_image_menu_item_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_image_menu_item_new".} +proc gtk_image_menu_item_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_image_menu_item_new_with_label".} +proc gtk_image_menu_item_new_with_mnemonic*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_image_menu_item_new_with_mnemonic".} +proc gtk_image_menu_item_new_from_stock*(stock_id: cstring, + accel_group: PGtkAccelGroup): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_image_menu_item_new_from_stock".} +proc gtk_image_menu_item_set_image*(image_menu_item: PGtkImageMenuItem, + image: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_image_menu_item_set_image".} +proc gtk_image_menu_item_get_image*(image_menu_item: PGtkImageMenuItem): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_image_menu_item_get_image".} +const + bm_TGtkIMContextSimple_in_hex_sequence* = 0x00000001 + bp_TGtkIMContextSimple_in_hex_sequence* = 0 + +proc GTK_TYPE_IM_CONTEXT_SIMPLE*(): GType +proc GTK_IM_CONTEXT_SIMPLE*(obj: pointer): PGtkIMContextSimple +proc GTK_IM_CONTEXT_SIMPLE_CLASS*(klass: pointer): PGtkIMContextSimpleClass +proc GTK_IS_IM_CONTEXT_SIMPLE*(obj: pointer): bool +proc GTK_IS_IM_CONTEXT_SIMPLE_CLASS*(klass: pointer): bool +proc GTK_IM_CONTEXT_SIMPLE_GET_CLASS*(obj: pointer): PGtkIMContextSimpleClass +proc in_hex_sequence*(a: var TGtkIMContextSimple): guint +proc set_in_hex_sequence*(a: var TGtkIMContextSimple, `in_hex_sequence`: guint) +proc gtk_im_context_simple_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_im_context_simple_get_type".} +proc gtk_im_context_simple_new*(): PGtkIMContext{.cdecl, dynlib: gtklib, + importc: "gtk_im_context_simple_new".} +proc gtk_im_context_simple_add_table*(context_simple: PGtkIMContextSimple, + data: Pguint16, max_seq_len: gint, + n_seqs: gint){.cdecl, dynlib: gtklib, + importc: "gtk_im_context_simple_add_table".} +proc GTK_TYPE_IM_MULTICONTEXT*(): GType +proc GTK_IM_MULTICONTEXT*(obj: pointer): PGtkIMMulticontext +proc GTK_IM_MULTICONTEXT_CLASS*(klass: pointer): PGtkIMMulticontextClass +proc GTK_IS_IM_MULTICONTEXT*(obj: pointer): bool +proc GTK_IS_IM_MULTICONTEXT_CLASS*(klass: pointer): bool +proc GTK_IM_MULTICONTEXT_GET_CLASS*(obj: pointer): PGtkIMMulticontextClass +proc gtk_im_multicontext_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_im_multicontext_get_type".} +proc gtk_im_multicontext_new*(): PGtkIMContext{.cdecl, dynlib: gtklib, + importc: "gtk_im_multicontext_new".} +proc gtk_im_multicontext_append_menuitems*(context: PGtkIMMulticontext, + menushell: PGtkMenuShell){.cdecl, dynlib: gtklib, + importc: "gtk_im_multicontext_append_menuitems".} +proc GTK_TYPE_INPUT_DIALOG*(): GType +proc GTK_INPUT_DIALOG*(obj: pointer): PGtkInputDialog +proc GTK_INPUT_DIALOG_CLASS*(klass: pointer): PGtkInputDialogClass +proc GTK_IS_INPUT_DIALOG*(obj: pointer): bool +proc GTK_IS_INPUT_DIALOG_CLASS*(klass: pointer): bool +proc GTK_INPUT_DIALOG_GET_CLASS*(obj: pointer): PGtkInputDialogClass +proc gtk_input_dialog_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_input_dialog_get_type".} +proc gtk_input_dialog_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_input_dialog_new".} +proc GTK_TYPE_INVISIBLE*(): GType +proc GTK_INVISIBLE*(obj: pointer): PGtkInvisible +proc GTK_INVISIBLE_CLASS*(klass: pointer): PGtkInvisibleClass +proc GTK_IS_INVISIBLE*(obj: pointer): bool +proc GTK_IS_INVISIBLE_CLASS*(klass: pointer): bool +proc GTK_INVISIBLE_GET_CLASS*(obj: pointer): PGtkInvisibleClass +proc gtk_invisible_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_invisible_get_type".} +proc gtk_invisible_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_invisible_new".} +proc gtk_invisible_new_for_screen*(screen: PGdkScreen): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_invisible_new_for_screen".} +proc gtk_invisible_set_screen*(invisible: PGtkInvisible, screen: PGdkScreen){. + cdecl, dynlib: gtklib, importc: "gtk_invisible_set_screen".} +proc gtk_invisible_get_screen*(invisible: PGtkInvisible): PGdkScreen{.cdecl, + dynlib: gtklib, importc: "gtk_invisible_get_screen".} +proc GTK_TYPE_ITEM_FACTORY*(): GType +proc GTK_ITEM_FACTORY*(anObject: pointer): PGtkItemFactory +proc GTK_ITEM_FACTORY_CLASS*(klass: pointer): PGtkItemFactoryClass +proc GTK_IS_ITEM_FACTORY*(anObject: pointer): bool +proc GTK_IS_ITEM_FACTORY_CLASS*(klass: pointer): bool +proc GTK_ITEM_FACTORY_GET_CLASS*(obj: pointer): PGtkItemFactoryClass +proc gtk_item_factory_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_item_factory_get_type".} +proc gtk_item_factory_new*(container_type: TGtkType, path: cstring, + accel_group: PGtkAccelGroup): PGtkItemFactory{.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_new".} +proc gtk_item_factory_construct*(ifactory: PGtkItemFactory, + container_type: TGtkType, path: cstring, + accel_group: PGtkAccelGroup){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_construct".} +proc gtk_item_factory_add_foreign*(accel_widget: PGtkWidget, full_path: cstring, + accel_group: PGtkAccelGroup, keyval: guint, + modifiers: TGdkModifierType){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_add_foreign".} +proc gtk_item_factory_from_widget*(widget: PGtkWidget): PGtkItemFactory{.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_from_widget".} +proc gtk_item_factory_path_from_widget*(widget: PGtkWidget): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_path_from_widget".} +proc gtk_item_factory_get_item*(ifactory: PGtkItemFactory, path: cstring): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_item_factory_get_item".} +proc gtk_item_factory_get_widget*(ifactory: PGtkItemFactory, path: cstring): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_item_factory_get_widget".} +proc gtk_item_factory_get_widget_by_action*(ifactory: PGtkItemFactory, + action: guint): PGtkWidget{.cdecl, dynlib: gtklib, importc: "gtk_item_factory_get_widget_by_action".} +proc gtk_item_factory_get_item_by_action*(ifactory: PGtkItemFactory, + action: guint): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_item_factory_get_item_by_action".} +proc gtk_item_factory_create_item*(ifactory: PGtkItemFactory, + entry: PGtkItemFactoryEntry, + callback_data: gpointer, callback_type: guint){. + cdecl, dynlib: gtklib, importc: "gtk_item_factory_create_item".} +proc gtk_item_factory_create_items*(ifactory: PGtkItemFactory, n_entries: guint, + entries: PGtkItemFactoryEntry, + callback_data: gpointer){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_create_items".} +proc gtk_item_factory_delete_item*(ifactory: PGtkItemFactory, path: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_item_factory_delete_item".} +proc gtk_item_factory_delete_entry*(ifactory: PGtkItemFactory, + entry: PGtkItemFactoryEntry){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_delete_entry".} +proc gtk_item_factory_delete_entries*(ifactory: PGtkItemFactory, + n_entries: guint, + entries: PGtkItemFactoryEntry){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_delete_entries".} +proc gtk_item_factory_popup*(ifactory: PGtkItemFactory, x: guint, y: guint, + mouse_button: guint, time: guint32){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_popup".} +proc gtk_item_factory_popup_with_data*(ifactory: PGtkItemFactory, + popup_data: gpointer, + destroy: TGtkDestroyNotify, x: guint, + y: guint, mouse_button: guint, + time: guint32){.cdecl, dynlib: gtklib, + importc: "gtk_item_factory_popup_with_data".} +proc gtk_item_factory_popup_data*(ifactory: PGtkItemFactory): gpointer{.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_popup_data".} +proc gtk_item_factory_popup_data_from_widget*(widget: PGtkWidget): gpointer{. + cdecl, dynlib: gtklib, importc: "gtk_item_factory_popup_data_from_widget".} +proc gtk_item_factory_set_translate_func*(ifactory: PGtkItemFactory, + func_: TGtkTranslateFunc, data: gpointer, notify: TGtkDestroyNotify){.cdecl, + dynlib: gtklib, importc: "gtk_item_factory_set_translate_func".} +proc GTK_TYPE_LAYOUT*(): GType +proc GTK_LAYOUT*(obj: pointer): PGtkLayout +proc GTK_LAYOUT_CLASS*(klass: pointer): PGtkLayoutClass +proc GTK_IS_LAYOUT*(obj: pointer): bool +proc GTK_IS_LAYOUT_CLASS*(klass: pointer): bool +proc GTK_LAYOUT_GET_CLASS*(obj: pointer): PGtkLayoutClass +proc gtk_layout_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_layout_get_type".} +proc gtk_layout_new*(hadjustment: PGtkAdjustment, vadjustment: PGtkAdjustment): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_layout_new".} +proc gtk_layout_put*(layout: PGtkLayout, child_widget: PGtkWidget, x: gint, + y: gint){.cdecl, dynlib: gtklib, importc: "gtk_layout_put".} +proc gtk_layout_move*(layout: PGtkLayout, child_widget: PGtkWidget, x: gint, + y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_layout_move".} +proc gtk_layout_set_size*(layout: PGtkLayout, width: guint, height: guint){. + cdecl, dynlib: gtklib, importc: "gtk_layout_set_size".} +proc gtk_layout_get_size*(layout: PGtkLayout, width: Pguint, height: Pguint){. + cdecl, dynlib: gtklib, importc: "gtk_layout_get_size".} +proc gtk_layout_get_hadjustment*(layout: PGtkLayout): PGtkAdjustment{.cdecl, + dynlib: gtklib, importc: "gtk_layout_get_hadjustment".} +proc gtk_layout_get_vadjustment*(layout: PGtkLayout): PGtkAdjustment{.cdecl, + dynlib: gtklib, importc: "gtk_layout_get_vadjustment".} +proc gtk_layout_set_hadjustment*(layout: PGtkLayout, adjustment: PGtkAdjustment){. + cdecl, dynlib: gtklib, importc: "gtk_layout_set_hadjustment".} +proc gtk_layout_set_vadjustment*(layout: PGtkLayout, adjustment: PGtkAdjustment){. + cdecl, dynlib: gtklib, importc: "gtk_layout_set_vadjustment".} +const + bm_TGtkList_selection_mode* = 0x00000003 + bp_TGtkList_selection_mode* = 0 + bm_TGtkList_drag_selection* = 0x00000004 + bp_TGtkList_drag_selection* = 2 + bm_TGtkList_add_mode* = 0x00000008 + bp_TGtkList_add_mode* = 3 + +proc GTK_TYPE_LIST*(): GType +proc GTK_LIST*(obj: pointer): PGtkList +proc GTK_LIST_CLASS*(klass: pointer): PGtkListClass +proc GTK_IS_LIST*(obj: pointer): bool +proc GTK_IS_LIST_CLASS*(klass: pointer): bool +proc GTK_LIST_GET_CLASS*(obj: pointer): PGtkListClass +proc selection_mode*(a: var TGtkList): guint +proc set_selection_mode*(a: var TGtkList, `selection_mode`: guint) +proc drag_selection*(a: var TGtkList): guint +proc set_drag_selection*(a: var TGtkList, `drag_selection`: guint) +proc add_mode*(a: var TGtkList): guint +proc set_add_mode*(a: var TGtkList, `add_mode`: guint) +proc gtk_list_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_list_get_type".} +proc gtk_list_new*(): PGtkWidget{.cdecl, dynlib: gtklib, importc: "gtk_list_new".} +proc gtk_list_insert_items*(list: PGtkList, items: PGList, position: gint){. + cdecl, dynlib: gtklib, importc: "gtk_list_insert_items".} +proc gtk_list_append_items*(list: PGtkList, items: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_list_append_items".} +proc gtk_list_prepend_items*(list: PGtkList, items: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_list_prepend_items".} +proc gtk_list_remove_items*(list: PGtkList, items: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_list_remove_items".} +proc gtk_list_remove_items_no_unref*(list: PGtkList, items: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_list_remove_items_no_unref".} +proc gtk_list_clear_items*(list: PGtkList, start: gint, theEnd: gint){.cdecl, + dynlib: gtklib, importc: "gtk_list_clear_items".} +proc gtk_list_select_item*(list: PGtkList, item: gint){.cdecl, dynlib: gtklib, + importc: "gtk_list_select_item".} +proc gtk_list_unselect_item*(list: PGtkList, item: gint){.cdecl, dynlib: gtklib, + importc: "gtk_list_unselect_item".} +proc gtk_list_select_child*(list: PGtkList, child: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_list_select_child".} +proc gtk_list_unselect_child*(list: PGtkList, child: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_list_unselect_child".} +proc gtk_list_child_position*(list: PGtkList, child: PGtkWidget): gint{.cdecl, + dynlib: gtklib, importc: "gtk_list_child_position".} +proc gtk_list_set_selection_mode*(list: PGtkList, mode: TGtkSelectionMode){. + cdecl, dynlib: gtklib, importc: "gtk_list_set_selection_mode".} +proc gtk_list_extend_selection*(list: PGtkList, scroll_type: TGtkScrollType, + position: gfloat, auto_start_selection: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_list_extend_selection".} +proc gtk_list_start_selection*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_start_selection".} +proc gtk_list_end_selection*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_end_selection".} +proc gtk_list_select_all*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_select_all".} +proc gtk_list_unselect_all*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_unselect_all".} +proc gtk_list_scroll_horizontal*(list: PGtkList, scroll_type: TGtkScrollType, + position: gfloat){.cdecl, dynlib: gtklib, + importc: "gtk_list_scroll_horizontal".} +proc gtk_list_scroll_vertical*(list: PGtkList, scroll_type: TGtkScrollType, + position: gfloat){.cdecl, dynlib: gtklib, + importc: "gtk_list_scroll_vertical".} +proc gtk_list_toggle_add_mode*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_toggle_add_mode".} +proc gtk_list_toggle_focus_row*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_toggle_focus_row".} +proc gtk_list_toggle_row*(list: PGtkList, item: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_list_toggle_row".} +proc gtk_list_undo_selection*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_undo_selection".} +proc gtk_list_end_drag_selection*(list: PGtkList){.cdecl, dynlib: gtklib, + importc: "gtk_list_end_drag_selection".} +const + GTK_TREE_MODEL_ITERS_PERSIST* = 1 shl 0 + GTK_TREE_MODEL_LIST_ONLY* = 1 shl 1 + +proc GTK_TYPE_TREE_MODEL*(): GType +proc GTK_TREE_MODEL*(obj: pointer): PGtkTreeModel +proc GTK_IS_TREE_MODEL*(obj: pointer): bool +proc GTK_TREE_MODEL_GET_IFACE*(obj: pointer): PGtkTreeModelIface +proc GTK_TYPE_TREE_ITER*(): GType +proc GTK_TYPE_TREE_PATH*(): GType +proc gtk_tree_path_new*(): PGtkTreePath{.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_new".} +proc gtk_tree_path_new_from_string*(path: cstring): PGtkTreePath{.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_new_from_string".} +proc gtk_tree_path_to_string*(path: PGtkTreePath): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_to_string".} +proc gtk_tree_path_new_root*(): PGtkTreePath +proc gtk_tree_path_new_first*(): PGtkTreePath{.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_new_first".} +proc gtk_tree_path_append_index*(path: PGtkTreePath, index: gint){.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_append_index".} +proc gtk_tree_path_prepend_index*(path: PGtkTreePath, index: gint){.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_prepend_index".} +proc gtk_tree_path_get_depth*(path: PGtkTreePath): gint{.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_get_depth".} +proc gtk_tree_path_get_indices*(path: PGtkTreePath): Pgint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_get_indices".} +proc gtk_tree_path_free*(path: PGtkTreePath){.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_free".} +proc gtk_tree_path_copy*(path: PGtkTreePath): PGtkTreePath{.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_copy".} +proc gtk_tree_path_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_get_type".} +proc gtk_tree_path_compare*(a: PGtkTreePath, b: PGtkTreePath): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_path_compare".} +proc gtk_tree_path_next*(path: PGtkTreePath){.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_next".} +proc gtk_tree_path_prev*(path: PGtkTreePath): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_prev".} +proc gtk_tree_path_up*(path: PGtkTreePath): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_up".} +proc gtk_tree_path_down*(path: PGtkTreePath){.cdecl, dynlib: gtklib, + importc: "gtk_tree_path_down".} +proc gtk_tree_path_is_ancestor*(path: PGtkTreePath, descendant: PGtkTreePath): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_path_is_ancestor".} +proc gtk_tree_path_is_descendant*(path: PGtkTreePath, ancestor: PGtkTreePath): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_path_is_descendant".} +proc gtk_tree_row_reference_new*(model: PGtkTreeModel, path: PGtkTreePath): PGtkTreeRowReference{. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_new".} +proc gtk_tree_row_reference_new_proxy*(proxy: PGObject, model: PGtkTreeModel, + path: PGtkTreePath): PGtkTreeRowReference{. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_new_proxy".} +proc gtk_tree_row_reference_get_path*(reference: PGtkTreeRowReference): PGtkTreePath{. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_get_path".} +proc gtk_tree_row_reference_valid*(reference: PGtkTreeRowReference): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_valid".} +proc gtk_tree_row_reference_free*(reference: PGtkTreeRowReference){.cdecl, + dynlib: gtklib, importc: "gtk_tree_row_reference_free".} +proc gtk_tree_row_reference_inserted*(proxy: PGObject, path: PGtkTreePath){. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_inserted".} +proc gtk_tree_row_reference_deleted*(proxy: PGObject, path: PGtkTreePath){. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_deleted".} +proc gtk_tree_row_reference_reordered*(proxy: PGObject, path: PGtkTreePath, + iter: PGtkTreeIter, new_order: Pgint){. + cdecl, dynlib: gtklib, importc: "gtk_tree_row_reference_reordered".} +proc gtk_tree_iter_copy*(iter: PGtkTreeIter): PGtkTreeIter{.cdecl, + dynlib: gtklib, importc: "gtk_tree_iter_copy".} +proc gtk_tree_iter_free*(iter: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_iter_free".} +proc gtk_tree_iter_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_iter_get_type".} +proc gtk_tree_model_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_get_type".} +proc gtk_tree_model_get_flags*(tree_model: PGtkTreeModel): TGtkTreeModelFlags{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_get_flags".} +proc gtk_tree_model_get_n_columns*(tree_model: PGtkTreeModel): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_get_n_columns".} +proc gtk_tree_model_get_column_type*(tree_model: PGtkTreeModel, index: gint): GType{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_get_column_type".} +proc gtk_tree_model_get_iter*(tree_model: PGtkTreeModel, iter: PGtkTreeIter, + path: PGtkTreePath): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_get_iter".} +proc gtk_tree_model_get_iter_from_string*(tree_model: PGtkTreeModel, + iter: PGtkTreeIter, path_string: cstring): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_get_iter_from_string".} +proc gtk_tree_model_get_iter_root*(tree_model: PGtkTreeModel, iter: PGtkTreeIter): gboolean +proc gtk_tree_model_get_iter_first*(tree_model: PGtkTreeModel, + iter: PGtkTreeIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_get_iter_first".} +proc gtk_tree_model_get_path*(tree_model: PGtkTreeModel, iter: PGtkTreeIter): PGtkTreePath{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_get_path".} +proc gtk_tree_model_get_value*(tree_model: PGtkTreeModel, iter: PGtkTreeIter, + column: gint, value: PGValue){.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_get_value".} +proc gtk_tree_model_iter_next*(tree_model: PGtkTreeModel, iter: PGtkTreeIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_iter_next".} +proc gtk_tree_model_iter_children*(tree_model: PGtkTreeModel, + iter: PGtkTreeIter, parent: PGtkTreeIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_iter_children".} +proc gtk_tree_model_iter_has_child*(tree_model: PGtkTreeModel, + iter: PGtkTreeIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_iter_has_child".} +proc gtk_tree_model_iter_n_children*(tree_model: PGtkTreeModel, + iter: PGtkTreeIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_iter_n_children".} +proc gtk_tree_model_iter_nth_child*(tree_model: PGtkTreeModel, + iter: PGtkTreeIter, parent: PGtkTreeIter, + n: gint): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_iter_nth_child".} +proc gtk_tree_model_iter_parent*(tree_model: PGtkTreeModel, iter: PGtkTreeIter, + child: PGtkTreeIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_model_iter_parent".} +proc gtk_tree_model_ref_node*(tree_model: PGtkTreeModel, iter: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_ref_node".} +proc gtk_tree_model_unref_node*(tree_model: PGtkTreeModel, iter: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_unref_node".} +proc gtk_tree_model_foreach*(model: PGtkTreeModel, + func_: TGtkTreeModelForeachFunc, + user_data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_foreach".} +proc gtk_tree_model_row_changed*(tree_model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_row_changed".} +proc gtk_tree_model_row_inserted*(tree_model: PGtkTreeModel, path: PGtkTreePath, + iter: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_row_inserted".} +proc gtk_tree_model_row_has_child_toggled*(tree_model: PGtkTreeModel, + path: PGtkTreePath, iter: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_row_has_child_toggled".} +proc gtk_tree_model_row_deleted*(tree_model: PGtkTreeModel, path: PGtkTreePath){. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_row_deleted".} +proc gtk_tree_model_rows_reordered*(tree_model: PGtkTreeModel, + path: PGtkTreePath, iter: PGtkTreeIter, + new_order: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_rows_reordered".} +const + GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID* = - (1) + +proc GTK_TYPE_TREE_SORTABLE*(): GType +proc GTK_TREE_SORTABLE*(obj: pointer): PGtkTreeSortable +proc GTK_TREE_SORTABLE_CLASS*(obj: pointer): PGtkTreeSortableIface +proc GTK_IS_TREE_SORTABLE*(obj: pointer): bool +proc GTK_TREE_SORTABLE_GET_IFACE*(obj: pointer): PGtkTreeSortableIface +proc gtk_tree_sortable_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_sortable_get_type".} +proc gtk_tree_sortable_sort_column_changed*(sortable: PGtkTreeSortable){.cdecl, + dynlib: gtklib, importc: "gtk_tree_sortable_sort_column_changed".} +proc gtk_tree_sortable_get_sort_column_id*(sortable: PGtkTreeSortable, + sort_column_id: Pgint, order: PGtkSortType): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_sortable_get_sort_column_id".} +proc gtk_tree_sortable_set_sort_column_id*(sortable: PGtkTreeSortable, + sort_column_id: gint, order: TGtkSortType){.cdecl, dynlib: gtklib, + importc: "gtk_tree_sortable_set_sort_column_id".} +proc gtk_tree_sortable_set_sort_func*(sortable: PGtkTreeSortable, + sort_column_id: gint, + sort_func: TGtkTreeIterCompareFunc, + user_data: gpointer, + destroy: TGtkDestroyNotify){.cdecl, + dynlib: gtklib, importc: "gtk_tree_sortable_set_sort_func".} +proc gtk_tree_sortable_set_default_sort_func*(sortable: PGtkTreeSortable, + sort_func: TGtkTreeIterCompareFunc, user_data: gpointer, + destroy: TGtkDestroyNotify){.cdecl, dynlib: gtklib, importc: "gtk_tree_sortable_set_default_sort_func".} +proc gtk_tree_sortable_has_default_sort_func*(sortable: PGtkTreeSortable): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_sortable_has_default_sort_func".} +proc GTK_TYPE_TREE_MODEL_SORT*(): GType +proc GTK_TREE_MODEL_SORT*(obj: pointer): PGtkTreeModelSort +proc GTK_TREE_MODEL_SORT_CLASS*(klass: pointer): PGtkTreeModelSortClass +proc GTK_IS_TREE_MODEL_SORT*(obj: pointer): bool +proc GTK_IS_TREE_MODEL_SORT_CLASS*(klass: pointer): bool +proc GTK_TREE_MODEL_SORT_GET_CLASS*(obj: pointer): PGtkTreeModelSortClass +proc gtk_tree_model_sort_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_sort_get_type".} +proc gtk_tree_model_sort_new_with_model*(child_model: PGtkTreeModel): PGtkTreeModel{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_sort_new_with_model".} +proc gtk_tree_model_sort_get_model*(tree_model: PGtkTreeModelSort): PGtkTreeModel{. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_sort_get_model".} +proc gtk_tree_model_sort_convert_child_path_to_path*( + tree_model_sort: PGtkTreeModelSort, child_path: PGtkTreePath): PGtkTreePath{. + cdecl, dynlib: gtklib, + importc: "gtk_tree_model_sort_convert_child_path_to_path".} +proc gtk_tree_model_sort_convert_child_iter_to_iter*( + tree_model_sort: PGtkTreeModelSort, sort_iter: PGtkTreeIter, + child_iter: PGtkTreeIter){.cdecl, dynlib: gtklib, importc: "gtk_tree_model_sort_convert_child_iter_to_iter".} +proc gtk_tree_model_sort_convert_path_to_child_path*( + tree_model_sort: PGtkTreeModelSort, sorted_path: PGtkTreePath): PGtkTreePath{. + cdecl, dynlib: gtklib, + importc: "gtk_tree_model_sort_convert_path_to_child_path".} +proc gtk_tree_model_sort_convert_iter_to_child_iter*( + tree_model_sort: PGtkTreeModelSort, child_iter: PGtkTreeIter, + sorted_iter: PGtkTreeIter){.cdecl, dynlib: gtklib, importc: "gtk_tree_model_sort_convert_iter_to_child_iter".} +proc gtk_tree_model_sort_reset_default_sort_func*( + tree_model_sort: PGtkTreeModelSort){.cdecl, dynlib: gtklib, + importc: "gtk_tree_model_sort_reset_default_sort_func".} +proc gtk_tree_model_sort_clear_cache*(tree_model_sort: PGtkTreeModelSort){. + cdecl, dynlib: gtklib, importc: "gtk_tree_model_sort_clear_cache".} +const + bm_TGtkListStore_columns_dirty* = 0x00000001 + bp_TGtkListStore_columns_dirty* = 0 + +proc GTK_TYPE_LIST_STORE*(): GType +proc GTK_LIST_STORE*(obj: pointer): PGtkListStore +proc GTK_LIST_STORE_CLASS*(klass: pointer): PGtkListStoreClass +proc GTK_IS_LIST_STORE*(obj: pointer): bool +proc GTK_IS_LIST_STORE_CLASS*(klass: pointer): bool +proc GTK_LIST_STORE_GET_CLASS*(obj: pointer): PGtkListStoreClass +proc columns_dirty*(a: var TGtkListStore): guint +proc set_columns_dirty*(a: var TGtkListStore, `columns_dirty`: guint) +proc gtk_list_store_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_list_store_get_type".} +proc gtk_list_store_newv*(n_columns: gint, types: PGType): PGtkListStore{.cdecl, + dynlib: gtklib, importc: "gtk_list_store_newv".} +proc gtk_list_store_set_column_types*(list_store: PGtkListStore, + n_columns: gint, types: PGType){.cdecl, + dynlib: gtklib, importc: "gtk_list_store_set_column_types".} +proc gtk_list_store_set_value*(list_store: PGtkListStore, iter: PGtkTreeIter, + column: gint, value: PGValue){.cdecl, + dynlib: gtklib, importc: "gtk_list_store_set_value".} +proc gtk_list_store_remove*(list_store: PGtkListStore, iter: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_list_store_remove".} +proc gtk_list_store_insert*(list_store: PGtkListStore, iter: PGtkTreeIter, + position: gint){.cdecl, dynlib: gtklib, + importc: "gtk_list_store_insert".} +proc gtk_list_store_insert_before*(list_store: PGtkListStore, + iter: PGtkTreeIter, sibling: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_list_store_insert_before".} +proc gtk_list_store_insert_after*(list_store: PGtkListStore, iter: PGtkTreeIter, + sibling: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_list_store_insert_after".} +proc gtk_list_store_prepend*(list_store: PGtkListStore, iter: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_list_store_prepend".} +proc gtk_list_store_append*(list_store: PGtkListStore, iter: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_list_store_append".} +proc gtk_list_store_clear*(list_store: PGtkListStore){.cdecl, dynlib: gtklib, + importc: "gtk_list_store_clear".} + +when false: + const + GTK_PRIORITY_RESIZE* = G_PRIORITY_HIGH_IDLE + 10 + +proc gtk_check_version*(required_major: guint, required_minor: guint, + required_micro: guint): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_check_version".} +proc gtk_disable_setlocale*(){.cdecl, dynlib: gtklib, + importc: "gtk_disable_setlocale".} +proc gtk_set_locale*(): cstring{.cdecl, dynlib: gtklib, importc: "gtk_set_locale".} +proc gtk_get_default_language*(): PPangoLanguage{.cdecl, dynlib: gtklib, + importc: "gtk_get_default_language".} +proc gtk_events_pending*(): gint{.cdecl, dynlib: gtklib, + importc: "gtk_events_pending".} +proc gtk_main_do_event*(event: PGdkEvent){.cdecl, dynlib: gtklib, + importc: "gtk_main_do_event".} +proc gtk_main*(){.cdecl, dynlib: gtklib, importc: "gtk_main".} +proc gtk_init*(argc, argv: pointer){.cdecl, dynlib: gtklib, importc: "gtk_init".} +proc gtk_main_level*(): guint{.cdecl, dynlib: gtklib, importc: "gtk_main_level".} +proc gtk_main_quit*(){.cdecl, dynlib: gtklib, importc: "gtk_main_quit".} +proc gtk_main_iteration*(): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_main_iteration".} +proc gtk_main_iteration_do*(blocking: gboolean): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_main_iteration_do".} +proc gtk_true*(): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_true".} +proc gtk_false*(): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_false".} +proc gtk_grab_add*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_grab_add".} +proc gtk_grab_get_current*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_grab_get_current".} +proc gtk_grab_remove*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_grab_remove".} +proc gtk_init_add*(`function`: TGtkFunction, data: gpointer){.cdecl, + dynlib: gtklib, importc: "gtk_init_add".} +proc gtk_quit_add_destroy*(main_level: guint, anObject: PGtkObject){.cdecl, + dynlib: gtklib, importc: "gtk_quit_add_destroy".} +proc gtk_quit_add*(main_level: guint, `function`: TGtkFunction, data: gpointer): guint{. + cdecl, dynlib: gtklib, importc: "gtk_quit_add".} +proc gtk_quit_add_full*(main_level: guint, `function`: TGtkFunction, + marshal: TGtkCallbackMarshal, data: gpointer, + destroy: TGtkDestroyNotify): guint{.cdecl, + dynlib: gtklib, importc: "gtk_quit_add_full".} +proc gtk_quit_remove*(quit_handler_id: guint){.cdecl, dynlib: gtklib, + importc: "gtk_quit_remove".} +proc gtk_quit_remove_by_data*(data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_quit_remove_by_data".} +proc gtk_timeout_add*(interval: guint32, `function`: TGtkFunction, + data: gpointer): guint{.cdecl, dynlib: gtklib, + importc: "gtk_timeout_add".} +proc gtk_timeout_add_full*(interval: guint32, `function`: TGtkFunction, + marshal: TGtkCallbackMarshal, data: gpointer, + destroy: TGtkDestroyNotify): guint{.cdecl, + dynlib: gtklib, importc: "gtk_timeout_add_full".} +proc gtk_timeout_remove*(timeout_handler_id: guint){.cdecl, dynlib: gtklib, + importc: "gtk_timeout_remove".} +proc gtk_idle_add*(`function`: TGtkFunction, data: gpointer): guint{.cdecl, + dynlib: gtklib, importc: "gtk_idle_add".} +proc gtk_idle_add_priority*(priority: gint, `function`: TGtkFunction, + data: gpointer): guint{.cdecl, dynlib: gtklib, + importc: "gtk_idle_add_priority".} +proc gtk_idle_add_full*(priority: gint, `function`: TGtkFunction, + marshal: TGtkCallbackMarshal, data: gpointer, + destroy: TGtkDestroyNotify): guint{.cdecl, + dynlib: gtklib, importc: "gtk_idle_add_full".} +proc gtk_idle_remove*(idle_handler_id: guint){.cdecl, dynlib: gtklib, + importc: "gtk_idle_remove".} +proc gtk_idle_remove_by_data*(data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_idle_remove_by_data".} +proc gtk_input_add_full*(source: gint, condition: TGdkInputCondition, + `function`: TGdkInputFunction, + marshal: TGtkCallbackMarshal, data: gpointer, + destroy: TGtkDestroyNotify): guint{.cdecl, + dynlib: gtklib, importc: "gtk_input_add_full".} +proc gtk_input_remove*(input_handler_id: guint){.cdecl, dynlib: gtklib, + importc: "gtk_input_remove".} +proc gtk_key_snooper_install*(snooper: TGtkKeySnoopFunc, func_data: gpointer): guint{. + cdecl, dynlib: gtklib, importc: "gtk_key_snooper_install".} +proc gtk_key_snooper_remove*(snooper_handler_id: guint){.cdecl, dynlib: gtklib, + importc: "gtk_key_snooper_remove".} +proc gtk_get_current_event*(): PGdkEvent{.cdecl, dynlib: gtklib, + importc: "gtk_get_current_event".} +proc gtk_get_current_event_time*(): guint32{.cdecl, dynlib: gtklib, + importc: "gtk_get_current_event_time".} +proc gtk_get_current_event_state*(state: PGdkModifierType): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_get_current_event_state".} +proc gtk_get_event_widget*(event: PGdkEvent): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_get_event_widget".} +proc gtk_propagate_event*(widget: PGtkWidget, event: PGdkEvent){.cdecl, + dynlib: gtklib, importc: "gtk_propagate_event".} +proc gtk_boolean_handled_accumulator*(ihint: PGSignalInvocationHint, + return_accu: PGValue, + handler_return: PGValue, dummy: gpointer): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_boolean_handled_accumulator".} +proc gtk_find_module*(name: cstring, thetype: cstring): cstring{.cdecl, + dynlib: gtklib, importc: "_gtk_find_module".} +proc gtk_get_module_path*(thetype: cstring): PPgchar{.cdecl, dynlib: gtklib, + importc: "_gtk_get_module_path".} +proc GTK_TYPE_MENU_BAR*(): GType +proc GTK_MENU_BAR*(obj: pointer): PGtkMenuBar +proc GTK_MENU_BAR_CLASS*(klass: pointer): PGtkMenuBarClass +proc GTK_IS_MENU_BAR*(obj: pointer): bool +proc GTK_IS_MENU_BAR_CLASS*(klass: pointer): bool +proc GTK_MENU_BAR_GET_CLASS*(obj: pointer): PGtkMenuBarClass +proc gtk_menu_bar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_menu_bar_get_type".} +proc gtk_menu_bar_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_menu_bar_new".} +proc gtk_menu_bar_cycle_focus*(menubar: PGtkMenuBar, dir: TGtkDirectionType){. + cdecl, dynlib: gtklib, importc: "_gtk_menu_bar_cycle_focus".} +proc GTK_TYPE_MESSAGE_DIALOG*(): GType +proc GTK_MESSAGE_DIALOG*(obj: pointer): PGtkMessageDialog +proc GTK_MESSAGE_DIALOG_CLASS*(klass: pointer): PGtkMessageDialogClass +proc GTK_IS_MESSAGE_DIALOG*(obj: pointer): bool +proc GTK_IS_MESSAGE_DIALOG_CLASS*(klass: pointer): bool +proc GTK_MESSAGE_DIALOG_GET_CLASS*(obj: pointer): PGtkMessageDialogClass +proc gtk_message_dialog_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_message_dialog_get_type".} +const + bm_TGtkNotebook_show_tabs* = 0x00000001 + bp_TGtkNotebook_show_tabs* = 0 + bm_TGtkNotebook_homogeneous* = 0x00000002 + bp_TGtkNotebook_homogeneous* = 1 + bm_TGtkNotebook_show_border* = 0x00000004 + bp_TGtkNotebook_show_border* = 2 + bm_TGtkNotebook_tab_pos* = 0x00000018 + bp_TGtkNotebook_tab_pos* = 3 + bm_TGtkNotebook_scrollable* = 0x00000020 + bp_TGtkNotebook_scrollable* = 5 + bm_TGtkNotebook_in_child* = 0x000000C0 + bp_TGtkNotebook_in_child* = 6 + bm_TGtkNotebook_click_child* = 0x00000300 + bp_TGtkNotebook_click_child* = 8 + bm_TGtkNotebook_button* = 0x00000C00 + bp_TGtkNotebook_button* = 10 + bm_TGtkNotebook_need_timer* = 0x00001000 + bp_TGtkNotebook_need_timer* = 12 + bm_TGtkNotebook_child_has_focus* = 0x00002000 + bp_TGtkNotebook_child_has_focus* = 13 + bm_TGtkNotebook_have_visible_child* = 0x00004000 + bp_TGtkNotebook_have_visible_child* = 14 + bm_TGtkNotebook_focus_out* = 0x00008000 + bp_TGtkNotebook_focus_out* = 15 + +proc GTK_TYPE_NOTEBOOK*(): GType +proc GTK_NOTEBOOK*(obj: pointer): PGtkNotebook +proc GTK_NOTEBOOK_CLASS*(klass: pointer): PGtkNotebookClass +proc GTK_IS_NOTEBOOK*(obj: pointer): bool +proc GTK_IS_NOTEBOOK_CLASS*(klass: pointer): bool +proc GTK_NOTEBOOK_GET_CLASS*(obj: pointer): PGtkNotebookClass +proc show_tabs*(a: var TGtkNotebook): guint +proc set_show_tabs*(a: var TGtkNotebook, `show_tabs`: guint) +proc homogeneous*(a: var TGtkNotebook): guint +proc set_homogeneous*(a: var TGtkNotebook, `homogeneous`: guint) +proc show_border*(a: var TGtkNotebook): guint +proc set_show_border*(a: var TGtkNotebook, `show_border`: guint) +proc tab_pos*(a: var TGtkNotebook): guint +proc set_tab_pos*(a: var TGtkNotebook, `tab_pos`: guint) +proc scrollable*(a: var TGtkNotebook): guint +proc set_scrollable*(a: var TGtkNotebook, `scrollable`: guint) +proc in_child*(a: var TGtkNotebook): guint +proc set_in_child*(a: var TGtkNotebook, `in_child`: guint) +proc click_child*(a: var TGtkNotebook): guint +proc set_click_child*(a: var TGtkNotebook, `click_child`: guint) +proc button*(a: var TGtkNotebook): guint +proc set_button*(a: var TGtkNotebook, `button`: guint) +proc need_timer*(a: var TGtkNotebook): guint +proc set_need_timer*(a: var TGtkNotebook, `need_timer`: guint) +proc child_has_focus*(a: var TGtkNotebook): guint +proc set_child_has_focus*(a: var TGtkNotebook, `child_has_focus`: guint) +proc have_visible_child*(a: var TGtkNotebook): guint +proc set_have_visible_child*(a: var TGtkNotebook, `have_visible_child`: guint) +proc focus_out*(a: var TGtkNotebook): guint +proc set_focus_out*(a: var TGtkNotebook, `focus_out`: guint) +proc gtk_notebook_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_notebook_get_type".} +proc gtk_notebook_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_notebook_new".} +proc gtk_notebook_append_page*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget): gint{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_append_page".} +proc gtk_notebook_append_page_menu*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget, + menu_label: PGtkWidget): gint{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_append_page_menu".} +proc gtk_notebook_prepend_page*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget): gint{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_prepend_page".} +proc gtk_notebook_prepend_page_menu*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget, + menu_label: PGtkWidget): gint{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_prepend_page_menu".} +proc gtk_notebook_insert_page*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget, position: gint): gint{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_insert_page".} +proc gtk_notebook_insert_page_menu*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget, + menu_label: PGtkWidget, position: gint): gint{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_insert_page_menu".} +proc gtk_notebook_remove_page*(notebook: PGtkNotebook, page_num: gint){.cdecl, + dynlib: gtklib, importc: "gtk_notebook_remove_page".} +proc gtk_notebook_get_current_page*(notebook: PGtkNotebook): gint{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_get_current_page".} +proc gtk_notebook_get_nth_page*(notebook: PGtkNotebook, page_num: gint): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_get_nth_page".} +proc gtk_notebook_page_num*(notebook: PGtkNotebook, child: PGtkWidget): gint{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_page_num".} +proc gtk_notebook_set_current_page*(notebook: PGtkNotebook, page_num: gint){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_current_page".} +proc gtk_notebook_next_page*(notebook: PGtkNotebook){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_next_page".} +proc gtk_notebook_prev_page*(notebook: PGtkNotebook){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_prev_page".} +proc gtk_notebook_set_show_border*(notebook: PGtkNotebook, show_border: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_show_border".} +proc gtk_notebook_get_show_border*(notebook: PGtkNotebook): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_get_show_border".} +proc gtk_notebook_set_show_tabs*(notebook: PGtkNotebook, show_tabs: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_show_tabs".} +proc gtk_notebook_get_show_tabs*(notebook: PGtkNotebook): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_get_show_tabs".} +proc gtk_notebook_set_tab_pos*(notebook: PGtkNotebook, pos: TGtkPositionType){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_tab_pos".} +proc gtk_notebook_get_tab_pos*(notebook: PGtkNotebook): TGtkPositionType{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_get_tab_pos".} +proc gtk_notebook_set_scrollable*(notebook: PGtkNotebook, scrollable: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_scrollable".} +proc gtk_notebook_get_scrollable*(notebook: PGtkNotebook): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_notebook_get_scrollable".} +proc gtk_notebook_popup_enable*(notebook: PGtkNotebook){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_popup_enable".} +proc gtk_notebook_popup_disable*(notebook: PGtkNotebook){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_popup_disable".} +proc gtk_notebook_get_tab_label*(notebook: PGtkNotebook, child: PGtkWidget): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_get_tab_label".} +proc gtk_notebook_set_tab_label*(notebook: PGtkNotebook, child: PGtkWidget, + tab_label: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_set_tab_label".} +proc gtk_notebook_set_tab_label_text*(notebook: PGtkNotebook, child: PGtkWidget, + tab_text: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_set_tab_label_text".} +proc gtk_notebook_get_tab_label_text*(notebook: PGtkNotebook, child: PGtkWidget): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_get_tab_label_text".} +proc gtk_notebook_get_menu_label*(notebook: PGtkNotebook, child: PGtkWidget): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_get_menu_label".} +proc gtk_notebook_set_menu_label*(notebook: PGtkNotebook, child: PGtkWidget, + menu_label: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_notebook_set_menu_label".} +proc gtk_notebook_set_menu_label_text*(notebook: PGtkNotebook, + child: PGtkWidget, menu_text: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_menu_label_text".} +proc gtk_notebook_get_menu_label_text*(notebook: PGtkNotebook, child: PGtkWidget): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_notebook_get_menu_label_text".} +proc gtk_notebook_query_tab_label_packing*(notebook: PGtkNotebook, + child: PGtkWidget, expand: Pgboolean, fill: Pgboolean, + pack_type: PGtkPackType){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_query_tab_label_packing".} +proc gtk_notebook_set_tab_label_packing*(notebook: PGtkNotebook, + child: PGtkWidget, expand: gboolean, fill: gboolean, pack_type: TGtkPackType){. + cdecl, dynlib: gtklib, importc: "gtk_notebook_set_tab_label_packing".} +proc gtk_notebook_reorder_child*(notebook: PGtkNotebook, child: PGtkWidget, + position: gint){.cdecl, dynlib: gtklib, + importc: "gtk_notebook_reorder_child".} +const + bm_TGtkOldEditable_has_selection* = 0x00000001 + bp_TGtkOldEditable_has_selection* = 0 + bm_TGtkOldEditable_editable* = 0x00000002 + bp_TGtkOldEditable_editable* = 1 + bm_TGtkOldEditable_visible* = 0x00000004 + bp_TGtkOldEditable_visible* = 2 + +proc GTK_TYPE_OLD_EDITABLE*(): GType +proc GTK_OLD_EDITABLE*(obj: pointer): PGtkOldEditable +proc GTK_OLD_EDITABLE_CLASS*(klass: pointer): PGtkOldEditableClass +proc GTK_IS_OLD_EDITABLE*(obj: pointer): bool +proc GTK_IS_OLD_EDITABLE_CLASS*(klass: pointer): bool +proc GTK_OLD_EDITABLE_GET_CLASS*(obj: pointer): PGtkOldEditableClass +proc has_selection*(a: var TGtkOldEditable): guint +proc set_has_selection*(a: var TGtkOldEditable, `has_selection`: guint) +proc editable*(a: var TGtkOldEditable): guint +proc set_editable*(a: var TGtkOldEditable, `editable`: guint) +proc visible*(a: var TGtkOldEditable): guint +proc set_visible*(a: var TGtkOldEditable, `visible`: guint) +proc gtk_old_editable_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_old_editable_get_type".} +proc gtk_old_editable_claim_selection*(old_editable: PGtkOldEditable, + claim: gboolean, time: guint32){.cdecl, + dynlib: gtklib, importc: "gtk_old_editable_claim_selection".} +proc gtk_old_editable_changed*(old_editable: PGtkOldEditable){.cdecl, + dynlib: gtklib, importc: "gtk_old_editable_changed".} +proc GTK_TYPE_OPTION_MENU*(): GType +proc GTK_OPTION_MENU*(obj: pointer): PGtkOptionMenu +proc GTK_OPTION_MENU_CLASS*(klass: pointer): PGtkOptionMenuClass +proc GTK_IS_OPTION_MENU*(obj: pointer): bool +proc GTK_IS_OPTION_MENU_CLASS*(klass: pointer): bool +proc GTK_OPTION_MENU_GET_CLASS*(obj: pointer): PGtkOptionMenuClass +proc gtk_option_menu_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_option_menu_get_type".} +proc gtk_option_menu_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_option_menu_new".} +proc gtk_option_menu_get_menu*(option_menu: PGtkOptionMenu): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_option_menu_get_menu".} +proc gtk_option_menu_set_menu*(option_menu: PGtkOptionMenu, menu: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_option_menu_set_menu".} +proc gtk_option_menu_remove_menu*(option_menu: PGtkOptionMenu){.cdecl, + dynlib: gtklib, importc: "gtk_option_menu_remove_menu".} +proc gtk_option_menu_get_history*(option_menu: PGtkOptionMenu): gint{.cdecl, + dynlib: gtklib, importc: "gtk_option_menu_get_history".} +proc gtk_option_menu_set_history*(option_menu: PGtkOptionMenu, index: guint){. + cdecl, dynlib: gtklib, importc: "gtk_option_menu_set_history".} +const + bm_TGtkPixmap_build_insensitive* = 0x00000001 + bp_TGtkPixmap_build_insensitive* = 0 + +proc GTK_TYPE_PIXMAP*(): GType +proc GTK_PIXMAP*(obj: pointer): PGtkPixmap +proc GTK_PIXMAP_CLASS*(klass: pointer): PGtkPixmapClass +proc GTK_IS_PIXMAP*(obj: pointer): bool +proc GTK_IS_PIXMAP_CLASS*(klass: pointer): bool +proc GTK_PIXMAP_GET_CLASS*(obj: pointer): PGtkPixmapClass +proc build_insensitive*(a: var TGtkPixmap): guint +proc set_build_insensitive*(a: var TGtkPixmap, `build_insensitive`: guint) +proc gtk_pixmap_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_pixmap_get_type".} +proc gtk_pixmap_new*(pixmap: PGdkPixmap, mask: PGdkBitmap): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_pixmap_new".} +proc gtk_pixmap_set*(pixmap: PGtkPixmap, val: PGdkPixmap, mask: PGdkBitmap){. + cdecl, dynlib: gtklib, importc: "gtk_pixmap_set".} +proc gtk_pixmap_get*(pixmap: PGtkPixmap, val: var PGdkPixmap, + mask: var PGdkBitmap){.cdecl, dynlib: gtklib, + importc: "gtk_pixmap_get".} +proc gtk_pixmap_set_build_insensitive*(pixmap: PGtkPixmap, build: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_pixmap_set_build_insensitive".} +const + bm_TGtkPlug_same_app* = 0x00000001 + bp_TGtkPlug_same_app* = 0 + +proc GTK_TYPE_PLUG*(): GType +proc GTK_PLUG*(obj: pointer): PGtkPlug +proc GTK_PLUG_CLASS*(klass: pointer): PGtkPlugClass +proc GTK_IS_PLUG*(obj: pointer): bool +proc GTK_IS_PLUG_CLASS*(klass: pointer): bool +proc GTK_PLUG_GET_CLASS*(obj: pointer): PGtkPlugClass +proc same_app*(a: var TGtkPlug): guint +proc set_same_app*(a: var TGtkPlug, `same_app`: guint) +proc gtk_plug_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_plug_get_type".} +proc gtk_plug_construct_for_display*(plug: PGtkPlug, display: PGdkDisplay, + socket_id: TGdkNativeWindow){.cdecl, + dynlib: gtklib, importc: "gtk_plug_construct_for_display".} +proc gtk_plug_new_for_display*(display: PGdkDisplay, socket_id: TGdkNativeWindow): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_plug_new_for_display".} +proc gtk_plug_get_id*(plug: PGtkPlug): TGdkNativeWindow{.cdecl, dynlib: gtklib, + importc: "gtk_plug_get_id".} +proc gtk_plug_add_to_socket*(plug: PGtkPlug, socket: PGtkSocket){.cdecl, + dynlib: gtklib, importc: "_gtk_plug_add_to_socket".} +proc gtk_plug_remove_from_socket*(plug: PGtkPlug, socket: PGtkSocket){.cdecl, + dynlib: gtklib, importc: "_gtk_plug_remove_from_socket".} +const + bm_TGtkPreview_type* = 0x00000001 + bp_TGtkPreview_type* = 0 + bm_TGtkPreview_expand* = 0x00000002 + bp_TGtkPreview_expand* = 1 + +proc GTK_TYPE_PREVIEW*(): GType +proc GTK_PREVIEW*(obj: pointer): PGtkPreview +proc GTK_PREVIEW_CLASS*(klass: pointer): PGtkPreviewClass +proc GTK_IS_PREVIEW*(obj: pointer): bool +proc GTK_IS_PREVIEW_CLASS*(klass: pointer): bool +proc GTK_PREVIEW_GET_CLASS*(obj: pointer): PGtkPreviewClass +proc get_type*(a: var TGtkPreview): guint +proc set_type*(a: var TGtkPreview, `type`: guint) +proc get_expand*(a: var TGtkPreview): guint +proc set_expand*(a: var TGtkPreview, `expand`: guint) +proc gtk_preview_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_preview_get_type".} +proc gtk_preview_uninit*(){.cdecl, dynlib: gtklib, importc: "gtk_preview_uninit".} +proc gtk_preview_new*(thetype: TGtkPreviewClass): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_preview_new".} +proc gtk_preview_size*(preview: PGtkPreview, width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "gtk_preview_size".} +proc gtk_preview_put*(preview: PGtkPreview, window: PGdkWindow, gc: PGdkGC, + srcx: gint, srcy: gint, destx: gint, desty: gint, + width: gint, height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_preview_put".} +proc gtk_preview_draw_row*(preview: PGtkPreview, data: Pguchar, x: gint, + y: gint, w: gint){.cdecl, dynlib: gtklib, + importc: "gtk_preview_draw_row".} +proc gtk_preview_set_expand*(preview: PGtkPreview, expand: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_preview_set_expand".} +proc gtk_preview_set_gamma*(gamma: float64){.cdecl, dynlib: gtklib, + importc: "gtk_preview_set_gamma".} +proc gtk_preview_set_color_cube*(nred_shades: guint, ngreen_shades: guint, + nblue_shades: guint, ngray_shades: guint){. + cdecl, dynlib: gtklib, importc: "gtk_preview_set_color_cube".} +proc gtk_preview_set_install_cmap*(install_cmap: gint){.cdecl, dynlib: gtklib, + importc: "gtk_preview_set_install_cmap".} +proc gtk_preview_set_reserved*(nreserved: gint){.cdecl, dynlib: gtklib, + importc: "gtk_preview_set_reserved".} +proc gtk_preview_set_dither*(preview: PGtkPreview, dither: TGdkRgbDither){. + cdecl, dynlib: gtklib, importc: "gtk_preview_set_dither".} +proc gtk_preview_get_info*(): PGtkPreviewInfo{.cdecl, dynlib: gtklib, + importc: "gtk_preview_get_info".} +proc gtk_preview_reset*(){.cdecl, dynlib: gtklib, importc: "gtk_preview_reset".} +const + bm_TGtkProgress_show_text* = 0x00000001 + bp_TGtkProgress_show_text* = 0 + bm_TGtkProgress_activity_mode* = 0x00000002 + bp_TGtkProgress_activity_mode* = 1 + bm_TGtkProgress_use_text_format* = 0x00000004 + bp_TGtkProgress_use_text_format* = 2 + +proc show_text*(a: var TGtkProgress): guint +proc set_show_text*(a: var TGtkProgress, `show_text`: guint) +proc activity_mode*(a: var TGtkProgress): guint +proc set_activity_mode*(a: var TGtkProgress, `activity_mode`: guint) +proc use_text_format*(a: var TGtkProgress): guint +proc set_use_text_format*(a: var TGtkProgress, `use_text_format`: guint) +const + bm_TGtkProgressBar_activity_dir* = 0x00000001 + bp_TGtkProgressBar_activity_dir* = 0 + +proc GTK_TYPE_PROGRESS_BAR*(): GType +proc GTK_PROGRESS_BAR*(obj: pointer): PGtkProgressBar +proc GTK_PROGRESS_BAR_CLASS*(klass: pointer): PGtkProgressBarClass +proc GTK_IS_PROGRESS_BAR*(obj: pointer): bool +proc GTK_IS_PROGRESS_BAR_CLASS*(klass: pointer): bool +proc GTK_PROGRESS_BAR_GET_CLASS*(obj: pointer): PGtkProgressBarClass +proc activity_dir*(a: var TGtkProgressBar): guint +proc set_activity_dir*(a: var TGtkProgressBar, `activity_dir`: guint) +proc gtk_progress_bar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_progress_bar_get_type".} +proc gtk_progress_bar_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_progress_bar_new".} +proc gtk_progress_bar_pulse*(pbar: PGtkProgressBar){.cdecl, dynlib: gtklib, + importc: "gtk_progress_bar_pulse".} +proc gtk_progress_bar_set_text*(pbar: PGtkProgressBar, text: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_progress_bar_set_text".} +proc gtk_progress_bar_set_fraction*(pbar: PGtkProgressBar, fraction: gdouble){. + cdecl, dynlib: gtklib, importc: "gtk_progress_bar_set_fraction".} +proc gtk_progress_bar_set_pulse_step*(pbar: PGtkProgressBar, fraction: gdouble){. + cdecl, dynlib: gtklib, importc: "gtk_progress_bar_set_pulse_step".} +proc gtk_progress_bar_set_orientation*(pbar: PGtkProgressBar, + orientation: TGtkProgressBarOrientation){. + cdecl, dynlib: gtklib, importc: "gtk_progress_bar_set_orientation".} +proc gtk_progress_bar_get_text*(pbar: PGtkProgressBar): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_progress_bar_get_text".} +proc gtk_progress_bar_get_fraction*(pbar: PGtkProgressBar): gdouble{.cdecl, + dynlib: gtklib, importc: "gtk_progress_bar_get_fraction".} +proc gtk_progress_bar_get_pulse_step*(pbar: PGtkProgressBar): gdouble{.cdecl, + dynlib: gtklib, importc: "gtk_progress_bar_get_pulse_step".} +proc gtk_progress_bar_get_orientation*(pbar: PGtkProgressBar): TGtkProgressBarOrientation{. + cdecl, dynlib: gtklib, importc: "gtk_progress_bar_get_orientation".} +proc GTK_TYPE_RADIO_BUTTON*(): GType +proc GTK_RADIO_BUTTON*(obj: pointer): PGtkRadioButton +proc GTK_RADIO_BUTTON_CLASS*(klass: pointer): PGtkRadioButtonClass +proc GTK_IS_RADIO_BUTTON*(obj: pointer): bool +proc GTK_IS_RADIO_BUTTON_CLASS*(klass: pointer): bool +proc GTK_RADIO_BUTTON_GET_CLASS*(obj: pointer): PGtkRadioButtonClass +proc gtk_radio_button_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_radio_button_get_type".} +proc gtk_radio_button_new*(group: PGSList): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_radio_button_new".} +proc gtk_radio_button_new_from_widget*(group: PGtkRadioButton): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_radio_button_new_from_widget".} +proc gtk_radio_button_new_with_label*(group: PGSList, `label`: cstring): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_radio_button_new_with_label".} +proc gtk_radio_button_new_with_label_from_widget*(group: PGtkRadioButton, + `label`: cstring): PGtkWidget{.cdecl, dynlib: gtklib, importc: "gtk_radio_button_new_with_label_from_widget".} +proc gtk_radio_button_new_with_mnemonic*(group: PGSList, `label`: cstring): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_radio_button_new_with_mnemonic".} +proc gtk_radio_button_new_with_mnemonic_from_widget*(group: PGtkRadioButton, + `label`: cstring): PGtkWidget{.cdecl, dynlib: gtklib, importc: "gtk_radio_button_new_with_mnemonic_from_widget".} +proc gtk_radio_button_get_group*(radio_button: PGtkRadioButton): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_radio_button_get_group".} +proc gtk_radio_button_set_group*(radio_button: PGtkRadioButton, group: PGSList){. + cdecl, dynlib: gtklib, importc: "gtk_radio_button_set_group".} +proc GTK_TYPE_RADIO_MENU_ITEM*(): GType +proc GTK_RADIO_MENU_ITEM*(obj: pointer): PGtkRadioMenuItem +proc GTK_RADIO_MENU_ITEM_CLASS*(klass: pointer): PGtkRadioMenuItemClass +proc GTK_IS_RADIO_MENU_ITEM*(obj: pointer): bool +proc GTK_IS_RADIO_MENU_ITEM_CLASS*(klass: pointer): bool +proc GTK_RADIO_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkRadioMenuItemClass +proc gtk_radio_menu_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_radio_menu_item_get_type".} +proc gtk_radio_menu_item_new*(group: PGSList): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_radio_menu_item_new".} +proc gtk_radio_menu_item_new_with_label*(group: PGSList, `label`: cstring): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_radio_menu_item_new_with_label".} +proc gtk_radio_menu_item_new_with_mnemonic*(group: PGSList, `label`: cstring): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_radio_menu_item_new_with_mnemonic".} +proc gtk_radio_menu_item_get_group*(radio_menu_item: PGtkRadioMenuItem): PGSList{. + cdecl, dynlib: gtklib, importc: "gtk_radio_menu_item_get_group".} +proc gtk_radio_menu_item_set_group*(radio_menu_item: PGtkRadioMenuItem, + group: PGSList){.cdecl, dynlib: gtklib, + importc: "gtk_radio_menu_item_set_group".} +const + bm_TGtkScrolledWindow_hscrollbar_policy* = 0x00000003 + bp_TGtkScrolledWindow_hscrollbar_policy* = 0 + bm_TGtkScrolledWindow_vscrollbar_policy* = 0x0000000C + bp_TGtkScrolledWindow_vscrollbar_policy* = 2 + bm_TGtkScrolledWindow_hscrollbar_visible* = 0x00000010 + bp_TGtkScrolledWindow_hscrollbar_visible* = 4 + bm_TGtkScrolledWindow_vscrollbar_visible* = 0x00000020 + bp_TGtkScrolledWindow_vscrollbar_visible* = 5 + bm_TGtkScrolledWindow_window_placement* = 0x000000C0 + bp_TGtkScrolledWindow_window_placement* = 6 + bm_TGtkScrolledWindow_focus_out* = 0x00000100 + bp_TGtkScrolledWindow_focus_out* = 8 + +proc GTK_TYPE_SCROLLED_WINDOW*(): GType +proc GTK_SCROLLED_WINDOW*(obj: pointer): PGtkScrolledWindow +proc GTK_SCROLLED_WINDOW_CLASS*(klass: pointer): PGtkScrolledWindowClass +proc GTK_IS_SCROLLED_WINDOW*(obj: pointer): bool +proc GTK_IS_SCROLLED_WINDOW_CLASS*(klass: pointer): bool +proc GTK_SCROLLED_WINDOW_GET_CLASS*(obj: pointer): PGtkScrolledWindowClass +proc hscrollbar_policy*(a: var TGtkScrolledWindow): guint +proc set_hscrollbar_policy*(a: var TGtkScrolledWindow, + `hscrollbar_policy`: guint) +proc vscrollbar_policy*(a: var TGtkScrolledWindow): guint +proc set_vscrollbar_policy*(a: var TGtkScrolledWindow, + `vscrollbar_policy`: guint) +proc hscrollbar_visible*(a: var TGtkScrolledWindow): guint +proc set_hscrollbar_visible*(a: var TGtkScrolledWindow, + `hscrollbar_visible`: guint) +proc vscrollbar_visible*(a: var TGtkScrolledWindow): guint +proc set_vscrollbar_visible*(a: var TGtkScrolledWindow, + `vscrollbar_visible`: guint) +proc window_placement*(a: var TGtkScrolledWindow): guint +proc set_window_placement*(a: var TGtkScrolledWindow, `window_placement`: guint) +proc focus_out*(a: var TGtkScrolledWindow): guint +proc set_focus_out*(a: var TGtkScrolledWindow, `focus_out`: guint) +proc gtk_scrolled_window_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_scrolled_window_get_type".} +proc gtk_scrolled_window_new*(hadjustment: PGtkAdjustment, + vadjustment: PGtkAdjustment): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_scrolled_window_new".} +proc gtk_scrolled_window_set_hadjustment*(scrolled_window: PGtkScrolledWindow, + hadjustment: PGtkAdjustment){.cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_set_hadjustment".} +proc gtk_scrolled_window_set_vadjustment*(scrolled_window: PGtkScrolledWindow, + hadjustment: PGtkAdjustment){.cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_set_vadjustment".} +proc gtk_scrolled_window_get_hadjustment*(scrolled_window: PGtkScrolledWindow): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_get_hadjustment".} +proc gtk_scrolled_window_get_vadjustment*(scrolled_window: PGtkScrolledWindow): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_get_vadjustment".} +proc gtk_scrolled_window_set_policy*(scrolled_window: PGtkScrolledWindow, + hscrollbar_policy: TGtkPolicyType, + vscrollbar_policy: TGtkPolicyType){.cdecl, + dynlib: gtklib, importc: "gtk_scrolled_window_set_policy".} +proc gtk_scrolled_window_get_policy*(scrolled_window: PGtkScrolledWindow, + hscrollbar_policy: PGtkPolicyType, + vscrollbar_policy: PGtkPolicyType){.cdecl, + dynlib: gtklib, importc: "gtk_scrolled_window_get_policy".} +proc gtk_scrolled_window_set_placement*(scrolled_window: PGtkScrolledWindow, + window_placement: TGtkCornerType){. + cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_set_placement".} +proc gtk_scrolled_window_get_placement*(scrolled_window: PGtkScrolledWindow): TGtkCornerType{. + cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_get_placement".} +proc gtk_scrolled_window_set_shadow_type*(scrolled_window: PGtkScrolledWindow, + thetype: TGtkShadowType){.cdecl, dynlib: gtklib, + importc: "gtk_scrolled_window_set_shadow_type".} +proc gtk_scrolled_window_get_shadow_type*(scrolled_window: PGtkScrolledWindow): TGtkShadowType{. + cdecl, dynlib: gtklib, importc: "gtk_scrolled_window_get_shadow_type".} +proc gtk_scrolled_window_add_with_viewport*(scrolled_window: PGtkScrolledWindow, + child: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_scrolled_window_add_with_viewport".} +proc GTK_TYPE_SELECTION_DATA*(): GType +proc gtk_target_list_new*(targets: PGtkTargetEntry, ntargets: guint): PGtkTargetList{. + cdecl, dynlib: gtklib, importc: "gtk_target_list_new".} +proc gtk_target_list_ref*(list: PGtkTargetList){.cdecl, dynlib: gtklib, + importc: "gtk_target_list_ref".} +proc gtk_target_list_unref*(list: PGtkTargetList){.cdecl, dynlib: gtklib, + importc: "gtk_target_list_unref".} +proc gtk_target_list_add*(list: PGtkTargetList, target: TGdkAtom, flags: guint, + info: guint){.cdecl, dynlib: gtklib, + importc: "gtk_target_list_add".} +proc gtk_target_list_add_table*(list: PGtkTargetList, targets: PGtkTargetEntry, + ntargets: guint){.cdecl, dynlib: gtklib, + importc: "gtk_target_list_add_table".} +proc gtk_target_list_remove*(list: PGtkTargetList, target: TGdkAtom){.cdecl, + dynlib: gtklib, importc: "gtk_target_list_remove".} +proc gtk_target_list_find*(list: PGtkTargetList, target: TGdkAtom, info: Pguint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_target_list_find".} +proc gtk_selection_owner_set*(widget: PGtkWidget, selection: TGdkAtom, + time: guint32): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_selection_owner_set".} +proc gtk_selection_owner_set_for_display*(display: PGdkDisplay, + widget: PGtkWidget, selection: TGdkAtom, time: guint32): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_selection_owner_set_for_display".} +proc gtk_selection_add_target*(widget: PGtkWidget, selection: TGdkAtom, + target: TGdkAtom, info: guint){.cdecl, + dynlib: gtklib, importc: "gtk_selection_add_target".} +proc gtk_selection_add_targets*(widget: PGtkWidget, selection: TGdkAtom, + targets: PGtkTargetEntry, ntargets: guint){. + cdecl, dynlib: gtklib, importc: "gtk_selection_add_targets".} +proc gtk_selection_clear_targets*(widget: PGtkWidget, selection: TGdkAtom){. + cdecl, dynlib: gtklib, importc: "gtk_selection_clear_targets".} +proc gtk_selection_convert*(widget: PGtkWidget, selection: TGdkAtom, + target: TGdkAtom, time: guint32): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_selection_convert".} +proc gtk_selection_data_set*(selection_data: PGtkSelectionData, + thetype: TGdkAtom, format: gint, data: Pguchar, + length: gint){.cdecl, dynlib: gtklib, + importc: "gtk_selection_data_set".} +proc gtk_selection_data_set_text*(selection_data: PGtkSelectionData, + str: cstring, len: gint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_selection_data_set_text".} +proc gtk_selection_data_get_text*(selection_data: PGtkSelectionData): Pguchar{. + cdecl, dynlib: gtklib, importc: "gtk_selection_data_get_text".} +proc gtk_selection_data_targets_include_text*(selection_data: PGtkSelectionData): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_selection_data_targets_include_text".} +proc gtk_selection_remove_all*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_selection_remove_all".} +proc gtk_selection_clear*(widget: PGtkWidget, event: PGdkEventSelection): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_selection_clear".} +proc gtk_selection_request*(widget: PGtkWidget, event: PGdkEventSelection): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_selection_request".} +proc gtk_selection_incr_event*(window: PGdkWindow, event: PGdkEventProperty): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_selection_incr_event".} +proc gtk_selection_notify*(widget: PGtkWidget, event: PGdkEventSelection): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_selection_notify".} +proc gtk_selection_property_notify*(widget: PGtkWidget, event: PGdkEventProperty): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_selection_property_notify".} +proc gtk_selection_data_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_selection_data_get_type".} +proc gtk_selection_data_copy*(data: PGtkSelectionData): PGtkSelectionData{. + cdecl, dynlib: gtklib, importc: "gtk_selection_data_copy".} +proc gtk_selection_data_free*(data: PGtkSelectionData){.cdecl, dynlib: gtklib, + importc: "gtk_selection_data_free".} +proc GTK_TYPE_SEPARATOR_MENU_ITEM*(): GType +proc GTK_SEPARATOR_MENU_ITEM*(obj: pointer): PGtkSeparatorMenuItem +proc GTK_SEPARATOR_MENU_ITEM_CLASS*(klass: pointer): PGtkSeparatorMenuItemClass +proc GTK_IS_SEPARATOR_MENU_ITEM*(obj: pointer): bool +proc GTK_IS_SEPARATOR_MENU_ITEM_CLASS*(klass: pointer): bool +proc GTK_SEPARATOR_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkSeparatorMenuItemClass +proc gtk_separator_menu_item_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_separator_menu_item_get_type".} +proc gtk_separator_menu_item_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_separator_menu_item_new".} +const + bm_TGtkSizeGroup_have_width* = 0x00000001 + bp_TGtkSizeGroup_have_width* = 0 + bm_TGtkSizeGroup_have_height* = 0x00000002 + bp_TGtkSizeGroup_have_height* = 1 + +proc GTK_TYPE_SIZE_GROUP*(): GType +proc GTK_SIZE_GROUP*(obj: pointer): PGtkSizeGroup +proc GTK_SIZE_GROUP_CLASS*(klass: pointer): PGtkSizeGroupClass +proc GTK_IS_SIZE_GROUP*(obj: pointer): bool +proc GTK_IS_SIZE_GROUP_CLASS*(klass: pointer): bool +proc GTK_SIZE_GROUP_GET_CLASS*(obj: pointer): PGtkSizeGroupClass +proc have_width*(a: var TGtkSizeGroup): guint +proc set_have_width*(a: var TGtkSizeGroup, `have_width`: guint) +proc have_height*(a: var TGtkSizeGroup): guint +proc set_have_height*(a: var TGtkSizeGroup, `have_height`: guint) +proc gtk_size_group_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_size_group_get_type".} +proc gtk_size_group_new*(mode: TGtkSizeGroupMode): PGtkSizeGroup{.cdecl, + dynlib: gtklib, importc: "gtk_size_group_new".} +proc gtk_size_group_set_mode*(size_group: PGtkSizeGroup, mode: TGtkSizeGroupMode){. + cdecl, dynlib: gtklib, importc: "gtk_size_group_set_mode".} +proc gtk_size_group_get_mode*(size_group: PGtkSizeGroup): TGtkSizeGroupMode{. + cdecl, dynlib: gtklib, importc: "gtk_size_group_get_mode".} +proc gtk_size_group_add_widget*(size_group: PGtkSizeGroup, widget: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_size_group_add_widget".} +proc gtk_size_group_remove_widget*(size_group: PGtkSizeGroup, widget: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_size_group_remove_widget".} +proc gtk_size_group_get_child_requisition*(widget: PGtkWidget, + requisition: PGtkRequisition){.cdecl, dynlib: gtklib, importc: "_gtk_size_group_get_child_requisition".} +proc gtk_size_group_compute_requisition*(widget: PGtkWidget, + requisition: PGtkRequisition){.cdecl, dynlib: gtklib, importc: "_gtk_size_group_compute_requisition".} +proc gtk_size_group_queue_resize*(widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "_gtk_size_group_queue_resize".} +const + bm_TGtkSocket_same_app* = 0x00000001 + bp_TGtkSocket_same_app* = 0 + bm_TGtkSocket_focus_in* = 0x00000002 + bp_TGtkSocket_focus_in* = 1 + bm_TGtkSocket_have_size* = 0x00000004 + bp_TGtkSocket_have_size* = 2 + bm_TGtkSocket_need_map* = 0x00000008 + bp_TGtkSocket_need_map* = 3 + bm_TGtkSocket_is_mapped* = 0x00000010 + bp_TGtkSocket_is_mapped* = 4 + +proc GTK_TYPE_SOCKET*(): GType +proc GTK_SOCKET*(obj: pointer): PGtkSocket +proc GTK_SOCKET_CLASS*(klass: pointer): PGtkSocketClass +proc GTK_IS_SOCKET*(obj: pointer): bool +proc GTK_IS_SOCKET_CLASS*(klass: pointer): bool +proc GTK_SOCKET_GET_CLASS*(obj: pointer): PGtkSocketClass +proc same_app*(a: var TGtkSocket): guint +proc set_same_app*(a: var TGtkSocket, `same_app`: guint) +proc focus_in*(a: var TGtkSocket): guint +proc set_focus_in*(a: var TGtkSocket, `focus_in`: guint) +proc have_size*(a: var TGtkSocket): guint +proc set_have_size*(a: var TGtkSocket, `have_size`: guint) +proc need_map*(a: var TGtkSocket): guint +proc set_need_map*(a: var TGtkSocket, `need_map`: guint) +proc is_mapped*(a: var TGtkSocket): guint +proc set_is_mapped*(a: var TGtkSocket, `is_mapped`: guint) +proc gtk_socket_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_socket_new".} +proc gtk_socket_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_socket_get_type".} +proc gtk_socket_add_id*(socket: PGtkSocket, window_id: TGdkNativeWindow){.cdecl, + dynlib: gtklib, importc: "gtk_socket_add_id".} +proc gtk_socket_get_id*(socket: PGtkSocket): TGdkNativeWindow{.cdecl, + dynlib: gtklib, importc: "gtk_socket_get_id".} +const + GTK_INPUT_ERROR* = - (1) + bm_TGtkSpinButton_in_child* = 0x00000003 + bp_TGtkSpinButton_in_child* = 0 + bm_TGtkSpinButton_click_child* = 0x0000000C + bp_TGtkSpinButton_click_child* = 2 + bm_TGtkSpinButton_button* = 0x00000030 + bp_TGtkSpinButton_button* = 4 + bm_TGtkSpinButton_need_timer* = 0x00000040 + bp_TGtkSpinButton_need_timer* = 6 + bm_TGtkSpinButton_timer_calls* = 0x00000380 + bp_TGtkSpinButton_timer_calls* = 7 + bm_TGtkSpinButton_digits* = 0x000FFC00 + bp_TGtkSpinButton_digits* = 10 + bm_TGtkSpinButton_numeric* = 0x00100000 + bp_TGtkSpinButton_numeric* = 20 + bm_TGtkSpinButton_wrap* = 0x00200000 + bp_TGtkSpinButton_wrap* = 21 + bm_TGtkSpinButton_snap_to_ticks* = 0x00400000 + bp_TGtkSpinButton_snap_to_ticks* = 22 + +proc GTK_TYPE_SPIN_BUTTON*(): GType +proc GTK_SPIN_BUTTON*(obj: pointer): PGtkSpinButton +proc GTK_SPIN_BUTTON_CLASS*(klass: pointer): PGtkSpinButtonClass +proc GTK_IS_SPIN_BUTTON*(obj: pointer): bool +proc GTK_IS_SPIN_BUTTON_CLASS*(klass: pointer): bool +proc GTK_SPIN_BUTTON_GET_CLASS*(obj: pointer): PGtkSpinButtonClass +proc in_child*(a: var TGtkSpinButton): guint +proc set_in_child*(a: var TGtkSpinButton, `in_child`: guint) +proc click_child*(a: var TGtkSpinButton): guint +proc set_click_child*(a: var TGtkSpinButton, `click_child`: guint) +proc button*(a: var TGtkSpinButton): guint +proc set_button*(a: var TGtkSpinButton, `button`: guint) +proc need_timer*(a: var TGtkSpinButton): guint +proc set_need_timer*(a: var TGtkSpinButton, `need_timer`: guint) +proc timer_calls*(a: var TGtkSpinButton): guint +proc set_timer_calls*(a: var TGtkSpinButton, `timer_calls`: guint) +proc digits*(a: var TGtkSpinButton): guint +proc set_digits*(a: var TGtkSpinButton, `digits`: guint) +proc numeric*(a: var TGtkSpinButton): guint +proc set_numeric*(a: var TGtkSpinButton, `numeric`: guint) +proc wrap*(a: var TGtkSpinButton): guint +proc set_wrap*(a: var TGtkSpinButton, `wrap`: guint) +proc snap_to_ticks*(a: var TGtkSpinButton): guint +proc set_snap_to_ticks*(a: var TGtkSpinButton, `snap_to_ticks`: guint) +proc gtk_spin_button_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_get_type".} +proc gtk_spin_button_configure*(spin_button: PGtkSpinButton, + adjustment: PGtkAdjustment, climb_rate: gdouble, + digits: guint){.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_configure".} +proc gtk_spin_button_new*(adjustment: PGtkAdjustment, climb_rate: gdouble, + digits: guint): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_new".} +proc gtk_spin_button_new_with_range*(min: gdouble, max: gdouble, step: gdouble): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_new_with_range".} +proc gtk_spin_button_set_adjustment*(spin_button: PGtkSpinButton, + adjustment: PGtkAdjustment){.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_set_adjustment".} +proc gtk_spin_button_get_adjustment*(spin_button: PGtkSpinButton): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_get_adjustment".} +proc gtk_spin_button_set_digits*(spin_button: PGtkSpinButton, digits: guint){. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_set_digits".} +proc gtk_spin_button_get_digits*(spin_button: PGtkSpinButton): guint{.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_get_digits".} +proc gtk_spin_button_set_increments*(spin_button: PGtkSpinButton, step: gdouble, + page: gdouble){.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_set_increments".} +proc gtk_spin_button_get_increments*(spin_button: PGtkSpinButton, + step: Pgdouble, page: Pgdouble){.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_get_increments".} +proc gtk_spin_button_set_range*(spin_button: PGtkSpinButton, min: gdouble, + max: gdouble){.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_set_range".} +proc gtk_spin_button_get_range*(spin_button: PGtkSpinButton, min: Pgdouble, + max: Pgdouble){.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_get_range".} +proc gtk_spin_button_get_value*(spin_button: PGtkSpinButton): gdouble{.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_get_value".} +proc gtk_spin_button_get_value_as_int*(spin_button: PGtkSpinButton): gint{. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_get_value_as_int".} +proc gtk_spin_button_set_value*(spin_button: PGtkSpinButton, value: gdouble){. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_set_value".} +proc gtk_spin_button_set_update_policy*(spin_button: PGtkSpinButton, + policy: TGtkSpinButtonUpdatePolicy){. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_set_update_policy".} +proc gtk_spin_button_get_update_policy*(spin_button: PGtkSpinButton): TGtkSpinButtonUpdatePolicy{. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_get_update_policy".} +proc gtk_spin_button_set_numeric*(spin_button: PGtkSpinButton, numeric: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_set_numeric".} +proc gtk_spin_button_get_numeric*(spin_button: PGtkSpinButton): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_get_numeric".} +proc gtk_spin_button_spin*(spin_button: PGtkSpinButton, direction: TGtkSpinType, + increment: gdouble){.cdecl, dynlib: gtklib, + importc: "gtk_spin_button_spin".} +proc gtk_spin_button_set_wrap*(spin_button: PGtkSpinButton, wrap: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_set_wrap".} +proc gtk_spin_button_get_wrap*(spin_button: PGtkSpinButton): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_get_wrap".} +proc gtk_spin_button_set_snap_to_ticks*(spin_button: PGtkSpinButton, + snap_to_ticks: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_set_snap_to_ticks".} +proc gtk_spin_button_get_snap_to_ticks*(spin_button: PGtkSpinButton): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_spin_button_get_snap_to_ticks".} +proc gtk_spin_button_update*(spin_button: PGtkSpinButton){.cdecl, + dynlib: gtklib, importc: "gtk_spin_button_update".} +const + GTK_STOCK_DIALOG_INFO* = "gtk-dialog-info" + GTK_STOCK_DIALOG_WARNING* = "gtk-dialog-warning" + GTK_STOCK_DIALOG_ERROR* = "gtk-dialog-error" + GTK_STOCK_DIALOG_QUESTION* = "gtk-dialog-question" + GTK_STOCK_DND* = "gtk-dnd" + GTK_STOCK_DND_MULTIPLE* = "gtk-dnd-multiple" + GTK_STOCK_ABOUT* = "gtk-about" + GTK_STOCK_ADD_name* = "gtk-add" + GTK_STOCK_APPLY* = "gtk-apply" + GTK_STOCK_BOLD* = "gtk-bold" + GTK_STOCK_CANCEL* = "gtk-cancel" + GTK_STOCK_CDROM* = "gtk-cdrom" + GTK_STOCK_CLEAR* = "gtk-clear" + GTK_STOCK_CLOSE* = "gtk-close" + GTK_STOCK_COLOR_PICKER* = "gtk-color-picker" + GTK_STOCK_CONVERT* = "gtk-convert" + GTK_STOCK_CONNECT* = "gtk-connect" + GTK_STOCK_COPY* = "gtk-copy" + GTK_STOCK_CUT* = "gtk-cut" + GTK_STOCK_DELETE* = "gtk-delete" + GTK_STOCK_EXECUTE* = "gtk-execute" + GTK_STOCK_FIND* = "gtk-find" + GTK_STOCK_FIND_AND_REPLACE* = "gtk-find-and-replace" + GTK_STOCK_FLOPPY* = "gtk-floppy" + GTK_STOCK_GOTO_BOTTOM* = "gtk-goto-bottom" + GTK_STOCK_GOTO_FIRST* = "gtk-goto-first" + GTK_STOCK_GOTO_LAST* = "gtk-goto-last" + GTK_STOCK_GOTO_TOP* = "gtk-goto-top" + GTK_STOCK_GO_BACK* = "gtk-go-back" + GTK_STOCK_GO_DOWN* = "gtk-go-down" + GTK_STOCK_GO_FORWARD* = "gtk-go-forward" + GTK_STOCK_GO_UP* = "gtk-go-up" + GTK_STOCK_HELP* = "gtk-help" + GTK_STOCK_HOME* = "gtk-home" + GTK_STOCK_INDEX* = "gtk-index" + GTK_STOCK_ITALIC* = "gtk-italic" + GTK_STOCK_JUMP_TO* = "gtk-jump-to" + GTK_STOCK_JUSTIFY_CENTER* = "gtk-justify-center" + GTK_STOCK_JUSTIFY_FILL* = "gtk-justify-fill" + GTK_STOCK_JUSTIFY_LEFT* = "gtk-justify-left" + GTK_STOCK_JUSTIFY_RIGHT* = "gtk-justify-right" + GTK_STOCK_MEDIA_FORWARD* = "gtk-media-forward" + GTK_STOCK_MEDIA_NEXT* = "gtk-media-next" + GTK_STOCK_MEDIA_PAUSE* = "gtk-media-pause" + GTK_STOCK_MEDIA_PLAY* = "gtk-media-play" + GTK_STOCK_MEDIA_PREVIOUS* = "gtk-media-previous" + GTK_STOCK_MEDIA_RECORD* = "gtk-media-record" + GTK_STOCK_MEDIA_REWIND* = "gtk-media-rewind" + GTK_STOCK_MEDIA_STOP* = "gtk-media-stop" + GTK_STOCK_MISSING_IMAGE* = "gtk-missing-image" + GTK_STOCK_NEW* = "gtk-new" + GTK_STOCK_NO* = "gtk-no" + GTK_STOCK_OK* = "gtk-ok" + GTK_STOCK_OPEN* = "gtk-open" + GTK_STOCK_PASTE* = "gtk-paste" + GTK_STOCK_PREFERENCES* = "gtk-preferences" + GTK_STOCK_PRINT* = "gtk-print" + GTK_STOCK_PRINT_PREVIEW* = "gtk-print-preview" + GTK_STOCK_PROPERTIES* = "gtk-properties" + GTK_STOCK_QUIT* = "gtk-quit" + GTK_STOCK_REDO* = "gtk-redo" + GTK_STOCK_REFRESH* = "gtk-refresh" + GTK_STOCK_REMOVE* = "gtk-remove" + GTK_STOCK_REVERT_TO_SAVED* = "gtk-revert-to-saved" + GTK_STOCK_SAVE* = "gtk-save" + GTK_STOCK_SAVE_AS* = "gtk-save-as" + GTK_STOCK_SELECT_COLOR* = "gtk-select-color" + GTK_STOCK_SELECT_FONT* = "gtk-select-font" + GTK_STOCK_SORT_ASCENDING* = "gtk-sort-ascending" + GTK_STOCK_SORT_DESCENDING* = "gtk-sort-descending" + GTK_STOCK_SPELL_CHECK* = "gtk-spell-check" + GTK_STOCK_STOP* = "gtk-stop" + GTK_STOCK_STRIKETHROUGH* = "gtk-strikethrough" + GTK_STOCK_UNDELETE* = "gtk-undelete" + GTK_STOCK_UNDERLINE* = "gtk-underline" + GTK_STOCK_UNDO* = "gtk-undo" + GTK_STOCK_YES* = "gtk-yes" + GTK_STOCK_ZOOM_100* = "gtk-zoom-100" + GTK_STOCK_ZOOM_FIT* = "gtk-zoom-fit" + GTK_STOCK_ZOOM_IN* = "gtk-zoom-in" + GTK_STOCK_ZOOM_OUT* = "gtk-zoom-out" + +proc gtk_stock_add*(items: PGtkStockItem, n_items: guint){.cdecl, + dynlib: gtklib, importc: "gtk_stock_add".} +proc gtk_stock_add_static*(items: PGtkStockItem, n_items: guint){.cdecl, + dynlib: gtklib, importc: "gtk_stock_add_static".} +proc gtk_stock_lookup*(stock_id: cstring, item: PGtkStockItem): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_stock_lookup".} +proc gtk_stock_list_ids*(): PGSList{.cdecl, dynlib: gtklib, + importc: "gtk_stock_list_ids".} +proc gtk_stock_item_copy*(item: PGtkStockItem): PGtkStockItem{.cdecl, + dynlib: gtklib, importc: "gtk_stock_item_copy".} +proc gtk_stock_item_free*(item: PGtkStockItem){.cdecl, dynlib: gtklib, + importc: "gtk_stock_item_free".} +proc GTK_TYPE_STATUSBAR*(): GType +proc GTK_STATUSBAR*(obj: pointer): PGtkStatusbar +proc GTK_STATUSBAR_CLASS*(klass: pointer): PGtkStatusbarClass +proc GTK_IS_STATUSBAR*(obj: pointer): bool +proc GTK_IS_STATUSBAR_CLASS*(klass: pointer): bool +proc GTK_STATUSBAR_GET_CLASS*(obj: pointer): PGtkStatusbarClass +const + bm_TGtkStatusbar_has_resize_grip* = 0x00000001 + bp_TGtkStatusbar_has_resize_grip* = 0 + +proc has_resize_grip*(a: var TGtkStatusbar): guint +proc set_has_resize_grip*(a: var TGtkStatusbar, `has_resize_grip`: guint) +proc gtk_statusbar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_statusbar_get_type".} +proc gtk_statusbar_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_statusbar_new".} +proc gtk_statusbar_get_context_id*(statusbar: PGtkStatusbar, + context_description: cstring): guint{.cdecl, + dynlib: gtklib, importc: "gtk_statusbar_get_context_id".} +proc gtk_statusbar_push*(statusbar: PGtkStatusbar, context_id: guint, + text: cstring): guint{.cdecl, dynlib: gtklib, + importc: "gtk_statusbar_push".} +proc gtk_statusbar_pop*(statusbar: PGtkStatusbar, context_id: guint){.cdecl, + dynlib: gtklib, importc: "gtk_statusbar_pop".} +proc gtk_statusbar_remove*(statusbar: PGtkStatusbar, context_id: guint, + message_id: guint){.cdecl, dynlib: gtklib, + importc: "gtk_statusbar_remove".} +proc gtk_statusbar_set_has_resize_grip*(statusbar: PGtkStatusbar, + setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_statusbar_set_has_resize_grip".} +proc gtk_statusbar_get_has_resize_grip*(statusbar: PGtkStatusbar): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_statusbar_get_has_resize_grip".} +const + bm_TGtkTable_homogeneous* = 0x00000001 + bp_TGtkTable_homogeneous* = 0 + bm_TGtkTableChild_xexpand* = 0x00000001 + bp_TGtkTableChild_xexpand* = 0 + bm_TGtkTableChild_yexpand* = 0x00000002 + bp_TGtkTableChild_yexpand* = 1 + bm_TGtkTableChild_xshrink* = 0x00000004 + bp_TGtkTableChild_xshrink* = 2 + bm_TGtkTableChild_yshrink* = 0x00000008 + bp_TGtkTableChild_yshrink* = 3 + bm_TGtkTableChild_xfill* = 0x00000010 + bp_TGtkTableChild_xfill* = 4 + bm_TGtkTableChild_yfill* = 0x00000020 + bp_TGtkTableChild_yfill* = 5 + bm_TGtkTableRowCol_need_expand* = 0x00000001 + bp_TGtkTableRowCol_need_expand* = 0 + bm_TGtkTableRowCol_need_shrink* = 0x00000002 + bp_TGtkTableRowCol_need_shrink* = 1 + bm_TGtkTableRowCol_expand* = 0x00000004 + bp_TGtkTableRowCol_expand* = 2 + bm_TGtkTableRowCol_shrink* = 0x00000008 + bp_TGtkTableRowCol_shrink* = 3 + bm_TGtkTableRowCol_empty* = 0x00000010 + bp_TGtkTableRowCol_empty* = 4 + +proc GTK_TYPE_TABLE*(): GType +proc GTK_TABLE*(obj: pointer): PGtkTable +proc GTK_TABLE_CLASS*(klass: pointer): PGtkTableClass +proc GTK_IS_TABLE*(obj: pointer): bool +proc GTK_IS_TABLE_CLASS*(klass: pointer): bool +proc GTK_TABLE_GET_CLASS*(obj: pointer): PGtkTableClass +proc homogeneous*(a: var TGtkTable): guint +proc set_homogeneous*(a: var TGtkTable, `homogeneous`: guint) +proc xexpand*(a: var TGtkTableChild): guint +proc set_xexpand*(a: var TGtkTableChild, `xexpand`: guint) +proc yexpand*(a: var TGtkTableChild): guint +proc set_yexpand*(a: var TGtkTableChild, `yexpand`: guint) +proc xshrink*(a: var TGtkTableChild): guint +proc set_xshrink*(a: var TGtkTableChild, `xshrink`: guint) +proc yshrink*(a: var TGtkTableChild): guint +proc set_yshrink*(a: var TGtkTableChild, `yshrink`: guint) +proc xfill*(a: var TGtkTableChild): guint +proc set_xfill*(a: var TGtkTableChild, `xfill`: guint) +proc yfill*(a: var TGtkTableChild): guint +proc set_yfill*(a: var TGtkTableChild, `yfill`: guint) +proc need_expand*(a: var TGtkTableRowCol): guint +proc set_need_expand*(a: var TGtkTableRowCol, `need_expand`: guint) +proc need_shrink*(a: var TGtkTableRowCol): guint +proc set_need_shrink*(a: var TGtkTableRowCol, `need_shrink`: guint) +proc expand*(a: var TGtkTableRowCol): guint +proc set_expand*(a: var TGtkTableRowCol, `expand`: guint) +proc shrink*(a: var TGtkTableRowCol): guint +proc set_shrink*(a: var TGtkTableRowCol, `shrink`: guint) +proc empty*(a: var TGtkTableRowCol): guint +proc set_empty*(a: var TGtkTableRowCol, `empty`: guint) +proc gtk_table_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_table_get_type".} +proc gtk_table_new*(rows: guint, columns: guint, homogeneous: gboolean): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_table_new".} +proc gtk_table_resize*(table: PGtkTable, rows: guint, columns: guint){.cdecl, + dynlib: gtklib, importc: "gtk_table_resize".} +proc gtk_table_attach*(table: PGtkTable, child: PGtkWidget, left_attach: guint, + right_attach: guint, top_attach: guint, + bottom_attach: guint, xoptions: TGtkAttachOptions, + yoptions: TGtkAttachOptions, xpadding: guint, + ypadding: guint){.cdecl, dynlib: gtklib, + importc: "gtk_table_attach".} +proc gtk_table_attach_defaults*(table: PGtkTable, widget: PGtkWidget, + left_attach: guint, right_attach: guint, + top_attach: guint, bottom_attach: guint){.cdecl, + dynlib: gtklib, importc: "gtk_table_attach_defaults".} +proc gtk_table_set_row_spacing*(table: PGtkTable, row: guint, spacing: guint){. + cdecl, dynlib: gtklib, importc: "gtk_table_set_row_spacing".} +proc gtk_table_get_row_spacing*(table: PGtkTable, row: guint): guint{.cdecl, + dynlib: gtklib, importc: "gtk_table_get_row_spacing".} +proc gtk_table_set_col_spacing*(table: PGtkTable, column: guint, spacing: guint){. + cdecl, dynlib: gtklib, importc: "gtk_table_set_col_spacing".} +proc gtk_table_get_col_spacing*(table: PGtkTable, column: guint): guint{.cdecl, + dynlib: gtklib, importc: "gtk_table_get_col_spacing".} +proc gtk_table_set_row_spacings*(table: PGtkTable, spacing: guint){.cdecl, + dynlib: gtklib, importc: "gtk_table_set_row_spacings".} +proc gtk_table_get_default_row_spacing*(table: PGtkTable): guint{.cdecl, + dynlib: gtklib, importc: "gtk_table_get_default_row_spacing".} +proc gtk_table_set_col_spacings*(table: PGtkTable, spacing: guint){.cdecl, + dynlib: gtklib, importc: "gtk_table_set_col_spacings".} +proc gtk_table_get_default_col_spacing*(table: PGtkTable): guint{.cdecl, + dynlib: gtklib, importc: "gtk_table_get_default_col_spacing".} +proc gtk_table_set_homogeneous*(table: PGtkTable, homogeneous: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_table_set_homogeneous".} +proc gtk_table_get_homogeneous*(table: PGtkTable): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_table_get_homogeneous".} +const + bm_TGtkTearoffMenuItem_torn_off* = 0x00000001 + bp_TGtkTearoffMenuItem_torn_off* = 0 + +proc GTK_TYPE_TEAROFF_MENU_ITEM*(): GType +proc GTK_TEAROFF_MENU_ITEM*(obj: pointer): PGtkTearoffMenuItem +proc GTK_TEAROFF_MENU_ITEM_CLASS*(klass: pointer): PGtkTearoffMenuItemClass +proc GTK_IS_TEAROFF_MENU_ITEM*(obj: pointer): bool +proc GTK_IS_TEAROFF_MENU_ITEM_CLASS*(klass: pointer): bool +proc GTK_TEAROFF_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkTearoffMenuItemClass +proc torn_off*(a: var TGtkTearoffMenuItem): guint +proc set_torn_off*(a: var TGtkTearoffMenuItem, `torn_off`: guint) +proc gtk_tearoff_menu_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tearoff_menu_item_get_type".} +proc gtk_tearoff_menu_item_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_tearoff_menu_item_new".} +const + bm_TGtkText_line_wrap* = 0x00000001 + bp_TGtkText_line_wrap* = 0 + bm_TGtkText_word_wrap* = 0x00000002 + bp_TGtkText_word_wrap* = 1 + bm_TGtkText_use_wchar* = 0x00000004 + bp_TGtkText_use_wchar* = 2 + +proc GTK_TYPE_TEXT*(): GType +proc GTK_TEXT*(obj: pointer): PGtkText +proc GTK_TEXT_CLASS*(klass: pointer): PGtkTextClass +proc GTK_IS_TEXT*(obj: pointer): bool +proc GTK_IS_TEXT_CLASS*(klass: pointer): bool +proc GTK_TEXT_GET_CLASS*(obj: pointer): PGtkTextClass +proc line_wrap*(a: PGtkText): guint +proc set_line_wrap*(a: PGtkText, `line_wrap`: guint) +proc word_wrap*(a: PGtkText): guint +proc set_word_wrap*(a: PGtkText, `word_wrap`: guint) +proc use_wchar*(a: PGtkText): gboolean +proc set_use_wchar*(a: PGtkText, `use_wchar`: gboolean) +proc gtk_text_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_text_get_type".} +proc gtk_text_new*(hadj: PGtkAdjustment, vadj: PGtkAdjustment): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_text_new".} +proc gtk_text_set_editable*(text: PGtkText, editable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_set_editable".} +proc gtk_text_set_word_wrap*(text: PGtkText, word_wrap: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_set_word_wrap".} +proc gtk_text_set_line_wrap*(text: PGtkText, line_wrap: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_set_line_wrap".} +proc gtk_text_set_adjustments*(text: PGtkText, hadj: PGtkAdjustment, + vadj: PGtkAdjustment){.cdecl, dynlib: gtklib, + importc: "gtk_text_set_adjustments".} +proc gtk_text_set_point*(text: PGtkText, index: guint){.cdecl, dynlib: gtklib, + importc: "gtk_text_set_point".} +proc gtk_text_get_point*(text: PGtkText): guint{.cdecl, dynlib: gtklib, + importc: "gtk_text_get_point".} +proc gtk_text_get_length*(text: PGtkText): guint{.cdecl, dynlib: gtklib, + importc: "gtk_text_get_length".} +proc gtk_text_freeze*(text: PGtkText){.cdecl, dynlib: gtklib, + importc: "gtk_text_freeze".} +proc gtk_text_thaw*(text: PGtkText){.cdecl, dynlib: gtklib, + importc: "gtk_text_thaw".} +proc gtk_text_insert*(text: PGtkText, font: PGdkFont, fore: PGdkColor, + back: PGdkColor, chars: cstring, length: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_insert".} +proc gtk_text_backward_delete*(text: PGtkText, nchars: guint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_backward_delete".} +proc gtk_text_forward_delete*(text: PGtkText, nchars: guint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_forward_delete".} +proc GTK_TEXT_INDEX_WCHAR*(t: PGtkText, index: guint): guint32 +proc GTK_TEXT_INDEX_UCHAR*(t: PGtkText, index: guint): GUChar +const + GTK_TEXT_SEARCH_VISIBLE_ONLY* = 0 + GTK_TEXT_SEARCH_TEXT_ONLY* = 1 + +proc GTK_TYPE_TEXT_ITER*(): GType +proc gtk_text_iter_get_buffer*(iter: PGtkTextIter): PGtkTextBuffer{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_buffer".} +proc gtk_text_iter_copy*(iter: PGtkTextIter): PGtkTextIter{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_copy".} +proc gtk_text_iter_free*(iter: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_free".} +proc gtk_text_iter_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_get_type".} +proc gtk_text_iter_get_offset*(iter: PGtkTextIter): gint{.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_get_offset".} +proc gtk_text_iter_get_line*(iter: PGtkTextIter): gint{.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_get_line".} +proc gtk_text_iter_get_line_offset*(iter: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_line_offset".} +proc gtk_text_iter_get_line_index*(iter: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_line_index".} +proc gtk_text_iter_get_visible_line_offset*(iter: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_visible_line_offset".} +proc gtk_text_iter_get_visible_line_index*(iter: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_visible_line_index".} +proc gtk_text_iter_get_char*(iter: PGtkTextIter): gunichar{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_char".} +proc gtk_text_iter_get_slice*(start: PGtkTextIter, theEnd: PGtkTextIter): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_get_slice".} +proc gtk_text_iter_get_text*(start: PGtkTextIter, theEnd: PGtkTextIter): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_get_text".} +proc gtk_text_iter_get_visible_slice*(start: PGtkTextIter, theEnd: PGtkTextIter): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_get_visible_slice".} +proc gtk_text_iter_get_visible_text*(start: PGtkTextIter, theEnd: PGtkTextIter): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_get_visible_text".} +proc gtk_text_iter_get_pixbuf*(iter: PGtkTextIter): PGdkPixbuf{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_pixbuf".} +proc gtk_text_iter_get_marks*(iter: PGtkTextIter): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_marks".} +proc gtk_text_iter_get_child_anchor*(iter: PGtkTextIter): PGtkTextChildAnchor{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_get_child_anchor".} +proc gtk_text_iter_get_toggled_tags*(iter: PGtkTextIter, toggled_on: gboolean): PGSList{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_get_toggled_tags".} +proc gtk_text_iter_begins_tag*(iter: PGtkTextIter, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_begins_tag".} +proc gtk_text_iter_ends_tag*(iter: PGtkTextIter, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_ends_tag".} +proc gtk_text_iter_toggles_tag*(iter: PGtkTextIter, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_toggles_tag".} +proc gtk_text_iter_has_tag*(iter: PGtkTextIter, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_has_tag".} +proc gtk_text_iter_get_tags*(iter: PGtkTextIter): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_tags".} +proc gtk_text_iter_editable*(iter: PGtkTextIter, default_setting: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_editable".} +proc gtk_text_iter_can_insert*(iter: PGtkTextIter, default_editability: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_can_insert".} +proc gtk_text_iter_starts_word*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_starts_word".} +proc gtk_text_iter_ends_word*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_ends_word".} +proc gtk_text_iter_inside_word*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_inside_word".} +proc gtk_text_iter_starts_sentence*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_starts_sentence".} +proc gtk_text_iter_ends_sentence*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_ends_sentence".} +proc gtk_text_iter_inside_sentence*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_inside_sentence".} +proc gtk_text_iter_starts_line*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_starts_line".} +proc gtk_text_iter_ends_line*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_ends_line".} +proc gtk_text_iter_is_cursor_position*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_is_cursor_position".} +proc gtk_text_iter_get_chars_in_line*(iter: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_chars_in_line".} +proc gtk_text_iter_get_bytes_in_line*(iter: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_bytes_in_line".} +proc gtk_text_iter_get_attributes*(iter: PGtkTextIter, + values: PGtkTextAttributes): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_attributes".} +proc gtk_text_iter_get_language*(iter: PGtkTextIter): PPangoLanguage{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_get_language".} +proc gtk_text_iter_is_end*(iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_is_end".} +proc gtk_text_iter_is_start*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_is_start".} +proc gtk_text_iter_forward_char*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_forward_char".} +proc gtk_text_iter_backward_char*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_backward_char".} +proc gtk_text_iter_forward_chars*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_chars".} +proc gtk_text_iter_backward_chars*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_chars".} +proc gtk_text_iter_forward_line*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_forward_line".} +proc gtk_text_iter_backward_line*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_backward_line".} +proc gtk_text_iter_forward_lines*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_lines".} +proc gtk_text_iter_backward_lines*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_lines".} +proc gtk_text_iter_forward_word_end*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_forward_word_end".} +proc gtk_text_iter_backward_word_start*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_backward_word_start".} +proc gtk_text_iter_forward_word_ends*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_word_ends".} +proc gtk_text_iter_backward_word_starts*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_word_starts".} +proc gtk_text_iter_forward_sentence_end*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_forward_sentence_end".} +proc gtk_text_iter_backward_sentence_start*(iter: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_sentence_start".} +proc gtk_text_iter_forward_sentence_ends*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_sentence_ends".} +proc gtk_text_iter_backward_sentence_starts*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_sentence_starts".} +proc gtk_text_iter_forward_cursor_position*(iter: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_cursor_position".} +proc gtk_text_iter_backward_cursor_position*(iter: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_cursor_position".} +proc gtk_text_iter_forward_cursor_positions*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_cursor_positions".} +proc gtk_text_iter_backward_cursor_positions*(iter: PGtkTextIter, count: gint): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_cursor_positions".} +proc gtk_text_iter_set_offset*(iter: PGtkTextIter, char_offset: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_set_offset".} +proc gtk_text_iter_set_line*(iter: PGtkTextIter, line_number: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_set_line".} +proc gtk_text_iter_set_line_offset*(iter: PGtkTextIter, char_on_line: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_set_line_offset".} +proc gtk_text_iter_set_line_index*(iter: PGtkTextIter, byte_on_line: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_set_line_index".} +proc gtk_text_iter_forward_to_end*(iter: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_forward_to_end".} +proc gtk_text_iter_forward_to_line_end*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_forward_to_line_end".} +proc gtk_text_iter_set_visible_line_offset*(iter: PGtkTextIter, + char_on_line: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_set_visible_line_offset".} +proc gtk_text_iter_set_visible_line_index*(iter: PGtkTextIter, + byte_on_line: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_iter_set_visible_line_index".} +proc gtk_text_iter_forward_to_tag_toggle*(iter: PGtkTextIter, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_to_tag_toggle".} +proc gtk_text_iter_backward_to_tag_toggle*(iter: PGtkTextIter, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_to_tag_toggle".} +proc gtk_text_iter_forward_find_char*(iter: PGtkTextIter, + pred: TGtkTextCharPredicate, + user_data: gpointer, limit: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_find_char".} +proc gtk_text_iter_backward_find_char*(iter: PGtkTextIter, + pred: TGtkTextCharPredicate, + user_data: gpointer, limit: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_find_char".} +proc gtk_text_iter_forward_search*(iter: PGtkTextIter, str: cstring, + flags: TGtkTextSearchFlags, + match_start: PGtkTextIter, + match_end: PGtkTextIter, limit: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_forward_search".} +proc gtk_text_iter_backward_search*(iter: PGtkTextIter, str: cstring, + flags: TGtkTextSearchFlags, + match_start: PGtkTextIter, + match_end: PGtkTextIter, limit: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_backward_search".} +proc gtk_text_iter_equal*(lhs: PGtkTextIter, rhs: PGtkTextIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_iter_equal".} +proc gtk_text_iter_compare*(lhs: PGtkTextIter, rhs: PGtkTextIter): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_compare".} +proc gtk_text_iter_in_range*(iter: PGtkTextIter, start: PGtkTextIter, + theEnd: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_in_range".} +proc gtk_text_iter_order*(first: PGtkTextIter, second: PGtkTextIter){.cdecl, + dynlib: gtklib, importc: "gtk_text_iter_order".} +proc GTK_TYPE_TEXT_TAG*(): GType +proc GTK_TEXT_TAG*(obj: pointer): PGtkTextTag +proc GTK_TEXT_TAG_CLASS*(klass: pointer): PGtkTextTagClass +proc GTK_IS_TEXT_TAG*(obj: pointer): bool +proc GTK_IS_TEXT_TAG_CLASS*(klass: pointer): bool +proc GTK_TEXT_TAG_GET_CLASS*(obj: pointer): PGtkTextTagClass +proc GTK_TYPE_TEXT_ATTRIBUTES*(): GType +proc gtk_text_tag_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_tag_get_type".} +proc gtk_text_tag_new*(name: cstring): PGtkTextTag{.cdecl, dynlib: gtklib, + importc: "gtk_text_tag_new".} +proc gtk_text_tag_get_priority*(tag: PGtkTextTag): gint{.cdecl, dynlib: gtklib, + importc: "gtk_text_tag_get_priority".} +proc gtk_text_tag_set_priority*(tag: PGtkTextTag, priority: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_tag_set_priority".} +proc gtk_text_tag_event*(tag: PGtkTextTag, event_object: PGObject, + event: PGdkEvent, iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_tag_event".} +proc gtk_text_attributes_new*(): PGtkTextAttributes{.cdecl, dynlib: gtklib, + importc: "gtk_text_attributes_new".} +proc gtk_text_attributes_copy*(src: PGtkTextAttributes): PGtkTextAttributes{. + cdecl, dynlib: gtklib, importc: "gtk_text_attributes_copy".} +proc gtk_text_attributes_copy_values*(src: PGtkTextAttributes, + dest: PGtkTextAttributes){.cdecl, + dynlib: gtklib, importc: "gtk_text_attributes_copy_values".} +proc gtk_text_attributes_unref*(values: PGtkTextAttributes){.cdecl, + dynlib: gtklib, importc: "gtk_text_attributes_unref".} +proc gtk_text_attributes_ref*(values: PGtkTextAttributes){.cdecl, + dynlib: gtklib, importc: "gtk_text_attributes_ref".} +proc gtk_text_attributes_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_attributes_get_type".} +const + bm_TGtkTextTag_bg_color_set* = 0x00000001 + bp_TGtkTextTag_bg_color_set* = 0 + bm_TGtkTextTag_bg_stipple_set* = 0x00000002 + bp_TGtkTextTag_bg_stipple_set* = 1 + bm_TGtkTextTag_fg_color_set* = 0x00000004 + bp_TGtkTextTag_fg_color_set* = 2 + bm_TGtkTextTag_scale_set* = 0x00000008 + bp_TGtkTextTag_scale_set* = 3 + bm_TGtkTextTag_fg_stipple_set* = 0x00000010 + bp_TGtkTextTag_fg_stipple_set* = 4 + bm_TGtkTextTag_justification_set* = 0x00000020 + bp_TGtkTextTag_justification_set* = 5 + bm_TGtkTextTag_left_margin_set* = 0x00000040 + bp_TGtkTextTag_left_margin_set* = 6 + bm_TGtkTextTag_indent_set* = 0x00000080 + bp_TGtkTextTag_indent_set* = 7 + bm_TGtkTextTag_rise_set* = 0x00000100 + bp_TGtkTextTag_rise_set* = 8 + bm_TGtkTextTag_strikethrough_set* = 0x00000200 + bp_TGtkTextTag_strikethrough_set* = 9 + bm_TGtkTextTag_right_margin_set* = 0x00000400 + bp_TGtkTextTag_right_margin_set* = 10 + bm_TGtkTextTag_pixels_above_lines_set* = 0x00000800 + bp_TGtkTextTag_pixels_above_lines_set* = 11 + bm_TGtkTextTag_pixels_below_lines_set* = 0x00001000 + bp_TGtkTextTag_pixels_below_lines_set* = 12 + bm_TGtkTextTag_pixels_inside_wrap_set* = 0x00002000 + bp_TGtkTextTag_pixels_inside_wrap_set* = 13 + bm_TGtkTextTag_tabs_set* = 0x00004000 + bp_TGtkTextTag_tabs_set* = 14 + bm_TGtkTextTag_underline_set* = 0x00008000 + bp_TGtkTextTag_underline_set* = 15 + bm_TGtkTextTag_wrap_mode_set* = 0x00010000 + bp_TGtkTextTag_wrap_mode_set* = 16 + bm_TGtkTextTag_bg_full_height_set* = 0x00020000 + bp_TGtkTextTag_bg_full_height_set* = 17 + bm_TGtkTextTag_invisible_set* = 0x00040000 + bp_TGtkTextTag_invisible_set* = 18 + bm_TGtkTextTag_editable_set* = 0x00080000 + bp_TGtkTextTag_editable_set* = 19 + bm_TGtkTextTag_language_set* = 0x00100000 + bp_TGtkTextTag_language_set* = 20 + bm_TGtkTextTag_pad1* = 0x00200000 + bp_TGtkTextTag_pad1* = 21 + bm_TGtkTextTag_pad2* = 0x00400000 + bp_TGtkTextTag_pad2* = 22 + bm_TGtkTextTag_pad3* = 0x00800000 + bp_TGtkTextTag_pad3* = 23 + +proc bg_color_set*(a: var TGtkTextTag): guint +proc set_bg_color_set*(a: var TGtkTextTag, `bg_color_set`: guint) +proc bg_stipple_set*(a: var TGtkTextTag): guint +proc set_bg_stipple_set*(a: var TGtkTextTag, `bg_stipple_set`: guint) +proc fg_color_set*(a: var TGtkTextTag): guint +proc set_fg_color_set*(a: var TGtkTextTag, `fg_color_set`: guint) +proc scale_set*(a: var TGtkTextTag): guint +proc set_scale_set*(a: var TGtkTextTag, `scale_set`: guint) +proc fg_stipple_set*(a: var TGtkTextTag): guint +proc set_fg_stipple_set*(a: var TGtkTextTag, `fg_stipple_set`: guint) +proc justification_set*(a: var TGtkTextTag): guint +proc set_justification_set*(a: var TGtkTextTag, `justification_set`: guint) +proc left_margin_set*(a: var TGtkTextTag): guint +proc set_left_margin_set*(a: var TGtkTextTag, `left_margin_set`: guint) +proc indent_set*(a: var TGtkTextTag): guint +proc set_indent_set*(a: var TGtkTextTag, `indent_set`: guint) +proc rise_set*(a: var TGtkTextTag): guint +proc set_rise_set*(a: var TGtkTextTag, `rise_set`: guint) +proc strikethrough_set*(a: var TGtkTextTag): guint +proc set_strikethrough_set*(a: var TGtkTextTag, `strikethrough_set`: guint) +proc right_margin_set*(a: var TGtkTextTag): guint +proc set_right_margin_set*(a: var TGtkTextTag, `right_margin_set`: guint) +proc pixels_above_lines_set*(a: var TGtkTextTag): guint +proc set_pixels_above_lines_set*(a: var TGtkTextTag, + `pixels_above_lines_set`: guint) +proc pixels_below_lines_set*(a: var TGtkTextTag): guint +proc set_pixels_below_lines_set*(a: var TGtkTextTag, + `pixels_below_lines_set`: guint) +proc pixels_inside_wrap_set*(a: var TGtkTextTag): guint +proc set_pixels_inside_wrap_set*(a: var TGtkTextTag, + `pixels_inside_wrap_set`: guint) +proc tabs_set*(a: var TGtkTextTag): guint +proc set_tabs_set*(a: var TGtkTextTag, `tabs_set`: guint) +proc underline_set*(a: var TGtkTextTag): guint +proc set_underline_set*(a: var TGtkTextTag, `underline_set`: guint) +proc wrap_mode_set*(a: var TGtkTextTag): guint +proc set_wrap_mode_set*(a: var TGtkTextTag, `wrap_mode_set`: guint) +proc bg_full_height_set*(a: var TGtkTextTag): guint +proc set_bg_full_height_set*(a: var TGtkTextTag, `bg_full_height_set`: guint) +proc invisible_set*(a: var TGtkTextTag): guint +proc set_invisible_set*(a: var TGtkTextTag, `invisible_set`: guint) +proc editable_set*(a: var TGtkTextTag): guint +proc set_editable_set*(a: var TGtkTextTag, `editable_set`: guint) +proc language_set*(a: var TGtkTextTag): guint +proc set_language_set*(a: var TGtkTextTag, `language_set`: guint) +proc pad1*(a: var TGtkTextTag): guint +proc set_pad1*(a: var TGtkTextTag, `pad1`: guint) +proc pad2*(a: var TGtkTextTag): guint +proc set_pad2*(a: var TGtkTextTag, `pad2`: guint) +proc pad3*(a: var TGtkTextTag): guint +proc set_pad3*(a: var TGtkTextTag, `pad3`: guint) +const + bm_TGtkTextAppearance_underline* = 0x0000000F + bp_TGtkTextAppearance_underline* = 0 + bm_TGtkTextAppearance_strikethrough* = 0x00000010 + bp_TGtkTextAppearance_strikethrough* = 4 + bm_TGtkTextAppearance_draw_bg* = 0x00000020 + bp_TGtkTextAppearance_draw_bg* = 5 + bm_TGtkTextAppearance_inside_selection* = 0x00000040 + bp_TGtkTextAppearance_inside_selection* = 6 + bm_TGtkTextAppearance_is_text* = 0x00000080 + bp_TGtkTextAppearance_is_text* = 7 + bm_TGtkTextAppearance_pad1* = 0x00000100 + bp_TGtkTextAppearance_pad1* = 8 + bm_TGtkTextAppearance_pad2* = 0x00000200 + bp_TGtkTextAppearance_pad2* = 9 + bm_TGtkTextAppearance_pad3* = 0x00000400 + bp_TGtkTextAppearance_pad3* = 10 + bm_TGtkTextAppearance_pad4* = 0x00000800 + bp_TGtkTextAppearance_pad4* = 11 + +proc underline*(a: var TGtkTextAppearance): guint +proc set_underline*(a: var TGtkTextAppearance, `underline`: guint) +proc strikethrough*(a: var TGtkTextAppearance): guint +proc set_strikethrough*(a: var TGtkTextAppearance, `strikethrough`: guint) +proc draw_bg*(a: var TGtkTextAppearance): guint +proc set_draw_bg*(a: var TGtkTextAppearance, `draw_bg`: guint) +proc inside_selection*(a: var TGtkTextAppearance): guint +proc set_inside_selection*(a: var TGtkTextAppearance, `inside_selection`: guint) +proc is_text*(a: var TGtkTextAppearance): guint +proc set_is_text*(a: var TGtkTextAppearance, `is_text`: guint) +proc pad1*(a: var TGtkTextAppearance): guint +proc set_pad1*(a: var TGtkTextAppearance, `pad1`: guint) +proc pad2*(a: var TGtkTextAppearance): guint +proc set_pad2*(a: var TGtkTextAppearance, `pad2`: guint) +proc pad3*(a: var TGtkTextAppearance): guint +proc set_pad3*(a: var TGtkTextAppearance, `pad3`: guint) +proc pad4*(a: var TGtkTextAppearance): guint +proc set_pad4*(a: var TGtkTextAppearance, `pad4`: guint) +const + bm_TGtkTextAttributes_invisible* = 0x00000001 + bp_TGtkTextAttributes_invisible* = 0 + bm_TGtkTextAttributes_bg_full_height* = 0x00000002 + bp_TGtkTextAttributes_bg_full_height* = 1 + bm_TGtkTextAttributes_editable* = 0x00000004 + bp_TGtkTextAttributes_editable* = 2 + bm_TGtkTextAttributes_realized* = 0x00000008 + bp_TGtkTextAttributes_realized* = 3 + bm_TGtkTextAttributes_pad1* = 0x00000010 + bp_TGtkTextAttributes_pad1* = 4 + bm_TGtkTextAttributes_pad2* = 0x00000020 + bp_TGtkTextAttributes_pad2* = 5 + bm_TGtkTextAttributes_pad3* = 0x00000040 + bp_TGtkTextAttributes_pad3* = 6 + bm_TGtkTextAttributes_pad4* = 0x00000080 + bp_TGtkTextAttributes_pad4* = 7 + +proc invisible*(a: var TGtkTextAttributes): guint +proc set_invisible*(a: var TGtkTextAttributes, `invisible`: guint) +proc bg_full_height*(a: var TGtkTextAttributes): guint +proc set_bg_full_height*(a: var TGtkTextAttributes, `bg_full_height`: guint) +proc editable*(a: var TGtkTextAttributes): guint +proc set_editable*(a: var TGtkTextAttributes, `editable`: guint) +proc realized*(a: var TGtkTextAttributes): guint +proc set_realized*(a: var TGtkTextAttributes, `realized`: guint) +proc pad1*(a: var TGtkTextAttributes): guint +proc set_pad1*(a: var TGtkTextAttributes, `pad1`: guint) +proc pad2*(a: var TGtkTextAttributes): guint +proc set_pad2*(a: var TGtkTextAttributes, `pad2`: guint) +proc pad3*(a: var TGtkTextAttributes): guint +proc set_pad3*(a: var TGtkTextAttributes, `pad3`: guint) +proc pad4*(a: var TGtkTextAttributes): guint +proc set_pad4*(a: var TGtkTextAttributes, `pad4`: guint) +proc GTK_TYPE_TEXT_TAG_TABLE*(): GType +proc GTK_TEXT_TAG_TABLE*(obj: pointer): PGtkTextTagTable +proc GTK_TEXT_TAG_TABLE_CLASS*(klass: pointer): PGtkTextTagTableClass +proc GTK_IS_TEXT_TAG_TABLE*(obj: pointer): bool +proc GTK_IS_TEXT_TAG_TABLE_CLASS*(klass: pointer): bool +proc GTK_TEXT_TAG_TABLE_GET_CLASS*(obj: pointer): PGtkTextTagTableClass +proc gtk_text_tag_table_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_tag_table_get_type".} +proc gtk_text_tag_table_new*(): PGtkTextTagTable{.cdecl, dynlib: gtklib, + importc: "gtk_text_tag_table_new".} +proc gtk_text_tag_table_add*(table: PGtkTextTagTable, tag: PGtkTextTag){.cdecl, + dynlib: gtklib, importc: "gtk_text_tag_table_add".} +proc gtk_text_tag_table_remove*(table: PGtkTextTagTable, tag: PGtkTextTag){. + cdecl, dynlib: gtklib, importc: "gtk_text_tag_table_remove".} +proc gtk_text_tag_table_lookup*(table: PGtkTextTagTable, name: cstring): PGtkTextTag{. + cdecl, dynlib: gtklib, importc: "gtk_text_tag_table_lookup".} +proc gtk_text_tag_table_foreach*(table: PGtkTextTagTable, + func_: TGtkTextTagTableForeach, data: gpointer){. + cdecl, dynlib: gtklib, importc: "gtk_text_tag_table_foreach".} +proc gtk_text_tag_table_get_size*(table: PGtkTextTagTable): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_tag_table_get_size".} +proc gtk_text_tag_table_add_buffer*(table: PGtkTextTagTable, buffer: gpointer){. + cdecl, dynlib: gtklib, importc: "_gtk_text_tag_table_add_buffer".} +proc gtk_text_tag_table_remove_buffer*(table: PGtkTextTagTable, + buffer: gpointer){.cdecl, dynlib: gtklib, + importc: "_gtk_text_tag_table_remove_buffer".} +proc GTK_TYPE_TEXT_MARK*(): GType +proc GTK_TEXT_MARK*(anObject: pointer): PGtkTextMark +proc GTK_TEXT_MARK_CLASS*(klass: pointer): PGtkTextMarkClass +proc GTK_IS_TEXT_MARK*(anObject: pointer): bool +proc GTK_IS_TEXT_MARK_CLASS*(klass: pointer): bool +proc GTK_TEXT_MARK_GET_CLASS*(obj: pointer): PGtkTextMarkClass +proc gtk_text_mark_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_mark_get_type".} +proc gtk_text_mark_set_visible*(mark: PGtkTextMark, setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_mark_set_visible".} +proc gtk_text_mark_get_visible*(mark: PGtkTextMark): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_mark_get_visible".} +proc gtk_text_mark_get_name*(mark: PGtkTextMark): cstring{.cdecl, dynlib: gtklib, + importc: "gtk_text_mark_get_name".} +proc gtk_text_mark_get_deleted*(mark: PGtkTextMark): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_mark_get_deleted".} +proc gtk_text_mark_get_buffer*(mark: PGtkTextMark): PGtkTextBuffer{.cdecl, + dynlib: gtklib, importc: "gtk_text_mark_get_buffer".} +proc gtk_text_mark_get_left_gravity*(mark: PGtkTextMark): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_mark_get_left_gravity".} +const + bm_TGtkTextMarkBody_visible* = 0x00000001 + bp_TGtkTextMarkBody_visible* = 0 + bm_TGtkTextMarkBody_not_deleteable* = 0x00000002 + bp_TGtkTextMarkBody_not_deleteable* = 1 + +proc visible*(a: var TGtkTextMarkBody): guint +proc set_visible*(a: var TGtkTextMarkBody, `visible`: guint) +proc not_deleteable*(a: var TGtkTextMarkBody): guint +proc set_not_deleteable*(a: var TGtkTextMarkBody, `not_deleteable`: guint) +proc gtk_mark_segment_new*(tree: PGtkTextBTree, left_gravity: gboolean, + name: cstring): PGtkTextLineSegment{.cdecl, + dynlib: gtklib, importc: "_gtk_mark_segment_new".} +proc GTK_TYPE_TEXT_CHILD_ANCHOR*(): GType +proc GTK_TEXT_CHILD_ANCHOR*(anObject: pointer): PGtkTextChildAnchor +proc GTK_TEXT_CHILD_ANCHOR_CLASS*(klass: pointer): PGtkTextChildAnchorClass +proc GTK_IS_TEXT_CHILD_ANCHOR*(anObject: pointer): bool +proc GTK_IS_TEXT_CHILD_ANCHOR_CLASS*(klass: pointer): bool +proc GTK_TEXT_CHILD_ANCHOR_GET_CLASS*(obj: pointer): PGtkTextChildAnchorClass +proc gtk_text_child_anchor_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_child_anchor_get_type".} +proc gtk_text_child_anchor_new*(): PGtkTextChildAnchor{.cdecl, dynlib: gtklib, + importc: "gtk_text_child_anchor_new".} +proc gtk_text_child_anchor_get_widgets*(anchor: PGtkTextChildAnchor): PGList{. + cdecl, dynlib: gtklib, importc: "gtk_text_child_anchor_get_widgets".} +proc gtk_text_child_anchor_get_deleted*(anchor: PGtkTextChildAnchor): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_child_anchor_get_deleted".} +proc gtk_pixbuf_segment_new*(pixbuf: PGdkPixbuf): PGtkTextLineSegment{.cdecl, + dynlib: gtklib, importc: "_gtk_pixbuf_segment_new".} +proc gtk_widget_segment_new*(anchor: PGtkTextChildAnchor): PGtkTextLineSegment{. + cdecl, dynlib: gtklib, importc: "_gtk_widget_segment_new".} +proc gtk_widget_segment_add*(widget_segment: PGtkTextLineSegment, + child: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "_gtk_widget_segment_add".} +proc gtk_widget_segment_remove*(widget_segment: PGtkTextLineSegment, + child: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "_gtk_widget_segment_remove".} +proc gtk_widget_segment_ref*(widget_segment: PGtkTextLineSegment){.cdecl, + dynlib: gtklib, importc: "_gtk_widget_segment_ref".} +proc gtk_widget_segment_unref*(widget_segment: PGtkTextLineSegment){.cdecl, + dynlib: gtklib, importc: "_gtk_widget_segment_unref".} +proc gtk_anchored_child_get_layout*(child: PGtkWidget): PGtkTextLayout{.cdecl, + dynlib: gtklib, importc: "_gtk_anchored_child_get_layout".} +proc gtk_text_line_segment_split*(iter: PGtkTextIter): PGtkTextLineSegment{. + cdecl, dynlib: gtklib, importc: "gtk_text_line_segment_split".} +proc gtk_char_segment_new*(text: cstring, len: guint): PGtkTextLineSegment{. + cdecl, dynlib: gtklib, importc: "_gtk_char_segment_new".} +proc gtk_char_segment_new_from_two_strings*(text1: cstring, len1: guint, + text2: cstring, len2: guint): PGtkTextLineSegment{.cdecl, dynlib: gtklib, + importc: "_gtk_char_segment_new_from_two_strings".} +proc gtk_toggle_segment_new*(info: PGtkTextTagInfo, StateOn: gboolean): PGtkTextLineSegment{. + cdecl, dynlib: gtklib, importc: "_gtk_toggle_segment_new".} +proc gtk_text_btree_new*(table: PGtkTextTagTable, buffer: PGtkTextBuffer): PGtkTextBTree{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_new".} +proc gtk_text_btree_ref*(tree: PGtkTextBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_ref".} +proc gtk_text_btree_unref*(tree: PGtkTextBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_unref".} +proc gtk_text_btree_get_buffer*(tree: PGtkTextBTree): PGtkTextBuffer{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_buffer".} +proc gtk_text_btree_get_chars_changed_stamp*(tree: PGtkTextBTree): guint{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_chars_changed_stamp".} +proc gtk_text_btree_get_segments_changed_stamp*(tree: PGtkTextBTree): guint{. + cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_segments_changed_stamp".} +proc gtk_text_btree_segments_changed*(tree: PGtkTextBTree){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_segments_changed".} +proc gtk_text_btree_is_end*(tree: PGtkTextBTree, line: PGtkTextLine, + seg: PGtkTextLineSegment, byte_index: int32, + char_offset: int32): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_is_end".} +proc gtk_text_btree_delete*(start: PGtkTextIter, theEnd: PGtkTextIter){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_delete".} +proc gtk_text_btree_insert*(iter: PGtkTextIter, text: cstring, len: gint){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_insert".} +proc gtk_text_btree_insert_pixbuf*(iter: PGtkTextIter, pixbuf: PGdkPixbuf){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_insert_pixbuf".} +proc gtk_text_btree_insert_child_anchor*(iter: PGtkTextIter, + anchor: PGtkTextChildAnchor){.cdecl, dynlib: gtklib, importc: "_gtk_text_btree_insert_child_anchor".} +proc gtk_text_btree_unregister_child_anchor*(anchor: PGtkTextChildAnchor){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_unregister_child_anchor".} +proc gtk_text_btree_find_line_by_y*(tree: PGtkTextBTree, view_id: gpointer, + ypixel: gint, line_top_y: Pgint): PGtkTextLine{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_find_line_by_y".} +proc gtk_text_btree_find_line_top*(tree: PGtkTextBTree, line: PGtkTextLine, + view_id: gpointer): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_find_line_top".} +proc gtk_text_btree_add_view*(tree: PGtkTextBTree, layout: PGtkTextLayout){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_add_view".} +proc gtk_text_btree_remove_view*(tree: PGtkTextBTree, view_id: gpointer){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_remove_view".} +proc gtk_text_btree_invalidate_region*(tree: PGtkTextBTree, + start: PGtkTextIter, theEnd: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_invalidate_region".} +proc gtk_text_btree_get_view_size*(tree: PGtkTextBTree, view_id: gpointer, + width: Pgint, height: Pgint){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_view_size".} +proc gtk_text_btree_is_valid*(tree: PGtkTextBTree, view_id: gpointer): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_is_valid".} +proc gtk_text_btree_validate*(tree: PGtkTextBTree, view_id: gpointer, + max_pixels: gint, y: Pgint, old_height: Pgint, + new_height: Pgint): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_validate".} +proc gtk_text_btree_validate_line*(tree: PGtkTextBTree, line: PGtkTextLine, + view_id: gpointer){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_validate_line".} +proc gtk_text_btree_tag*(start: PGtkTextIter, theEnd: PGtkTextIter, + tag: PGtkTextTag, apply: gboolean){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_tag".} +proc gtk_text_btree_get_line*(tree: PGtkTextBTree, line_number: gint, + real_line_number: Pgint): PGtkTextLine{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_line".} +proc gtk_text_btree_get_line_no_last*(tree: PGtkTextBTree, line_number: gint, + real_line_number: Pgint): PGtkTextLine{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_line_no_last".} +proc gtk_text_btree_get_end_iter_line*(tree: PGtkTextBTree): PGtkTextLine{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_end_iter_line".} +proc gtk_text_btree_get_line_at_char*(tree: PGtkTextBTree, char_index: gint, + line_start_index: Pgint, + real_char_index: Pgint): PGtkTextLine{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_line_at_char".} +proc gtk_text_btree_get_tags*(iter: PGtkTextIter, num_tags: Pgint): PPGtkTextTag{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_tags".} +proc gtk_text_btree_get_text*(start: PGtkTextIter, theEnd: PGtkTextIter, + include_hidden: gboolean, + include_nonchars: gboolean): cstring{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_text".} +proc gtk_text_btree_line_count*(tree: PGtkTextBTree): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_line_count".} +proc gtk_text_btree_char_count*(tree: PGtkTextBTree): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_char_count".} +proc gtk_text_btree_char_is_invisible*(iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_char_is_invisible".} +proc gtk_text_btree_get_iter_at_char*(tree: PGtkTextBTree, iter: PGtkTextIter, + char_index: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_iter_at_char".} +proc gtk_text_btree_get_iter_at_line_char*(tree: PGtkTextBTree, + iter: PGtkTextIter, line_number: gint, char_index: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_iter_at_line_char".} +proc gtk_text_btree_get_iter_at_line_byte*(tree: PGtkTextBTree, + iter: PGtkTextIter, line_number: gint, byte_index: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_iter_at_line_byte".} +proc gtk_text_btree_get_iter_from_string*(tree: PGtkTextBTree, + iter: PGtkTextIter, `string`: cstring): gboolean{.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_iter_from_string".} +proc gtk_text_btree_get_iter_at_mark_name*(tree: PGtkTextBTree, + iter: PGtkTextIter, mark_name: cstring): gboolean{.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_iter_at_mark_name".} +proc gtk_text_btree_get_iter_at_mark*(tree: PGtkTextBTree, iter: PGtkTextIter, + mark: PGtkTextMark){.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_get_iter_at_mark".} +proc gtk_text_btree_get_end_iter*(tree: PGtkTextBTree, iter: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_end_iter".} +proc gtk_text_btree_get_iter_at_line*(tree: PGtkTextBTree, iter: PGtkTextIter, + line: PGtkTextLine, byte_offset: gint){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_iter_at_line".} +proc gtk_text_btree_get_iter_at_first_toggle*(tree: PGtkTextBTree, + iter: PGtkTextIter, tag: PGtkTextTag): gboolean{.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_iter_at_first_toggle".} +proc gtk_text_btree_get_iter_at_last_toggle*(tree: PGtkTextBTree, + iter: PGtkTextIter, tag: PGtkTextTag): gboolean{.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_iter_at_last_toggle".} +proc gtk_text_btree_get_iter_at_child_anchor*(tree: PGtkTextBTree, + iter: PGtkTextIter, anchor: PGtkTextChildAnchor){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_iter_at_child_anchor".} +proc gtk_text_btree_set_mark*(tree: PGtkTextBTree, + existing_mark: PGtkTextMark, name: cstring, + left_gravity: gboolean, index: PGtkTextIter, + should_exist: gboolean): PGtkTextMark{.cdecl, + dynlib: gtklib, importc: "_gtk_text_btree_set_mark".} +proc gtk_text_btree_remove_mark_by_name*(tree: PGtkTextBTree, name: cstring){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_remove_mark_by_name".} +proc gtk_text_btree_remove_mark*(tree: PGtkTextBTree, segment: PGtkTextMark){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_remove_mark".} +proc gtk_text_btree_get_selection_bounds*(tree: PGtkTextBTree, + start: PGtkTextIter, theEnd: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_get_selection_bounds".} +proc gtk_text_btree_place_cursor*(tree: PGtkTextBTree, `where`: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_place_cursor".} +proc gtk_text_btree_mark_is_insert*(tree: PGtkTextBTree, segment: PGtkTextMark): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_mark_is_insert".} +proc gtk_text_btree_mark_is_selection_bound*(tree: PGtkTextBTree, + segment: PGtkTextMark): gboolean{.cdecl, dynlib: gtklib, importc: "_gtk_text_btree_mark_is_selection_bound".} +proc gtk_text_btree_get_mark_by_name*(tree: PGtkTextBTree, name: cstring): PGtkTextMark{. + cdecl, dynlib: gtklib, importc: "_gtk_text_btree_get_mark_by_name".} +proc gtk_text_btree_first_could_contain_tag*(tree: PGtkTextBTree, + tag: PGtkTextTag): PGtkTextLine{.cdecl, dynlib: gtklib, importc: "_gtk_text_btree_first_could_contain_tag".} +proc gtk_text_btree_last_could_contain_tag*(tree: PGtkTextBTree, + tag: PGtkTextTag): PGtkTextLine{.cdecl, dynlib: gtklib, importc: "_gtk_text_btree_last_could_contain_tag".} +const + bm_TGtkTextLineData_width* = 0x00FFFFFF + bp_TGtkTextLineData_width* = 0 + bm_TGtkTextLineData_valid* = 0xFF000000 + bp_TGtkTextLineData_valid* = 24 + +proc width*(a: PGtkTextLineData): gint +proc set_width*(a: PGtkTextLineData, NewWidth: gint) +proc valid*(a: PGtkTextLineData): gint +proc set_valid*(a: PGtkTextLineData, `valid`: gint) +proc gtk_text_line_get_number*(line: PGtkTextLine): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_get_number".} +proc gtk_text_line_char_has_tag*(line: PGtkTextLine, tree: PGtkTextBTree, + char_in_line: gint, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_char_has_tag".} +proc gtk_text_line_byte_has_tag*(line: PGtkTextLine, tree: PGtkTextBTree, + byte_in_line: gint, tag: PGtkTextTag): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_byte_has_tag".} +proc gtk_text_line_is_last*(line: PGtkTextLine, tree: PGtkTextBTree): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_is_last".} +proc gtk_text_line_contains_end_iter*(line: PGtkTextLine, tree: PGtkTextBTree): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_contains_end_iter".} +proc gtk_text_line_next*(line: PGtkTextLine): PGtkTextLine{.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_next".} +proc gtk_text_line_next_excluding_last*(line: PGtkTextLine): PGtkTextLine{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_next_excluding_last".} +proc gtk_text_line_previous*(line: PGtkTextLine): PGtkTextLine{.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_previous".} +proc gtk_text_line_add_data*(line: PGtkTextLine, data: PGtkTextLineData){. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_add_data".} +proc gtk_text_line_remove_data*(line: PGtkTextLine, view_id: gpointer): gpointer{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_remove_data".} +proc gtk_text_line_get_data*(line: PGtkTextLine, view_id: gpointer): gpointer{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_get_data".} +proc gtk_text_line_invalidate_wrap*(line: PGtkTextLine, ld: PGtkTextLineData){. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_invalidate_wrap".} +proc gtk_text_line_char_count*(line: PGtkTextLine): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_char_count".} +proc gtk_text_line_byte_count*(line: PGtkTextLine): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_byte_count".} +proc gtk_text_line_char_index*(line: PGtkTextLine): gint{.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_char_index".} +proc gtk_text_line_byte_to_segment*(line: PGtkTextLine, byte_offset: gint, + seg_offset: Pgint): PGtkTextLineSegment{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_byte_to_segment".} +proc gtk_text_line_char_to_segment*(line: PGtkTextLine, char_offset: gint, + seg_offset: Pgint): PGtkTextLineSegment{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_char_to_segment".} +proc gtk_text_line_byte_to_char_offsets*(line: PGtkTextLine, + byte_offset: gint, line_char_offset: Pgint, seg_char_offset: Pgint){.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_byte_to_char_offsets".} +proc gtk_text_line_char_to_byte_offsets*(line: PGtkTextLine, + char_offset: gint, line_byte_offset: Pgint, seg_byte_offset: Pgint){.cdecl, + dynlib: gtklib, importc: "_gtk_text_line_char_to_byte_offsets".} +proc gtk_text_line_byte_to_any_segment*(line: PGtkTextLine, byte_offset: gint, + seg_offset: Pgint): PGtkTextLineSegment{.cdecl, dynlib: gtklib, + importc: "_gtk_text_line_byte_to_any_segment".} +proc gtk_text_line_char_to_any_segment*(line: PGtkTextLine, char_offset: gint, + seg_offset: Pgint): PGtkTextLineSegment{.cdecl, dynlib: gtklib, + importc: "_gtk_text_line_char_to_any_segment".} +proc gtk_text_line_byte_to_char*(line: PGtkTextLine, byte_offset: gint): gint{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_byte_to_char".} +proc gtk_text_line_char_to_byte*(line: PGtkTextLine, char_offset: gint): gint{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_char_to_byte".} +proc gtk_text_line_next_could_contain_tag*(line: PGtkTextLine, + tree: PGtkTextBTree, tag: PGtkTextTag): PGtkTextLine{.cdecl, dynlib: gtklib, + importc: "_gtk_text_line_next_could_contain_tag".} +proc gtk_text_line_previous_could_contain_tag*(line: PGtkTextLine, + tree: PGtkTextBTree, tag: PGtkTextTag): PGtkTextLine{.cdecl, dynlib: gtklib, + importc: "_gtk_text_line_previous_could_contain_tag".} +proc gtk_text_line_data_new*(layout: PGtkTextLayout, line: PGtkTextLine): PGtkTextLineData{. + cdecl, dynlib: gtklib, importc: "_gtk_text_line_data_new".} +proc gtk_text_btree_check*(tree: PGtkTextBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_check".} +proc gtk_text_btree_spew*(tree: PGtkTextBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_spew".} +proc gtk_toggle_segment_check_func*(segPtr: PGtkTextLineSegment, + line: PGtkTextLine){.cdecl, + dynlib: gtklib, importc: "_gtk_toggle_segment_check_func".} +proc gtk_change_node_toggle_count*(node_: PGtkTextBTreeNode, + info: PGtkTextTagInfo, delta: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_change_node_toggle_count".} +proc gtk_text_btree_release_mark_segment*(tree: PGtkTextBTree, + segment: PGtkTextLineSegment){.cdecl, dynlib: gtklib, importc: "_gtk_text_btree_release_mark_segment".} +proc gtk_text_btree_notify_will_remove_tag*(tree: PGtkTextBTree, + tag: PGtkTextTag){.cdecl, dynlib: gtklib, + importc: "_gtk_text_btree_notify_will_remove_tag".} +const + bm_TGtkTextBuffer_modified* = 0x00000001 + bp_TGtkTextBuffer_modified* = 0 + +proc GTK_TYPE_TEXT_BUFFER*(): GType +proc GTK_TEXT_BUFFER*(obj: pointer): PGtkTextBuffer +proc GTK_TEXT_BUFFER_CLASS*(klass: pointer): PGtkTextBufferClass +proc GTK_IS_TEXT_BUFFER*(obj: pointer): bool +proc GTK_IS_TEXT_BUFFER_CLASS*(klass: pointer): bool +proc GTK_TEXT_BUFFER_GET_CLASS*(obj: pointer): PGtkTextBufferClass +proc modified*(a: var TGtkTextBuffer): guint +proc set_modified*(a: var TGtkTextBuffer, `modified`: guint) +proc gtk_text_buffer_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_get_type".} +proc gtk_text_buffer_new*(table: PGtkTextTagTable): PGtkTextBuffer{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_new".} +proc gtk_text_buffer_get_line_count*(buffer: PGtkTextBuffer): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_line_count".} +proc gtk_text_buffer_get_char_count*(buffer: PGtkTextBuffer): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_char_count".} +proc gtk_text_buffer_get_tag_table*(buffer: PGtkTextBuffer): PGtkTextTagTable{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_tag_table".} +proc gtk_text_buffer_set_text*(buffer: PGtkTextBuffer, text: cstring, len: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_set_text".} +proc gtk_text_buffer_insert*(buffer: PGtkTextBuffer, iter: PGtkTextIter, + text: cstring, len: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_insert".} +proc gtk_text_buffer_insert_at_cursor*(buffer: PGtkTextBuffer, text: cstring, + len: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_insert_at_cursor".} +proc gtk_text_buffer_insert_interactive*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, text: cstring, len: gint, default_editable: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_insert_interactive".} +proc gtk_text_buffer_insert_interactive_at_cursor*(buffer: PGtkTextBuffer, + text: cstring, len: gint, default_editable: gboolean): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_insert_interactive_at_cursor".} +proc gtk_text_buffer_insert_range*(buffer: PGtkTextBuffer, iter: PGtkTextIter, + start: PGtkTextIter, theEnd: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_insert_range".} +proc gtk_text_buffer_insert_range_interactive*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, start: PGtkTextIter, theEnd: PGtkTextIter, + default_editable: gboolean): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_insert_range_interactive".} +proc gtk_text_buffer_delete*(buffer: PGtkTextBuffer, start: PGtkTextIter, + theEnd: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_delete".} +proc gtk_text_buffer_delete_interactive*(buffer: PGtkTextBuffer, + start_iter: PGtkTextIter, end_iter: PGtkTextIter, default_editable: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_delete_interactive".} +proc gtk_text_buffer_get_text*(buffer: PGtkTextBuffer, start: PGtkTextIter, + theEnd: PGtkTextIter, + include_hidden_chars: gboolean): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_text".} +proc gtk_text_buffer_get_slice*(buffer: PGtkTextBuffer, start: PGtkTextIter, + theEnd: PGtkTextIter, + include_hidden_chars: gboolean): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_slice".} +proc gtk_text_buffer_insert_pixbuf*(buffer: PGtkTextBuffer, iter: PGtkTextIter, + pixbuf: PGdkPixbuf){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_insert_pixbuf".} +proc gtk_text_buffer_insert_child_anchor*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, anchor: PGtkTextChildAnchor){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_insert_child_anchor".} +proc gtk_text_buffer_create_child_anchor*(buffer: PGtkTextBuffer, + iter: PGtkTextIter): PGtkTextChildAnchor{.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_create_child_anchor".} +proc gtk_text_buffer_create_mark*(buffer: PGtkTextBuffer, mark_name: cstring, + `where`: PGtkTextIter, left_gravity: gboolean): PGtkTextMark{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_create_mark".} +proc gtk_text_buffer_move_mark*(buffer: PGtkTextBuffer, mark: PGtkTextMark, + `where`: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_move_mark".} +proc gtk_text_buffer_delete_mark*(buffer: PGtkTextBuffer, mark: PGtkTextMark){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_delete_mark".} +proc gtk_text_buffer_get_mark*(buffer: PGtkTextBuffer, name: cstring): PGtkTextMark{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_mark".} +proc gtk_text_buffer_move_mark_by_name*(buffer: PGtkTextBuffer, name: cstring, + `where`: PGtkTextIter){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_move_mark_by_name".} +proc gtk_text_buffer_delete_mark_by_name*(buffer: PGtkTextBuffer, name: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_delete_mark_by_name".} +proc gtk_text_buffer_get_insert*(buffer: PGtkTextBuffer): PGtkTextMark{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_insert".} +proc gtk_text_buffer_get_selection_bound*(buffer: PGtkTextBuffer): PGtkTextMark{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_selection_bound".} +proc gtk_text_buffer_place_cursor*(buffer: PGtkTextBuffer, `where`: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_place_cursor".} +proc gtk_text_buffer_apply_tag*(buffer: PGtkTextBuffer, tag: PGtkTextTag, + start: PGtkTextIter, theEnd: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_apply_tag".} +proc gtk_text_buffer_remove_tag*(buffer: PGtkTextBuffer, tag: PGtkTextTag, + start: PGtkTextIter, theEnd: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_remove_tag".} +proc gtk_text_buffer_apply_tag_by_name*(buffer: PGtkTextBuffer, name: cstring, + start: PGtkTextIter, + theEnd: PGtkTextIter){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_apply_tag_by_name".} +proc gtk_text_buffer_remove_tag_by_name*(buffer: PGtkTextBuffer, name: cstring, + start: PGtkTextIter, theEnd: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_remove_tag_by_name".} +proc gtk_text_buffer_remove_all_tags*(buffer: PGtkTextBuffer, + start: PGtkTextIter, theEnd: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_remove_all_tags".} +proc gtk_text_buffer_get_iter_at_line_offset*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, line_number: gint, char_offset: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_iter_at_line_offset".} +proc gtk_text_buffer_get_iter_at_line_index*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, line_number: gint, byte_index: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_iter_at_line_index".} +proc gtk_text_buffer_get_iter_at_offset*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, char_offset: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_get_iter_at_offset".} +proc gtk_text_buffer_get_iter_at_line*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, line_number: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_iter_at_line".} +proc gtk_text_buffer_get_start_iter*(buffer: PGtkTextBuffer, iter: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_start_iter".} +proc gtk_text_buffer_get_end_iter*(buffer: PGtkTextBuffer, iter: PGtkTextIter){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_end_iter".} +proc gtk_text_buffer_get_bounds*(buffer: PGtkTextBuffer, start: PGtkTextIter, + theEnd: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_get_bounds".} +proc gtk_text_buffer_get_iter_at_mark*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, mark: PGtkTextMark){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_get_iter_at_mark".} +proc gtk_text_buffer_get_iter_at_child_anchor*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, anchor: PGtkTextChildAnchor){.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_get_iter_at_child_anchor".} +proc gtk_text_buffer_get_modified*(buffer: PGtkTextBuffer): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_get_modified".} +proc gtk_text_buffer_set_modified*(buffer: PGtkTextBuffer, setting: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_set_modified".} +proc gtk_text_buffer_add_selection_clipboard*(buffer: PGtkTextBuffer, + clipboard: PGtkClipboard){.cdecl, dynlib: gtklib, importc: "gtk_text_buffer_add_selection_clipboard".} +proc gtk_text_buffer_remove_selection_clipboard*(buffer: PGtkTextBuffer, + clipboard: PGtkClipboard){.cdecl, dynlib: gtklib, importc: "gtk_text_buffer_remove_selection_clipboard".} +proc gtk_text_buffer_cut_clipboard*(buffer: PGtkTextBuffer, + clipboard: PGtkClipboard, + default_editable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_cut_clipboard".} +proc gtk_text_buffer_copy_clipboard*(buffer: PGtkTextBuffer, + clipboard: PGtkClipboard){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_copy_clipboard".} +proc gtk_text_buffer_paste_clipboard*(buffer: PGtkTextBuffer, + clipboard: PGtkClipboard, + override_location: PGtkTextIter, + default_editable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_paste_clipboard".} +proc gtk_text_buffer_get_selection_bounds*(buffer: PGtkTextBuffer, + start: PGtkTextIter, theEnd: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_text_buffer_get_selection_bounds".} +proc gtk_text_buffer_delete_selection*(buffer: PGtkTextBuffer, + interactive: gboolean, + default_editable: gboolean): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_buffer_delete_selection".} +proc gtk_text_buffer_begin_user_action*(buffer: PGtkTextBuffer){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_begin_user_action".} +proc gtk_text_buffer_end_user_action*(buffer: PGtkTextBuffer){.cdecl, + dynlib: gtklib, importc: "gtk_text_buffer_end_user_action".} +proc gtk_text_buffer_spew*(buffer: PGtkTextBuffer){.cdecl, dynlib: gtklib, + importc: "_gtk_text_buffer_spew".} +proc gtk_text_buffer_get_btree*(buffer: PGtkTextBuffer): PGtkTextBTree{.cdecl, + dynlib: gtklib, importc: "_gtk_text_buffer_get_btree".} +proc gtk_text_buffer_get_line_log_attrs*(buffer: PGtkTextBuffer, + anywhere_in_line: PGtkTextIter, char_len: Pgint): PPangoLogAttr{.cdecl, + dynlib: gtklib, importc: "_gtk_text_buffer_get_line_log_attrs".} +proc gtk_text_buffer_notify_will_remove_tag*(buffer: PGtkTextBuffer, + tag: PGtkTextTag){.cdecl, dynlib: gtklib, + importc: "_gtk_text_buffer_notify_will_remove_tag".} +proc GTK_TYPE_TEXT_LAYOUT*(): GType +proc GTK_TEXT_LAYOUT*(obj: pointer): PGtkTextLayout +proc GTK_TEXT_LAYOUT_CLASS*(klass: pointer): PGtkTextLayoutClass +proc GTK_IS_TEXT_LAYOUT*(obj: pointer): bool +proc GTK_IS_TEXT_LAYOUT_CLASS*(klass: pointer): bool +proc GTK_TEXT_LAYOUT_GET_CLASS*(obj: pointer): PGtkTextLayoutClass +const + bm_TGtkTextLayout_cursor_visible* = 0x00000001 + bp_TGtkTextLayout_cursor_visible* = 0 + bm_TGtkTextLayout_cursor_direction* = 0x00000006 + bp_TGtkTextLayout_cursor_direction* = 1 + +proc cursor_visible*(a: var TGtkTextLayout): guint +proc set_cursor_visible*(a: var TGtkTextLayout, `cursor_visible`: guint) +proc cursor_direction*(a: var TGtkTextLayout): gint +proc set_cursor_direction*(a: var TGtkTextLayout, `cursor_direction`: gint) +const + bm_TGtkTextCursorDisplay_is_strong* = 0x00000001 + bp_TGtkTextCursorDisplay_is_strong* = 0 + bm_TGtkTextCursorDisplay_is_weak* = 0x00000002 + bp_TGtkTextCursorDisplay_is_weak* = 1 + +proc is_strong*(a: var TGtkTextCursorDisplay): guint +proc set_is_strong*(a: var TGtkTextCursorDisplay, `is_strong`: guint) +proc is_weak*(a: var TGtkTextCursorDisplay): guint +proc set_is_weak*(a: var TGtkTextCursorDisplay, `is_weak`: guint) +proc gtk_text_layout_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_get_type".} +proc gtk_text_layout_new*(): PGtkTextLayout{.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_new".} +proc gtk_text_layout_set_buffer*(layout: PGtkTextLayout, buffer: PGtkTextBuffer){. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_set_buffer".} +proc gtk_text_layout_get_buffer*(layout: PGtkTextLayout): PGtkTextBuffer{.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_get_buffer".} +proc gtk_text_layout_set_default_style*(layout: PGtkTextLayout, + values: PGtkTextAttributes){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_set_default_style".} +proc gtk_text_layout_set_contexts*(layout: PGtkTextLayout, + ltr_context: PPangoContext, + rtl_context: PPangoContext){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_set_contexts".} +proc gtk_text_layout_set_cursor_direction*(layout: PGtkTextLayout, + direction: TGtkTextDirection){.cdecl, dynlib: gtklib, importc: "gtk_text_layout_set_cursor_direction".} +proc gtk_text_layout_default_style_changed*(layout: PGtkTextLayout){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_default_style_changed".} +proc gtk_text_layout_set_screen_width*(layout: PGtkTextLayout, width: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_set_screen_width".} +proc gtk_text_layout_set_preedit_string*(layout: PGtkTextLayout, + preedit_string: cstring, preedit_attrs: PPangoAttrList, cursor_pos: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_set_preedit_string".} +proc gtk_text_layout_set_cursor_visible*(layout: PGtkTextLayout, + cursor_visible: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_set_cursor_visible".} +proc gtk_text_layout_get_cursor_visible*(layout: PGtkTextLayout): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_get_cursor_visible".} +proc gtk_text_layout_get_size*(layout: PGtkTextLayout, width: Pgint, + height: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_get_size".} +proc gtk_text_layout_get_lines*(layout: PGtkTextLayout, top_y: gint, + bottom_y: gint, first_line_y: Pgint): PGSList{. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_get_lines".} +proc gtk_text_layout_wrap_loop_start*(layout: PGtkTextLayout){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_wrap_loop_start".} +proc gtk_text_layout_wrap_loop_end*(layout: PGtkTextLayout){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_wrap_loop_end".} +proc gtk_text_layout_get_line_display*(layout: PGtkTextLayout, + line: PGtkTextLine, size_only: gboolean): PGtkTextLineDisplay{. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_get_line_display".} +proc gtk_text_layout_free_line_display*(layout: PGtkTextLayout, + display: PGtkTextLineDisplay){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_free_line_display".} +proc gtk_text_layout_get_line_at_y*(layout: PGtkTextLayout, + target_iter: PGtkTextIter, y: gint, + line_top: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_get_line_at_y".} +proc gtk_text_layout_get_iter_at_pixel*(layout: PGtkTextLayout, + iter: PGtkTextIter, x: gint, y: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_get_iter_at_pixel".} +proc gtk_text_layout_invalidate*(layout: PGtkTextLayout, start: PGtkTextIter, + theEnd: PGtkTextIter){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_invalidate".} +proc gtk_text_layout_free_line_data*(layout: PGtkTextLayout, line: PGtkTextLine, + line_data: PGtkTextLineData){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_free_line_data".} +proc gtk_text_layout_is_valid*(layout: PGtkTextLayout): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_is_valid".} +proc gtk_text_layout_validate_yrange*(layout: PGtkTextLayout, + anchor_line: PGtkTextIter, y0: gint, + y1: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_validate_yrange".} +proc gtk_text_layout_validate*(layout: PGtkTextLayout, max_pixels: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_validate".} +proc gtk_text_layout_wrap*(layout: PGtkTextLayout, line: PGtkTextLine, + line_data: PGtkTextLineData): PGtkTextLineData{. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_wrap".} +proc gtk_text_layout_changed*(layout: PGtkTextLayout, y: gint, old_height: gint, + new_height: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_changed".} +proc gtk_text_layout_get_iter_location*(layout: PGtkTextLayout, + iter: PGtkTextIter, rect: PGdkRectangle){. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_get_iter_location".} +proc gtk_text_layout_get_line_yrange*(layout: PGtkTextLayout, + iter: PGtkTextIter, y: Pgint, + height: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_get_line_yrange".} +proc gtk_text_layout_get_line_xrange*(layout: PGtkTextLayout, + iter: PGtkTextIter, x: Pgint, + width: Pgint){.cdecl, dynlib: gtklib, + importc: "_gtk_text_layout_get_line_xrange".} +proc gtk_text_layout_get_cursor_locations*(layout: PGtkTextLayout, + iter: PGtkTextIter, strong_pos: PGdkRectangle, weak_pos: PGdkRectangle){. + cdecl, dynlib: gtklib, importc: "gtk_text_layout_get_cursor_locations".} +proc gtk_text_layout_clamp_iter_to_vrange*(layout: PGtkTextLayout, + iter: PGtkTextIter, top: gint, bottom: gint): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_clamp_iter_to_vrange".} +proc gtk_text_layout_move_iter_to_line_end*(layout: PGtkTextLayout, + iter: PGtkTextIter, direction: gint): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_move_iter_to_line_end".} +proc gtk_text_layout_move_iter_to_previous_line*(layout: PGtkTextLayout, + iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_text_layout_move_iter_to_previous_line".} +proc gtk_text_layout_move_iter_to_next_line*(layout: PGtkTextLayout, + iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_text_layout_move_iter_to_next_line".} +proc gtk_text_layout_move_iter_to_x*(layout: PGtkTextLayout, iter: PGtkTextIter, + x: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_move_iter_to_x".} +proc gtk_text_layout_move_iter_visually*(layout: PGtkTextLayout, + iter: PGtkTextIter, count: gint): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_move_iter_visually".} +proc gtk_text_layout_iter_starts_line*(layout: PGtkTextLayout, + iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_iter_starts_line".} +proc gtk_text_layout_get_iter_at_line*(layout: PGtkTextLayout, + iter: PGtkTextIter, line: PGtkTextLine, + byte_offset: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_layout_get_iter_at_line".} +proc gtk_text_child_anchor_register_child*(anchor: PGtkTextChildAnchor, + child: PGtkWidget, layout: PGtkTextLayout){.cdecl, dynlib: gtklib, + importc: "gtk_text_child_anchor_register_child".} +proc gtk_text_child_anchor_unregister_child*(anchor: PGtkTextChildAnchor, + child: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_text_child_anchor_unregister_child".} +proc gtk_text_child_anchor_queue_resize*(anchor: PGtkTextChildAnchor, + layout: PGtkTextLayout){.cdecl, dynlib: gtklib, + importc: "gtk_text_child_anchor_queue_resize".} +proc gtk_text_anchored_child_set_layout*(child: PGtkWidget, + layout: PGtkTextLayout){.cdecl, dynlib: gtklib, + importc: "gtk_text_anchored_child_set_layout".} +proc gtk_text_layout_spew*(layout: PGtkTextLayout){.cdecl, dynlib: gtklib, + importc: "gtk_text_layout_spew".} +const # GTK_TEXT_VIEW_PRIORITY_VALIDATE* = GDK_PRIORITY_REDRAW + 5 + bm_TGtkTextView_editable* = 0x00000001 + bp_TGtkTextView_editable* = 0 + bm_TGtkTextView_overwrite_mode* = 0x00000002 + bp_TGtkTextView_overwrite_mode* = 1 + bm_TGtkTextView_cursor_visible* = 0x00000004 + bp_TGtkTextView_cursor_visible* = 2 + bm_TGtkTextView_need_im_reset* = 0x00000008 + bp_TGtkTextView_need_im_reset* = 3 + bm_TGtkTextView_just_selected_element* = 0x00000010 + bp_TGtkTextView_just_selected_element* = 4 + bm_TGtkTextView_disable_scroll_on_focus* = 0x00000020 + bp_TGtkTextView_disable_scroll_on_focus* = 5 + bm_TGtkTextView_onscreen_validated* = 0x00000040 + bp_TGtkTextView_onscreen_validated* = 6 + bm_TGtkTextView_mouse_cursor_obscured* = 0x00000080 + bp_TGtkTextView_mouse_cursor_obscured* = 7 + +proc GTK_TYPE_TEXT_VIEW*(): GType +proc GTK_TEXT_VIEW*(obj: pointer): PGtkTextView +proc GTK_TEXT_VIEW_CLASS*(klass: pointer): PGtkTextViewClass +proc GTK_IS_TEXT_VIEW*(obj: pointer): bool +proc GTK_IS_TEXT_VIEW_CLASS*(klass: pointer): bool +proc GTK_TEXT_VIEW_GET_CLASS*(obj: pointer): PGtkTextViewClass +proc editable*(a: var TGtkTextView): guint +proc set_editable*(a: var TGtkTextView, `editable`: guint) +proc overwrite_mode*(a: var TGtkTextView): guint +proc set_overwrite_mode*(a: var TGtkTextView, `overwrite_mode`: guint) +proc cursor_visible*(a: var TGtkTextView): guint +proc set_cursor_visible*(a: var TGtkTextView, `cursor_visible`: guint) +proc need_im_reset*(a: var TGtkTextView): guint +proc set_need_im_reset*(a: var TGtkTextView, `need_im_reset`: guint) +proc just_selected_element*(a: var TGtkTextView): guint +proc set_just_selected_element*(a: var TGtkTextView, + `just_selected_element`: guint) +proc disable_scroll_on_focus*(a: var TGtkTextView): guint +proc set_disable_scroll_on_focus*(a: var TGtkTextView, + `disable_scroll_on_focus`: guint) +proc onscreen_validated*(a: var TGtkTextView): guint +proc set_onscreen_validated*(a: var TGtkTextView, `onscreen_validated`: guint) +proc mouse_cursor_obscured*(a: var TGtkTextView): guint +proc set_mouse_cursor_obscured*(a: var TGtkTextView, + `mouse_cursor_obscured`: guint) +proc gtk_text_view_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_text_view_get_type".} +proc gtk_text_view_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_text_view_new".} +proc gtk_text_view_new_with_buffer*(buffer: PGtkTextBuffer): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_new_with_buffer".} +proc gtk_text_view_set_buffer*(text_view: PGtkTextView, buffer: PGtkTextBuffer){. + cdecl, dynlib: gtklib, importc: "gtk_text_view_set_buffer".} +proc gtk_text_view_get_buffer*(text_view: PGtkTextView): PGtkTextBuffer{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_buffer".} +proc gtk_text_view_scroll_to_iter*(text_view: PGtkTextView, iter: PGtkTextIter, + within_margin: gdouble, use_align: gboolean, + xalign: gdouble, yalign: gdouble): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_scroll_to_iter".} +proc gtk_text_view_scroll_to_mark*(text_view: PGtkTextView, mark: PGtkTextMark, + within_margin: gdouble, use_align: gboolean, + xalign: gdouble, yalign: gdouble){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_scroll_to_mark".} +proc gtk_text_view_scroll_mark_onscreen*(text_view: PGtkTextView, + mark: PGtkTextMark){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_scroll_mark_onscreen".} +proc gtk_text_view_move_mark_onscreen*(text_view: PGtkTextView, + mark: PGtkTextMark): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_move_mark_onscreen".} +proc gtk_text_view_place_cursor_onscreen*(text_view: PGtkTextView): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_place_cursor_onscreen".} +proc gtk_text_view_get_visible_rect*(text_view: PGtkTextView, + visible_rect: PGdkRectangle){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_visible_rect".} +proc gtk_text_view_set_cursor_visible*(text_view: PGtkTextView, + setting: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_set_cursor_visible".} +proc gtk_text_view_get_cursor_visible*(text_view: PGtkTextView): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_cursor_visible".} +proc gtk_text_view_get_iter_location*(text_view: PGtkTextView, + iter: PGtkTextIter, + location: PGdkRectangle){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_iter_location".} +proc gtk_text_view_get_iter_at_location*(text_view: PGtkTextView, + iter: PGtkTextIter, x: gint, y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_get_iter_at_location".} +proc gtk_text_view_get_line_yrange*(text_view: PGtkTextView, iter: PGtkTextIter, + y: Pgint, height: Pgint){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_line_yrange".} +proc gtk_text_view_get_line_at_y*(text_view: PGtkTextView, + target_iter: PGtkTextIter, y: gint, + line_top: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_get_line_at_y".} +proc gtk_text_view_buffer_to_window_coords*(text_view: PGtkTextView, + win: TGtkTextWindowType, buffer_x: gint, buffer_y: gint, window_x: Pgint, + window_y: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_buffer_to_window_coords".} +proc gtk_text_view_window_to_buffer_coords*(text_view: PGtkTextView, + win: TGtkTextWindowType, window_x: gint, window_y: gint, buffer_x: Pgint, + buffer_y: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_window_to_buffer_coords".} +proc gtk_text_view_get_window*(text_view: PGtkTextView, win: TGtkTextWindowType): PGdkWindow{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_window".} +proc gtk_text_view_get_window_type*(text_view: PGtkTextView, window: PGdkWindow): TGtkTextWindowType{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_window_type".} +proc gtk_text_view_set_border_window_size*(text_view: PGtkTextView, + thetype: TGtkTextWindowType, size: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_set_border_window_size".} +proc gtk_text_view_get_border_window_size*(text_view: PGtkTextView, + thetype: TGtkTextWindowType): gint{.cdecl, dynlib: gtklib, importc: "gtk_text_view_get_border_window_size".} +proc gtk_text_view_forward_display_line*(text_view: PGtkTextView, + iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_text_view_forward_display_line".} +proc gtk_text_view_backward_display_line*(text_view: PGtkTextView, + iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_text_view_backward_display_line".} +proc gtk_text_view_forward_display_line_end*(text_view: PGtkTextView, + iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_text_view_forward_display_line_end".} +proc gtk_text_view_backward_display_line_start*(text_view: PGtkTextView, + iter: PGtkTextIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_text_view_backward_display_line_start".} +proc gtk_text_view_starts_display_line*(text_view: PGtkTextView, + iter: PGtkTextIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_starts_display_line".} +proc gtk_text_view_move_visually*(text_view: PGtkTextView, iter: PGtkTextIter, + count: gint): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_text_view_move_visually".} +proc gtk_text_view_add_child_at_anchor*(text_view: PGtkTextView, + child: PGtkWidget, + anchor: PGtkTextChildAnchor){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_add_child_at_anchor".} +proc gtk_text_view_add_child_in_window*(text_view: PGtkTextView, + child: PGtkWidget, + which_window: TGtkTextWindowType, + xpos: gint, ypos: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_add_child_in_window".} +proc gtk_text_view_move_child*(text_view: PGtkTextView, child: PGtkWidget, + xpos: gint, ypos: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_move_child".} +proc gtk_text_view_set_wrap_mode*(text_view: PGtkTextView, + wrap_mode: TGtkWrapMode){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_set_wrap_mode".} +proc gtk_text_view_get_wrap_mode*(text_view: PGtkTextView): TGtkWrapMode{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_wrap_mode".} +proc gtk_text_view_set_editable*(text_view: PGtkTextView, setting: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_text_view_set_editable".} +proc gtk_text_view_get_editable*(text_view: PGtkTextView): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_editable".} +proc gtk_text_view_set_pixels_above_lines*(text_view: PGtkTextView, + pixels_above_lines: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_set_pixels_above_lines".} +proc gtk_text_view_get_pixels_above_lines*(text_view: PGtkTextView): gint{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_pixels_above_lines".} +proc gtk_text_view_set_pixels_below_lines*(text_view: PGtkTextView, + pixels_below_lines: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_set_pixels_below_lines".} +proc gtk_text_view_get_pixels_below_lines*(text_view: PGtkTextView): gint{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_pixels_below_lines".} +proc gtk_text_view_set_pixels_inside_wrap*(text_view: PGtkTextView, + pixels_inside_wrap: gint){.cdecl, dynlib: gtklib, + importc: "gtk_text_view_set_pixels_inside_wrap".} +proc gtk_text_view_get_pixels_inside_wrap*(text_view: PGtkTextView): gint{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_pixels_inside_wrap".} +proc gtk_text_view_set_justification*(text_view: PGtkTextView, + justification: TGtkJustification){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_set_justification".} +proc gtk_text_view_get_justification*(text_view: PGtkTextView): TGtkJustification{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_justification".} +proc gtk_text_view_set_left_margin*(text_view: PGtkTextView, left_margin: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_view_set_left_margin".} +proc gtk_text_view_get_left_margin*(text_view: PGtkTextView): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_left_margin".} +proc gtk_text_view_set_right_margin*(text_view: PGtkTextView, right_margin: gint){. + cdecl, dynlib: gtklib, importc: "gtk_text_view_set_right_margin".} +proc gtk_text_view_get_right_margin*(text_view: PGtkTextView): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_right_margin".} +proc gtk_text_view_set_indent*(text_view: PGtkTextView, indent: gint){.cdecl, + dynlib: gtklib, importc: "gtk_text_view_set_indent".} +proc gtk_text_view_get_indent*(text_view: PGtkTextView): gint{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_indent".} +proc gtk_text_view_set_tabs*(text_view: PGtkTextView, tabs: PPangoTabArray){. + cdecl, dynlib: gtklib, importc: "gtk_text_view_set_tabs".} +proc gtk_text_view_get_tabs*(text_view: PGtkTextView): PPangoTabArray{.cdecl, + dynlib: gtklib, importc: "gtk_text_view_get_tabs".} +proc gtk_text_view_get_default_attributes*(text_view: PGtkTextView): PGtkTextAttributes{. + cdecl, dynlib: gtklib, importc: "gtk_text_view_get_default_attributes".} +const + bm_TGtkTipsQuery_emit_always* = 0x00000001 + bp_TGtkTipsQuery_emit_always* = 0 + bm_TGtkTipsQuery_in_query* = 0x00000002 + bp_TGtkTipsQuery_in_query* = 1 + +proc GTK_TYPE_TIPS_QUERY*(): GType +proc GTK_TIPS_QUERY*(obj: pointer): PGtkTipsQuery +proc GTK_TIPS_QUERY_CLASS*(klass: pointer): PGtkTipsQueryClass +proc GTK_IS_TIPS_QUERY*(obj: pointer): bool +proc GTK_IS_TIPS_QUERY_CLASS*(klass: pointer): bool +proc GTK_TIPS_QUERY_GET_CLASS*(obj: pointer): PGtkTipsQueryClass +proc emit_always*(a: var TGtkTipsQuery): guint +proc set_emit_always*(a: var TGtkTipsQuery, `emit_always`: guint) +proc in_query*(a: var TGtkTipsQuery): guint +proc set_in_query*(a: var TGtkTipsQuery, `in_query`: guint) +proc gtk_tips_query_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tips_query_get_type".} +proc gtk_tips_query_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_tips_query_new".} +proc gtk_tips_query_start_query*(tips_query: PGtkTipsQuery){.cdecl, + dynlib: gtklib, importc: "gtk_tips_query_start_query".} +proc gtk_tips_query_stop_query*(tips_query: PGtkTipsQuery){.cdecl, + dynlib: gtklib, importc: "gtk_tips_query_stop_query".} +proc gtk_tips_query_set_caller*(tips_query: PGtkTipsQuery, caller: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_tips_query_set_caller".} +proc gtk_tips_query_set_labels*(tips_query: PGtkTipsQuery, + label_inactive: cstring, label_no_tip: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_tips_query_set_labels".} +const + bm_TGtkTooltips_delay* = 0x3FFFFFFF + bp_TGtkTooltips_delay* = 0 + bm_TGtkTooltips_enabled* = 0x40000000 + bp_TGtkTooltips_enabled* = 30 + bm_TGtkTooltips_have_grab* = 0x80000000 + bp_TGtkTooltips_have_grab* = 31 + bm_TGtkTooltips_use_sticky_delay* = 0x00000001 + bp_TGtkTooltips_use_sticky_delay* = 0 + +proc GTK_TYPE_TOOLTIPS*(): GType +proc GTK_TOOLTIPS*(obj: pointer): PGtkTooltips +proc GTK_TOOLTIPS_CLASS*(klass: pointer): PGtkTooltipsClass +proc GTK_IS_TOOLTIPS*(obj: pointer): bool +proc GTK_IS_TOOLTIPS_CLASS*(klass: pointer): bool +proc GTK_TOOLTIPS_GET_CLASS*(obj: pointer): PGtkTooltipsClass +proc delay*(a: var TGtkTooltips): guint +proc set_delay*(a: var TGtkTooltips, `delay`: guint) +proc enabled*(a: var TGtkTooltips): guint +proc set_enabled*(a: var TGtkTooltips, `enabled`: guint) +proc have_grab*(a: var TGtkTooltips): guint +proc set_have_grab*(a: var TGtkTooltips, `have_grab`: guint) +proc use_sticky_delay*(a: var TGtkTooltips): guint +proc set_use_sticky_delay*(a: var TGtkTooltips, `use_sticky_delay`: guint) +proc gtk_tooltips_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tooltips_get_type".} +proc gtk_tooltips_new*(): PGtkTooltips{.cdecl, dynlib: gtklib, + importc: "gtk_tooltips_new".} +proc gtk_tooltips_enable*(tooltips: PGtkTooltips){.cdecl, dynlib: gtklib, + importc: "gtk_tooltips_enable".} +proc gtk_tooltips_disable*(tooltips: PGtkTooltips){.cdecl, dynlib: gtklib, + importc: "gtk_tooltips_disable".} +proc gtk_tooltips_set_tip*(tooltips: PGtkTooltips, widget: PGtkWidget, + tip_text: cstring, tip_private: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_tooltips_set_tip".} +proc gtk_tooltips_data_get*(widget: PGtkWidget): PGtkTooltipsData{.cdecl, + dynlib: gtklib, importc: "gtk_tooltips_data_get".} +proc gtk_tooltips_force_window*(tooltips: PGtkTooltips){.cdecl, dynlib: gtklib, + importc: "gtk_tooltips_force_window".} +proc gtk_tooltips_toggle_keyboard_mode*(widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "_gtk_tooltips_toggle_keyboard_mode".} +const + bm_TGtkToolbar_style_set* = 0x00000001 + bp_TGtkToolbar_style_set* = 0 + bm_TGtkToolbar_icon_size_set* = 0x00000002 + bp_TGtkToolbar_icon_size_set* = 1 + +proc GTK_TYPE_TOOLBAR*(): GType +proc GTK_TOOLBAR*(obj: pointer): PGtkToolbar +proc GTK_TOOLBAR_CLASS*(klass: pointer): PGtkToolbarClass +proc GTK_IS_TOOLBAR*(obj: pointer): bool +proc GTK_IS_TOOLBAR_CLASS*(klass: pointer): bool +proc GTK_TOOLBAR_GET_CLASS*(obj: pointer): PGtkToolbarClass +proc style_set*(a: var TGtkToolbar): guint +proc set_style_set*(a: var TGtkToolbar, `style_set`: guint) +proc icon_size_set*(a: var TGtkToolbar): guint +proc set_icon_size_set*(a: var TGtkToolbar, `icon_size_set`: guint) +proc gtk_toolbar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_toolbar_get_type".} +proc gtk_toolbar_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_toolbar_new".} +proc gtk_toolbar_append_item*(toolbar: PGtkToolbar, text: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, icon: PGtkWidget, + callback: TGtkSignalFunc, user_data: gpointer): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_toolbar_append_item".} +proc gtk_toolbar_prepend_item*(toolbar: PGtkToolbar, text: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, icon: PGtkWidget, + callback: TGtkSignalFunc, user_data: gpointer): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_toolbar_prepend_item".} +proc gtk_toolbar_insert_item*(toolbar: PGtkToolbar, text: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, icon: PGtkWidget, + callback: TGtkSignalFunc, user_data: gpointer, + position: gint): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_insert_item".} +proc gtk_toolbar_insert_stock*(toolbar: PGtkToolbar, stock_id: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, + callback: TGtkSignalFunc, user_data: gpointer, + position: gint): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_insert_stock".} +proc gtk_toolbar_append_space*(toolbar: PGtkToolbar){.cdecl, dynlib: gtklib, + importc: "gtk_toolbar_append_space".} +proc gtk_toolbar_prepend_space*(toolbar: PGtkToolbar){.cdecl, dynlib: gtklib, + importc: "gtk_toolbar_prepend_space".} +proc gtk_toolbar_insert_space*(toolbar: PGtkToolbar, position: gint){.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_insert_space".} +proc gtk_toolbar_remove_space*(toolbar: PGtkToolbar, position: gint){.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_remove_space".} +proc gtk_toolbar_append_element*(toolbar: PGtkToolbar, + thetype: TGtkToolbarChildType, + widget: PGtkWidget, text: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, + icon: PGtkWidget, callback: TGtkSignalFunc, + user_data: gpointer): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_append_element".} +proc gtk_toolbar_prepend_element*(toolbar: PGtkToolbar, + thetype: TGtkToolbarChildType, + widget: PGtkWidget, text: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, + icon: PGtkWidget, callback: TGtkSignalFunc, + user_data: gpointer): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_prepend_element".} +proc gtk_toolbar_insert_element*(toolbar: PGtkToolbar, + thetype: TGtkToolbarChildType, + widget: PGtkWidget, text: cstring, + tooltip_text: cstring, + tooltip_private_text: cstring, + icon: PGtkWidget, callback: TGtkSignalFunc, + user_data: gpointer, position: gint): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_toolbar_insert_element".} +proc gtk_toolbar_append_widget*(toolbar: PGtkToolbar, widget: PGtkWidget, + tooltip_text: cstring, + tooltip_private_text: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_append_widget".} +proc gtk_toolbar_prepend_widget*(toolbar: PGtkToolbar, widget: PGtkWidget, + tooltip_text: cstring, + tooltip_private_text: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_prepend_widget".} +proc gtk_toolbar_insert_widget*(toolbar: PGtkToolbar, widget: PGtkWidget, + tooltip_text: cstring, + tooltip_private_text: cstring, position: gint){. + cdecl, dynlib: gtklib, importc: "gtk_toolbar_insert_widget".} +proc gtk_toolbar_set_orientation*(toolbar: PGtkToolbar, + orientation: TGtkOrientation){.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_set_orientation".} +proc gtk_toolbar_set_style*(toolbar: PGtkToolbar, style: TGtkToolbarStyle){. + cdecl, dynlib: gtklib, importc: "gtk_toolbar_set_style".} +proc gtk_toolbar_set_icon_size*(toolbar: PGtkToolbar, icon_size: TGtkIconSize){. + cdecl, dynlib: gtklib, importc: "gtk_toolbar_set_icon_size".} +proc gtk_toolbar_set_tooltips*(toolbar: PGtkToolbar, enable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_set_tooltips".} +proc gtk_toolbar_unset_style*(toolbar: PGtkToolbar){.cdecl, dynlib: gtklib, + importc: "gtk_toolbar_unset_style".} +proc gtk_toolbar_unset_icon_size*(toolbar: PGtkToolbar){.cdecl, dynlib: gtklib, + importc: "gtk_toolbar_unset_icon_size".} +proc gtk_toolbar_get_orientation*(toolbar: PGtkToolbar): TGtkOrientation{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_get_orientation".} +proc gtk_toolbar_get_style*(toolbar: PGtkToolbar): TGtkToolbarStyle{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_get_style".} +proc gtk_toolbar_get_icon_size*(toolbar: PGtkToolbar): TGtkIconSize{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_get_icon_size".} +proc gtk_toolbar_get_tooltips*(toolbar: PGtkToolbar): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_toolbar_get_tooltips".} +const + bm_TGtkTree_selection_mode* = 0x00000003 + bp_TGtkTree_selection_mode* = 0 + bm_TGtkTree_view_mode* = 0x00000004 + bp_TGtkTree_view_mode* = 2 + bm_TGtkTree_view_line* = 0x00000008 + bp_TGtkTree_view_line* = 3 + +proc GTK_TYPE_TREE*(): GType +proc GTK_TREE*(obj: pointer): PGtkTree +proc GTK_TREE_CLASS*(klass: pointer): PGtkTreeClass +proc GTK_IS_TREE*(obj: pointer): bool +proc GTK_IS_TREE_CLASS*(klass: pointer): bool +proc GTK_TREE_GET_CLASS*(obj: pointer): PGtkTreeClass +proc GTK_IS_ROOT_TREE*(obj: pointer): bool +proc GTK_TREE_ROOT_TREE*(obj: pointer): PGtkTree +proc GTK_TREE_SELECTION_OLD*(obj: pointer): PGList +proc selection_mode*(a: var TGtkTree): guint +proc set_selection_mode*(a: var TGtkTree, `selection_mode`: guint) +proc view_mode*(a: var TGtkTree): guint +proc set_view_mode*(a: var TGtkTree, `view_mode`: guint) +proc view_line*(a: var TGtkTree): guint +proc set_view_line*(a: var TGtkTree, `view_line`: guint) +proc gtk_tree_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_get_type".} +proc gtk_tree_new*(): PGtkWidget{.cdecl, dynlib: gtklib, importc: "gtk_tree_new".} +proc gtk_tree_append*(tree: PGtkTree, tree_item: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_tree_append".} +proc gtk_tree_prepend*(tree: PGtkTree, tree_item: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_tree_prepend".} +proc gtk_tree_insert*(tree: PGtkTree, tree_item: PGtkWidget, position: gint){. + cdecl, dynlib: gtklib, importc: "gtk_tree_insert".} +proc gtk_tree_remove_items*(tree: PGtkTree, items: PGList){.cdecl, + dynlib: gtklib, importc: "gtk_tree_remove_items".} +proc gtk_tree_clear_items*(tree: PGtkTree, start: gint, theEnd: gint){.cdecl, + dynlib: gtklib, importc: "gtk_tree_clear_items".} +proc gtk_tree_select_item*(tree: PGtkTree, item: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_select_item".} +proc gtk_tree_unselect_item*(tree: PGtkTree, item: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_unselect_item".} +proc gtk_tree_select_child*(tree: PGtkTree, tree_item: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_tree_select_child".} +proc gtk_tree_unselect_child*(tree: PGtkTree, tree_item: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_tree_unselect_child".} +proc gtk_tree_child_position*(tree: PGtkTree, child: PGtkWidget): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_child_position".} +proc gtk_tree_set_selection_mode*(tree: PGtkTree, mode: TGtkSelectionMode){. + cdecl, dynlib: gtklib, importc: "gtk_tree_set_selection_mode".} +proc gtk_tree_set_view_mode*(tree: PGtkTree, mode: TGtkTreeViewMode){.cdecl, + dynlib: gtklib, importc: "gtk_tree_set_view_mode".} +proc gtk_tree_set_view_lines*(tree: PGtkTree, flag: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_tree_set_view_lines".} +proc gtk_tree_remove_item*(tree: PGtkTree, child: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_tree_remove_item".} +proc GTK_TYPE_TREE_DRAG_SOURCE*(): GType +proc GTK_TREE_DRAG_SOURCE*(obj: pointer): PGtkTreeDragSource +proc GTK_IS_TREE_DRAG_SOURCE*(obj: pointer): bool +proc GTK_TREE_DRAG_SOURCE_GET_IFACE*(obj: pointer): PGtkTreeDragSourceIface +proc gtk_tree_drag_source_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_drag_source_get_type".} +proc gtk_tree_drag_source_row_draggable*(drag_source: PGtkTreeDragSource, + path: PGtkTreePath): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_tree_drag_source_row_draggable".} +proc gtk_tree_drag_source_drag_data_delete*(drag_source: PGtkTreeDragSource, + path: PGtkTreePath): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_tree_drag_source_drag_data_delete".} +proc gtk_tree_drag_source_drag_data_get*(drag_source: PGtkTreeDragSource, + path: PGtkTreePath, selection_data: PGtkSelectionData): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_drag_source_drag_data_get".} +proc GTK_TYPE_TREE_DRAG_DEST*(): GType +proc GTK_TREE_DRAG_DEST*(obj: pointer): PGtkTreeDragDest +proc GTK_IS_TREE_DRAG_DEST*(obj: pointer): bool +proc GTK_TREE_DRAG_DEST_GET_IFACE*(obj: pointer): PGtkTreeDragDestIface +proc gtk_tree_drag_dest_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_drag_dest_get_type".} +proc gtk_tree_drag_dest_drag_data_received*(drag_dest: PGtkTreeDragDest, + dest: PGtkTreePath, selection_data: PGtkSelectionData): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_drag_dest_drag_data_received".} +proc gtk_tree_drag_dest_row_drop_possible*(drag_dest: PGtkTreeDragDest, + dest_path: PGtkTreePath, selection_data: PGtkSelectionData): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_drag_dest_row_drop_possible".} +proc gtk_tree_set_row_drag_data*(selection_data: PGtkSelectionData, + tree_model: PGtkTreeModel, path: PGtkTreePath): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_set_row_drag_data".} +const + bm_TGtkTreeItem_expanded* = 0x00000001 + bp_TGtkTreeItem_expanded* = 0 + +proc GTK_TYPE_TREE_ITEM*(): GType +proc GTK_TREE_ITEM*(obj: pointer): PGtkTreeItem +proc GTK_TREE_ITEM_CLASS*(klass: pointer): PGtkTreeItemClass +proc GTK_IS_TREE_ITEM*(obj: pointer): bool +proc GTK_IS_TREE_ITEM_CLASS*(klass: pointer): bool +proc GTK_TREE_ITEM_GET_CLASS*(obj: pointer): PGtkTreeItemClass +proc GTK_TREE_ITEM_SUBTREE*(obj: pointer): PGtkWidget +proc expanded*(a: var TGtkTreeItem): guint +proc set_expanded*(a: var TGtkTreeItem, `expanded`: guint) +proc gtk_tree_item_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_item_get_type".} +proc gtk_tree_item_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_tree_item_new".} +proc gtk_tree_item_new_with_label*(`label`: cstring): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_tree_item_new_with_label".} +proc gtk_tree_item_set_subtree*(tree_item: PGtkTreeItem, subtree: PGtkWidget){. + cdecl, dynlib: gtklib, importc: "gtk_tree_item_set_subtree".} +proc gtk_tree_item_remove_subtree*(tree_item: PGtkTreeItem){.cdecl, + dynlib: gtklib, importc: "gtk_tree_item_remove_subtree".} +proc gtk_tree_item_select*(tree_item: PGtkTreeItem){.cdecl, dynlib: gtklib, + importc: "gtk_tree_item_select".} +proc gtk_tree_item_deselect*(tree_item: PGtkTreeItem){.cdecl, dynlib: gtklib, + importc: "gtk_tree_item_deselect".} +proc gtk_tree_item_expand*(tree_item: PGtkTreeItem){.cdecl, dynlib: gtklib, + importc: "gtk_tree_item_expand".} +proc gtk_tree_item_collapse*(tree_item: PGtkTreeItem){.cdecl, dynlib: gtklib, + importc: "gtk_tree_item_collapse".} +proc GTK_TYPE_TREE_SELECTION*(): GType +proc GTK_TREE_SELECTION*(obj: pointer): PGtkTreeSelection +proc GTK_TREE_SELECTION_CLASS*(klass: pointer): PGtkTreeSelectionClass +proc GTK_IS_TREE_SELECTION*(obj: pointer): bool +proc GTK_IS_TREE_SELECTION_CLASS*(klass: pointer): bool +proc GTK_TREE_SELECTION_GET_CLASS*(obj: pointer): PGtkTreeSelectionClass +proc gtk_tree_selection_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_selection_get_type".} +proc gtk_tree_selection_set_mode*(selection: PGtkTreeSelection, + thetype: TGtkSelectionMode){.cdecl, + dynlib: gtklib, importc: "gtk_tree_selection_set_mode".} +proc gtk_tree_selection_get_mode*(selection: PGtkTreeSelection): TGtkSelectionMode{. + cdecl, dynlib: gtklib, importc: "gtk_tree_selection_get_mode".} +proc gtk_tree_selection_set_select_function*(selection: PGtkTreeSelection, + func_: TGtkTreeSelectionFunc, data: gpointer, destroy: TGtkDestroyNotify){. + cdecl, dynlib: gtklib, importc: "gtk_tree_selection_set_select_function".} +proc gtk_tree_selection_get_user_data*(selection: PGtkTreeSelection): gpointer{. + cdecl, dynlib: gtklib, importc: "gtk_tree_selection_get_user_data".} +proc gtk_tree_selection_get_tree_view*(selection: PGtkTreeSelection): PGtkTreeView{. + cdecl, dynlib: gtklib, importc: "gtk_tree_selection_get_tree_view".} +proc gtk_tree_selection_get_selected*(selection: PGtkTreeSelection, + model: PPGtkTreeModel, iter: PGtkTreeIter): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_selection_get_selected".} +proc gtk_tree_selection_get_selected_rows*(selection: PGtkTreeSelection, + model: PPGtkTreeModel): PGList{.cdecl, dynlib: gtklib, importc: "gtk_tree_selection_get_selected_rows".} +proc gtk_tree_selection_selected_foreach*(selection: PGtkTreeSelection, + func_: TGtkTreeSelectionForeachFunc, data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_tree_selection_selected_foreach".} +proc gtk_tree_selection_select_path*(selection: PGtkTreeSelection, + path: PGtkTreePath){.cdecl, dynlib: gtklib, + importc: "gtk_tree_selection_select_path".} +proc gtk_tree_selection_unselect_path*(selection: PGtkTreeSelection, + path: PGtkTreePath){.cdecl, + dynlib: gtklib, importc: "gtk_tree_selection_unselect_path".} +proc gtk_tree_selection_select_iter*(selection: PGtkTreeSelection, + iter: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_selection_select_iter".} +proc gtk_tree_selection_unselect_iter*(selection: PGtkTreeSelection, + iter: PGtkTreeIter){.cdecl, + dynlib: gtklib, importc: "gtk_tree_selection_unselect_iter".} +proc gtk_tree_selection_path_is_selected*(selection: PGtkTreeSelection, + path: PGtkTreePath): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_tree_selection_path_is_selected".} +proc gtk_tree_selection_iter_is_selected*(selection: PGtkTreeSelection, + iter: PGtkTreeIter): gboolean{.cdecl, dynlib: gtklib, importc: "gtk_tree_selection_iter_is_selected".} +proc gtk_tree_selection_select_all*(selection: PGtkTreeSelection){.cdecl, + dynlib: gtklib, importc: "gtk_tree_selection_select_all".} +proc gtk_tree_selection_unselect_all*(selection: PGtkTreeSelection){.cdecl, + dynlib: gtklib, importc: "gtk_tree_selection_unselect_all".} +proc gtk_tree_selection_select_range*(selection: PGtkTreeSelection, + start_path: PGtkTreePath, + end_path: PGtkTreePath){.cdecl, + dynlib: gtklib, importc: "gtk_tree_selection_select_range".} +const + bm_TGtkTreeStore_columns_dirty* = 0x00000001 + bp_TGtkTreeStore_columns_dirty* = 0 + +proc GTK_TYPE_TREE_STORE*(): GType +proc GTK_TREE_STORE*(obj: pointer): PGtkTreeStore +proc GTK_TREE_STORE_CLASS*(klass: pointer): PGtkTreeStoreClass +proc GTK_IS_TREE_STORE*(obj: pointer): bool +proc GTK_IS_TREE_STORE_CLASS*(klass: pointer): bool +proc GTK_TREE_STORE_GET_CLASS*(obj: pointer): PGtkTreeStoreClass +proc columns_dirty*(a: var TGtkTreeStore): guint +proc set_columns_dirty*(a: var TGtkTreeStore, `columns_dirty`: guint) +proc gtk_tree_store_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_store_get_type".} +proc gtk_tree_store_newv*(n_columns: gint, types: PGType): PGtkTreeStore{.cdecl, + dynlib: gtklib, importc: "gtk_tree_store_newv".} +proc gtk_tree_store_set_column_types*(tree_store: PGtkTreeStore, + n_columns: gint, types: PGType){.cdecl, + dynlib: gtklib, importc: "gtk_tree_store_set_column_types".} +proc gtk_tree_store_set_value*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + column: gint, value: PGValue){.cdecl, + dynlib: gtklib, importc: "gtk_tree_store_set_value".} +proc gtk_tree_store_remove*(tree_store: PGtkTreeStore, iter: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_tree_store_remove".} +proc gtk_tree_store_insert*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + parent: PGtkTreeIter, position: gint){.cdecl, + dynlib: gtklib, importc: "gtk_tree_store_insert".} +proc gtk_tree_store_insert_before*(tree_store: PGtkTreeStore, + iter: PGtkTreeIter, parent: PGtkTreeIter, + sibling: PGtkTreeIter){.cdecl, + dynlib: gtklib, importc: "gtk_tree_store_insert_before".} +proc gtk_tree_store_insert_after*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + parent: PGtkTreeIter, sibling: PGtkTreeIter){. + cdecl, dynlib: gtklib, importc: "gtk_tree_store_insert_after".} +proc gtk_tree_store_prepend*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + parent: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_store_prepend".} +proc gtk_tree_store_append*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + parent: PGtkTreeIter){.cdecl, dynlib: gtklib, + importc: "gtk_tree_store_append".} +proc gtk_tree_store_is_ancestor*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + descendant: PGtkTreeIter): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_store_is_ancestor".} +proc gtk_tree_store_iter_depth*(tree_store: PGtkTreeStore, iter: PGtkTreeIter): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_store_iter_depth".} +proc gtk_tree_store_clear*(tree_store: PGtkTreeStore){.cdecl, dynlib: gtklib, + importc: "gtk_tree_store_clear".} +const + bm_TGtkTreeViewColumn_visible* = 0x00000001 + bp_TGtkTreeViewColumn_visible* = 0 + bm_TGtkTreeViewColumn_resizable* = 0x00000002 + bp_TGtkTreeViewColumn_resizable* = 1 + bm_TGtkTreeViewColumn_clickable* = 0x00000004 + bp_TGtkTreeViewColumn_clickable* = 2 + bm_TGtkTreeViewColumn_dirty* = 0x00000008 + bp_TGtkTreeViewColumn_dirty* = 3 + bm_TGtkTreeViewColumn_show_sort_indicator* = 0x00000010 + bp_TGtkTreeViewColumn_show_sort_indicator* = 4 + bm_TGtkTreeViewColumn_maybe_reordered* = 0x00000020 + bp_TGtkTreeViewColumn_maybe_reordered* = 5 + bm_TGtkTreeViewColumn_reorderable* = 0x00000040 + bp_TGtkTreeViewColumn_reorderable* = 6 + bm_TGtkTreeViewColumn_use_resized_width* = 0x00000080 + bp_TGtkTreeViewColumn_use_resized_width* = 7 + +proc GTK_TYPE_TREE_VIEW_COLUMN*(): GType +proc GTK_TREE_VIEW_COLUMN*(obj: pointer): PGtkTreeViewColumn +proc GTK_TREE_VIEW_COLUMN_CLASS*(klass: pointer): PGtkTreeViewColumnClass +proc GTK_IS_TREE_VIEW_COLUMN*(obj: pointer): bool +proc GTK_IS_TREE_VIEW_COLUMN_CLASS*(klass: pointer): bool +proc GTK_TREE_VIEW_COLUMN_GET_CLASS*(obj: pointer): PGtkTreeViewColumnClass +proc visible*(a: var TGtkTreeViewColumn): guint +proc set_visible*(a: var TGtkTreeViewColumn, `visible`: guint) +proc resizable*(a: var TGtkTreeViewColumn): guint +proc set_resizable*(a: var TGtkTreeViewColumn, `resizable`: guint) +proc clickable*(a: var TGtkTreeViewColumn): guint +proc set_clickable*(a: var TGtkTreeViewColumn, `clickable`: guint) +proc dirty*(a: var TGtkTreeViewColumn): guint +proc set_dirty*(a: var TGtkTreeViewColumn, `dirty`: guint) +proc show_sort_indicator*(a: var TGtkTreeViewColumn): guint +proc set_show_sort_indicator*(a: var TGtkTreeViewColumn, + `show_sort_indicator`: guint) +proc maybe_reordered*(a: var TGtkTreeViewColumn): guint +proc set_maybe_reordered*(a: var TGtkTreeViewColumn, `maybe_reordered`: guint) +proc reorderable*(a: var TGtkTreeViewColumn): guint +proc set_reorderable*(a: var TGtkTreeViewColumn, `reorderable`: guint) +proc use_resized_width*(a: var TGtkTreeViewColumn): guint +proc set_use_resized_width*(a: var TGtkTreeViewColumn, + `use_resized_width`: guint) +proc gtk_tree_view_column_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_get_type".} +proc gtk_tree_view_column_new*(): PGtkTreeViewColumn{.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_new".} +proc gtk_tree_view_column_pack_start*(tree_column: PGtkTreeViewColumn, + cell: PGtkCellRenderer, expand: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_pack_start".} +proc gtk_tree_view_column_pack_end*(tree_column: PGtkTreeViewColumn, + cell: PGtkCellRenderer, expand: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_pack_end".} +proc gtk_tree_view_column_clear*(tree_column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_clear".} +proc gtk_tree_view_column_get_cell_renderers*(tree_column: PGtkTreeViewColumn): PGList{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_cell_renderers".} +proc gtk_tree_view_column_add_attribute*(tree_column: PGtkTreeViewColumn, + cell_renderer: PGtkCellRenderer, attribute: cstring, column: gint){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_add_attribute".} +proc gtk_tree_view_column_set_cell_data_func*(tree_column: PGtkTreeViewColumn, + cell_renderer: PGtkCellRenderer, func_: TGtkTreeCellDataFunc, + func_data: gpointer, destroy: TGtkDestroyNotify){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_cell_data_func".} +proc gtk_tree_view_column_clear_attributes*(tree_column: PGtkTreeViewColumn, + cell_renderer: PGtkCellRenderer){.cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_clear_attributes".} +proc gtk_tree_view_column_set_spacing*(tree_column: PGtkTreeViewColumn, + spacing: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_spacing".} +proc gtk_tree_view_column_get_spacing*(tree_column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_spacing".} +proc gtk_tree_view_column_set_visible*(tree_column: PGtkTreeViewColumn, + visible: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_set_visible".} +proc gtk_tree_view_column_get_visible*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_visible".} +proc gtk_tree_view_column_set_resizable*(tree_column: PGtkTreeViewColumn, + resizable: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_resizable".} +proc gtk_tree_view_column_get_resizable*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_resizable".} +proc gtk_tree_view_column_set_sizing*(tree_column: PGtkTreeViewColumn, + thetype: TGtkTreeViewColumnSizing){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_set_sizing".} +proc gtk_tree_view_column_get_sizing*(tree_column: PGtkTreeViewColumn): TGtkTreeViewColumnSizing{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_sizing".} +proc gtk_tree_view_column_get_width*(tree_column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_width".} +proc gtk_tree_view_column_get_fixed_width*(tree_column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_fixed_width".} +proc gtk_tree_view_column_set_fixed_width*(tree_column: PGtkTreeViewColumn, + fixed_width: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_fixed_width".} +proc gtk_tree_view_column_set_min_width*(tree_column: PGtkTreeViewColumn, + min_width: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_min_width".} +proc gtk_tree_view_column_get_min_width*(tree_column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_min_width".} +proc gtk_tree_view_column_set_max_width*(tree_column: PGtkTreeViewColumn, + max_width: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_max_width".} +proc gtk_tree_view_column_get_max_width*(tree_column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_max_width".} +proc gtk_tree_view_column_clicked*(tree_column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_clicked".} +proc gtk_tree_view_column_set_title*(tree_column: PGtkTreeViewColumn, + title: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_title".} +proc gtk_tree_view_column_get_title*(tree_column: PGtkTreeViewColumn): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_title".} +proc gtk_tree_view_column_set_clickable*(tree_column: PGtkTreeViewColumn, + clickable: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_clickable".} +proc gtk_tree_view_column_get_clickable*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_clickable".} +proc gtk_tree_view_column_set_widget*(tree_column: PGtkTreeViewColumn, + widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_set_widget".} +proc gtk_tree_view_column_get_widget*(tree_column: PGtkTreeViewColumn): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_widget".} +proc gtk_tree_view_column_set_alignment*(tree_column: PGtkTreeViewColumn, + xalign: gfloat){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_alignment".} +proc gtk_tree_view_column_get_alignment*(tree_column: PGtkTreeViewColumn): gfloat{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_alignment".} +proc gtk_tree_view_column_set_reorderable*(tree_column: PGtkTreeViewColumn, + reorderable: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_reorderable".} +proc gtk_tree_view_column_get_reorderable*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_reorderable".} +proc gtk_tree_view_column_set_sort_column_id*(tree_column: PGtkTreeViewColumn, + sort_column_id: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_sort_column_id".} +proc gtk_tree_view_column_get_sort_column_id*(tree_column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_sort_column_id".} +proc gtk_tree_view_column_set_sort_indicator*(tree_column: PGtkTreeViewColumn, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_sort_indicator".} +proc gtk_tree_view_column_get_sort_indicator*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_sort_indicator".} +proc gtk_tree_view_column_set_sort_order*(tree_column: PGtkTreeViewColumn, + order: TGtkSortType){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_sort_order".} +proc gtk_tree_view_column_get_sort_order*(tree_column: PGtkTreeViewColumn): TGtkSortType{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_sort_order".} +proc gtk_tree_view_column_cell_set_cell_data*(tree_column: PGtkTreeViewColumn, + tree_model: PGtkTreeModel, iter: PGtkTreeIter, is_expander: gboolean, + is_expanded: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_cell_set_cell_data".} +proc gtk_tree_view_column_cell_get_size*(tree_column: PGtkTreeViewColumn, + cell_area: PGdkRectangle, x_offset: Pgint, y_offset: Pgint, width: Pgint, + height: Pgint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_cell_get_size".} +proc gtk_tree_view_column_cell_is_visible*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_cell_is_visible".} +proc gtk_tree_view_column_focus_cell*(tree_column: PGtkTreeViewColumn, + cell: PGtkCellRenderer){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_column_focus_cell".} +proc gtk_tree_view_column_set_expand*(tree_column: PGtkTreeViewColumn, + Expand: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_column_set_expand".} +proc gtk_tree_view_column_get_expand*(tree_column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_column_get_expand".} +const + GTK_RBNODE_BLACK* = 1 shl 0 + GTK_RBNODE_RED* = 1 shl 1 + GTK_RBNODE_IS_PARENT* = 1 shl 2 + GTK_RBNODE_IS_SELECTED* = 1 shl 3 + GTK_RBNODE_IS_PRELIT* = 1 shl 4 + GTK_RBNODE_IS_SEMI_COLLAPSED* = 1 shl 5 + GTK_RBNODE_IS_SEMI_EXPANDED* = 1 shl 6 + GTK_RBNODE_INVALID* = 1 shl 7 + GTK_RBNODE_COLUMN_INVALID* = 1 shl 8 + GTK_RBNODE_DESCENDANTS_INVALID* = 1 shl 9 + GTK_RBNODE_NON_COLORS* = GTK_RBNODE_IS_PARENT or GTK_RBNODE_IS_SELECTED or + GTK_RBNODE_IS_PRELIT or GTK_RBNODE_IS_SEMI_COLLAPSED or + GTK_RBNODE_IS_SEMI_EXPANDED or GTK_RBNODE_INVALID or + GTK_RBNODE_COLUMN_INVALID or GTK_RBNODE_DESCENDANTS_INVALID + +const + bm_TGtkRBNode_flags* = 0x00003FFF + bp_TGtkRBNode_flags* = 0 + bm_TGtkRBNode_parity* = 0x00004000 + bp_TGtkRBNode_parity* = 14 + +proc flags*(a: PGtkRBNode): guint +proc set_flags*(a: PGtkRBNode, `flags`: guint) +proc parity*(a: PGtkRBNode): guint +proc set_parity*(a: PGtkRBNode, `parity`: guint) +proc GTK_RBNODE_GET_COLOR*(node_: PGtkRBNode): guint +proc GTK_RBNODE_SET_COLOR*(node_: PGtkRBNode, color: guint) +proc GTK_RBNODE_GET_HEIGHT*(node_: PGtkRBNode): gint +proc GTK_RBNODE_SET_FLAG*(node_: PGtkRBNode, flag: guint16) +proc GTK_RBNODE_UNSET_FLAG*(node_: PGtkRBNode, flag: guint16) +proc GTK_RBNODE_FLAG_SET*(node_: PGtkRBNode, flag: guint): bool +proc gtk_rbtree_push_allocator*(allocator: PGAllocator){.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_push_allocator".} +proc gtk_rbtree_pop_allocator*(){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_pop_allocator".} +proc gtk_rbtree_new*(): PGtkRBTree{.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_new".} +proc gtk_rbtree_free*(tree: PGtkRBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_free".} +proc gtk_rbtree_remove*(tree: PGtkRBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_remove".} +proc gtk_rbtree_destroy*(tree: PGtkRBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_destroy".} +proc gtk_rbtree_insert_before*(tree: PGtkRBTree, node_: PGtkRBNode, + height: gint, valid: gboolean): PGtkRBNode{. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_insert_before".} +proc gtk_rbtree_insert_after*(tree: PGtkRBTree, node_: PGtkRBNode, + height: gint, valid: gboolean): PGtkRBNode{. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_insert_after".} +proc gtk_rbtree_remove_node*(tree: PGtkRBTree, node_: PGtkRBNode){.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_remove_node".} +proc gtk_rbtree_reorder*(tree: PGtkRBTree, new_order: Pgint, length: gint){. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_reorder".} +proc gtk_rbtree_find_count*(tree: PGtkRBTree, count: gint): PGtkRBNode{.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_find_count".} +proc gtk_rbtree_node_set_height*(tree: PGtkRBTree, node_: PGtkRBNode, + height: gint){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_node_set_height".} +proc gtk_rbtree_node_mark_invalid*(tree: PGtkRBTree, node_: PGtkRBNode){. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_node_mark_invalid".} +proc gtk_rbtree_node_mark_valid*(tree: PGtkRBTree, node_: PGtkRBNode){.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_node_mark_valid".} +proc gtk_rbtree_column_invalid*(tree: PGtkRBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_column_invalid".} +proc gtk_rbtree_mark_invalid*(tree: PGtkRBTree){.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_mark_invalid".} +proc gtk_rbtree_set_fixed_height*(tree: PGtkRBTree, height: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_set_fixed_height".} +proc gtk_rbtree_node_find_offset*(tree: PGtkRBTree, node_: PGtkRBNode): gint{. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_node_find_offset".} +proc gtk_rbtree_node_find_parity*(tree: PGtkRBTree, node_: PGtkRBNode): gint{. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_node_find_parity".} +proc gtk_rbtree_traverse*(tree: PGtkRBTree, node_: PGtkRBNode, + order: TGTraverseType, + func_: TGtkRBTreeTraverseFunc, data: gpointer){. + cdecl, dynlib: gtklib, importc: "_gtk_rbtree_traverse".} +proc gtk_rbtree_next*(tree: PGtkRBTree, node_: PGtkRBNode): PGtkRBNode{.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_next".} +proc gtk_rbtree_prev*(tree: PGtkRBTree, node_: PGtkRBNode): PGtkRBNode{.cdecl, + dynlib: gtklib, importc: "_gtk_rbtree_prev".} +proc gtk_rbtree_get_depth*(tree: PGtkRBTree): gint{.cdecl, dynlib: gtklib, + importc: "_gtk_rbtree_get_depth".} +const + TREE_VIEW_DRAG_WIDTH* = 6 + GTK_TREE_VIEW_IS_LIST* = 1 shl 0 + GTK_TREE_VIEW_SHOW_EXPANDERS* = 1 shl 1 + GTK_TREE_VIEW_IN_COLUMN_RESIZE* = 1 shl 2 + GTK_TREE_VIEW_ARROW_PRELIT* = 1 shl 3 + GTK_TREE_VIEW_HEADERS_VISIBLE* = 1 shl 4 + GTK_TREE_VIEW_DRAW_KEYFOCUS* = 1 shl 5 + GTK_TREE_VIEW_MODEL_SETUP* = 1 shl 6 + GTK_TREE_VIEW_IN_COLUMN_DRAG* = 1 shl 7 + DRAG_COLUMN_WINDOW_STATE_UNSET* = 0 + DRAG_COLUMN_WINDOW_STATE_ORIGINAL* = 1 + DRAG_COLUMN_WINDOW_STATE_ARROW* = 2 + DRAG_COLUMN_WINDOW_STATE_ARROW_LEFT* = 3 + DRAG_COLUMN_WINDOW_STATE_ARROW_RIGHT* = 4 + +proc GTK_TREE_VIEW_SET_FLAG*(tree_view: PGtkTreeView, flag: guint) +proc GTK_TREE_VIEW_UNSET_FLAG*(tree_view: PGtkTreeView, flag: guint) +proc GTK_TREE_VIEW_FLAG_SET*(tree_view: PGtkTreeView, flag: guint): bool +proc TREE_VIEW_HEADER_HEIGHT*(tree_view: PGtkTreeView): int32 +proc TREE_VIEW_COLUMN_REQUESTED_WIDTH*(column: PGtkTreeViewColumn): int32 +proc TREE_VIEW_DRAW_EXPANDERS*(tree_view: PGtkTreeView): bool +proc TREE_VIEW_COLUMN_DRAG_DEAD_MULTIPLIER*(tree_view: PGtkTreeView): int32 +const + bm_TGtkTreeViewPrivate_scroll_to_use_align* = 0x00000001 + bp_TGtkTreeViewPrivate_scroll_to_use_align* = 0 + bm_TGtkTreeViewPrivate_fixed_height_check* = 0x00000002 + bp_TGtkTreeViewPrivate_fixed_height_check* = 1 + bm_TGtkTreeViewPrivate_reorderable* = 0x00000004 + bp_TGtkTreeViewPrivate_reorderable* = 2 + bm_TGtkTreeViewPrivate_header_has_focus* = 0x00000008 + bp_TGtkTreeViewPrivate_header_has_focus* = 3 + bm_TGtkTreeViewPrivate_drag_column_window_state* = 0x00000070 + bp_TGtkTreeViewPrivate_drag_column_window_state* = 4 + bm_TGtkTreeViewPrivate_has_rules* = 0x00000080 + bp_TGtkTreeViewPrivate_has_rules* = 7 + bm_TGtkTreeViewPrivate_mark_rows_col_dirty* = 0x00000100 + bp_TGtkTreeViewPrivate_mark_rows_col_dirty* = 8 + bm_TGtkTreeViewPrivate_enable_search* = 0x00000200 + bp_TGtkTreeViewPrivate_enable_search* = 9 + bm_TGtkTreeViewPrivate_disable_popdown* = 0x00000400 + bp_TGtkTreeViewPrivate_disable_popdown* = 10 + +proc scroll_to_use_align*(a: var TGtkTreeViewPrivate): guint +proc set_scroll_to_use_align*(a: var TGtkTreeViewPrivate, + `scroll_to_use_align`: guint) +proc fixed_height_check*(a: var TGtkTreeViewPrivate): guint +proc set_fixed_height_check*(a: var TGtkTreeViewPrivate, + `fixed_height_check`: guint) +proc reorderable*(a: var TGtkTreeViewPrivate): guint +proc set_reorderable*(a: var TGtkTreeViewPrivate, `reorderable`: guint) +proc header_has_focus*(a: var TGtkTreeViewPrivate): guint +proc set_header_has_focus*(a: var TGtkTreeViewPrivate, `header_has_focus`: guint) +proc drag_column_window_state*(a: var TGtkTreeViewPrivate): guint +proc set_drag_column_window_state*(a: var TGtkTreeViewPrivate, + `drag_column_window_state`: guint) +proc has_rules*(a: var TGtkTreeViewPrivate): guint +proc set_has_rules*(a: var TGtkTreeViewPrivate, `has_rules`: guint) +proc mark_rows_col_dirty*(a: var TGtkTreeViewPrivate): guint +proc set_mark_rows_col_dirty*(a: var TGtkTreeViewPrivate, + `mark_rows_col_dirty`: guint) +proc enable_search*(a: var TGtkTreeViewPrivate): guint +proc set_enable_search*(a: var TGtkTreeViewPrivate, `enable_search`: guint) +proc disable_popdown*(a: var TGtkTreeViewPrivate): guint +proc set_disable_popdown*(a: var TGtkTreeViewPrivate, `disable_popdown`: guint) +proc gtk_tree_selection_internal_select_node*(selection: PGtkTreeSelection, + node_: PGtkRBNode, tree: PGtkRBTree, path: PGtkTreePath, + state: TGdkModifierType, override_browse_mode: gboolean){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_selection_internal_select_node".} +proc gtk_tree_view_find_node*(tree_view: PGtkTreeView, path: PGtkTreePath, + tree: var PGtkRBTree, node_: var PGtkRBNode): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_find_node".} +proc gtk_tree_view_find_path*(tree_view: PGtkTreeView, tree: PGtkRBTree, + node_: PGtkRBNode): PGtkTreePath{.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_find_path".} +proc gtk_tree_view_child_move_resize*(tree_view: PGtkTreeView, + widget: PGtkWidget, x: gint, y: gint, + width: gint, height: gint){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_child_move_resize".} +proc gtk_tree_view_queue_draw_node*(tree_view: PGtkTreeView, tree: PGtkRBTree, + node_: PGtkRBNode, + clip_rect: PGdkRectangle){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_queue_draw_node".} +proc gtk_tree_view_column_realize_button*(column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_realize_button".} +proc gtk_tree_view_column_unrealize_button*(column: PGtkTreeViewColumn){. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_unrealize_button".} +proc gtk_tree_view_column_set_tree_view*(column: PGtkTreeViewColumn, + tree_view: PGtkTreeView){.cdecl, dynlib: gtklib, + importc: "_gtk_tree_view_column_set_tree_view".} +proc gtk_tree_view_column_unset_tree_view*(column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_unset_tree_view".} +proc gtk_tree_view_column_set_width*(column: PGtkTreeViewColumn, width: gint){. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_set_width".} +proc gtk_tree_view_column_start_drag*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_start_drag".} +proc gtk_tree_view_column_start_editing*(tree_column: PGtkTreeViewColumn, + editable_widget: PGtkCellEditable){.cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_start_editing".} +proc gtk_tree_view_column_stop_editing*(tree_column: PGtkTreeViewColumn){. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_stop_editing".} +proc gtk_tree_view_install_mark_rows_col_dirty*(tree_view: PGtkTreeView){. + cdecl, dynlib: gtklib, + importc: "_gtk_tree_view_install_mark_rows_col_dirty".} +proc DOgtk_tree_view_column_autosize*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_autosize".} +proc gtk_tree_view_column_has_editable_cell*(column: PGtkTreeViewColumn): gboolean{. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_has_editable_cell".} +proc gtk_tree_view_column_get_edited_cell*(column: PGtkTreeViewColumn): PGtkCellRenderer{. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_get_edited_cell".} +proc gtk_tree_view_column_count_special_cells*(column: PGtkTreeViewColumn): gint{. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_count_special_cells".} +proc gtk_tree_view_column_get_cell_at_pos*(column: PGtkTreeViewColumn, x: gint): PGtkCellRenderer{. + cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_get_cell_at_pos".} +proc gtk_tree_selection_new*(): PGtkTreeSelection{.cdecl, dynlib: gtklib, + importc: "_gtk_tree_selection_new".} +proc gtk_tree_selection_new_with_tree_view*(tree_view: PGtkTreeView): PGtkTreeSelection{. + cdecl, dynlib: gtklib, importc: "_gtk_tree_selection_new_with_tree_view".} +proc gtk_tree_selection_set_tree_view*(selection: PGtkTreeSelection, + tree_view: PGtkTreeView){.cdecl, dynlib: gtklib, + importc: "_gtk_tree_selection_set_tree_view".} +proc gtk_tree_view_column_cell_render*(tree_column: PGtkTreeViewColumn, + window: PGdkWindow, background_area: PGdkRectangle, + cell_area: PGdkRectangle, expose_area: PGdkRectangle, flags: guint){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_cell_render".} +proc gtk_tree_view_column_cell_focus*(tree_column: PGtkTreeViewColumn, + direction: gint, left: gboolean, + right: gboolean): gboolean{.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_cell_focus".} +proc gtk_tree_view_column_cell_draw_focus*(tree_column: PGtkTreeViewColumn, + window: PGdkWindow, background_area: PGdkRectangle, + cell_area: PGdkRectangle, expose_area: PGdkRectangle, flags: guint){.cdecl, + dynlib: gtklib, importc: "_gtk_tree_view_column_cell_draw_focus".} +proc gtk_tree_view_column_cell_set_dirty*(tree_column: PGtkTreeViewColumn, + install_handler: gboolean){.cdecl, dynlib: gtklib, importc: "_gtk_tree_view_column_cell_set_dirty".} +proc gtk_tree_view_column_get_neighbor_sizes*(column: PGtkTreeViewColumn, + cell: PGtkCellRenderer, left: Pgint, right: Pgint){.cdecl, dynlib: gtklib, + importc: "_gtk_tree_view_column_get_neighbor_sizes".} +proc GTK_TYPE_TREE_VIEW*(): GType +proc GTK_TREE_VIEW*(obj: pointer): PGtkTreeView +proc GTK_TREE_VIEW_CLASS*(klass: pointer): PGtkTreeViewClass +proc GTK_IS_TREE_VIEW*(obj: pointer): bool +proc GTK_IS_TREE_VIEW_CLASS*(klass: pointer): bool +proc GTK_TREE_VIEW_GET_CLASS*(obj: pointer): PGtkTreeViewClass +proc gtk_tree_view_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_get_type".} +proc gtk_tree_view_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_new".} +proc gtk_tree_view_new_with_model*(model: PGtkTreeModel): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_new_with_model".} +proc gtk_tree_view_get_model*(tree_view: PGtkTreeView): PGtkTreeModel{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_model".} +proc gtk_tree_view_set_model*(tree_view: PGtkTreeView, model: PGtkTreeModel){. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_set_model".} +proc gtk_tree_view_get_selection*(tree_view: PGtkTreeView): PGtkTreeSelection{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_selection".} +proc gtk_tree_view_get_hadjustment*(tree_view: PGtkTreeView): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_hadjustment".} +proc gtk_tree_view_set_hadjustment*(tree_view: PGtkTreeView, + adjustment: PGtkAdjustment){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_hadjustment".} +proc gtk_tree_view_get_vadjustment*(tree_view: PGtkTreeView): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_vadjustment".} +proc gtk_tree_view_set_vadjustment*(tree_view: PGtkTreeView, + adjustment: PGtkAdjustment){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_vadjustment".} +proc gtk_tree_view_get_headers_visible*(tree_view: PGtkTreeView): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_headers_visible".} +proc gtk_tree_view_set_headers_visible*(tree_view: PGtkTreeView, + headers_visible: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_headers_visible".} +proc gtk_tree_view_columns_autosize*(tree_view: PGtkTreeView){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_columns_autosize".} +proc gtk_tree_view_set_headers_clickable*(tree_view: PGtkTreeView, + setting: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_set_headers_clickable".} +proc gtk_tree_view_set_rules_hint*(tree_view: PGtkTreeView, setting: gboolean){. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_set_rules_hint".} +proc gtk_tree_view_get_rules_hint*(tree_view: PGtkTreeView): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_rules_hint".} +proc gtk_tree_view_append_column*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_append_column".} +proc gtk_tree_view_remove_column*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_remove_column".} +proc gtk_tree_view_insert_column*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn, position: gint): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_insert_column".} +proc gtk_tree_view_insert_column_with_data_func*(tree_view: PGtkTreeView, + position: gint, title: cstring, cell: PGtkCellRenderer, + func_: TGtkTreeCellDataFunc, data: gpointer, dnotify: TGDestroyNotify): gint{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_insert_column_with_data_func".} +proc gtk_tree_view_get_column*(tree_view: PGtkTreeView, n: gint): PGtkTreeViewColumn{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_column".} +proc gtk_tree_view_get_columns*(tree_view: PGtkTreeView): PGList{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_columns".} +proc gtk_tree_view_move_column_after*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn, + base_column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_move_column_after".} +proc gtk_tree_view_set_expander_column*(tree_view: PGtkTreeView, + column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_expander_column".} +proc gtk_tree_view_get_expander_column*(tree_view: PGtkTreeView): PGtkTreeViewColumn{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_expander_column".} +proc gtk_tree_view_set_column_drag_function*(tree_view: PGtkTreeView, + func_: TGtkTreeViewColumnDropFunc, user_data: gpointer, + destroy: TGtkDestroyNotify){.cdecl, dynlib: gtklib, importc: "gtk_tree_view_set_column_drag_function".} +proc gtk_tree_view_scroll_to_point*(tree_view: PGtkTreeView, tree_x: gint, + tree_y: gint){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_scroll_to_point".} +proc gtk_tree_view_scroll_to_cell*(tree_view: PGtkTreeView, path: PGtkTreePath, + column: PGtkTreeViewColumn, + use_align: gboolean, row_align: gfloat, + col_align: gfloat){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_scroll_to_cell".} +proc gtk_tree_view_row_activated*(tree_view: PGtkTreeView, path: PGtkTreePath, + column: PGtkTreeViewColumn){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_row_activated".} +proc gtk_tree_view_expand_all*(tree_view: PGtkTreeView){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_expand_all".} +proc gtk_tree_view_collapse_all*(tree_view: PGtkTreeView){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_collapse_all".} +proc gtk_tree_view_expand_row*(tree_view: PGtkTreeView, path: PGtkTreePath, + open_all: gboolean): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_expand_row".} +proc gtk_tree_view_collapse_row*(tree_view: PGtkTreeView, path: PGtkTreePath): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_collapse_row".} +proc gtk_tree_view_map_expanded_rows*(tree_view: PGtkTreeView, + func_: TGtkTreeViewMappingFunc, + data: gpointer){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_map_expanded_rows".} +proc gtk_tree_view_row_expanded*(tree_view: PGtkTreeView, path: PGtkTreePath): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_row_expanded".} +proc gtk_tree_view_set_reorderable*(tree_view: PGtkTreeView, + reorderable: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_reorderable".} +proc gtk_tree_view_get_reorderable*(tree_view: PGtkTreeView): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_reorderable".} +proc gtk_tree_view_set_cursor*(tree_view: PGtkTreeView, path: PGtkTreePath, + focus_column: PGtkTreeViewColumn, + start_editing: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_set_cursor".} +proc gtk_tree_view_set_cursor_on_cell*(tree_view: PGtkTreeView, + path: PGtkTreePath, + focus_column: PGtkTreeViewColumn, + focus_cell: PGtkCellRenderer, + start_editing: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_cursor_on_cell".} +proc gtk_tree_view_get_bin_window*(tree_view: PGtkTreeView): PGdkWindow{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_bin_window".} +proc gtk_tree_view_get_cell_area*(tree_view: PGtkTreeView, path: PGtkTreePath, + column: PGtkTreeViewColumn, + rect: PGdkRectangle){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_get_cell_area".} +proc gtk_tree_view_get_background_area*(tree_view: PGtkTreeView, + path: PGtkTreePath, + column: PGtkTreeViewColumn, + rect: PGdkRectangle){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_background_area".} +proc gtk_tree_view_get_visible_rect*(tree_view: PGtkTreeView, + visible_rect: PGdkRectangle){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_visible_rect".} +proc gtk_tree_view_widget_to_tree_coords*(tree_view: PGtkTreeView, wx: gint, + wy: gint, tx: Pgint, ty: Pgint){.cdecl, dynlib: gtklib, importc: "gtk_tree_view_widget_to_tree_coords".} +proc gtk_tree_view_tree_to_widget_coords*(tree_view: PGtkTreeView, tx: gint, + ty: gint, wx: Pgint, wy: Pgint){.cdecl, dynlib: gtklib, importc: "gtk_tree_view_tree_to_widget_coords".} +proc gtk_tree_view_enable_model_drag_source*(tree_view: PGtkTreeView, + start_button_mask: TGdkModifierType, targets: PGtkTargetEntry, + n_targets: gint, actions: TGdkDragAction){.cdecl, dynlib: gtklib, + importc: "gtk_tree_view_enable_model_drag_source".} +proc gtk_tree_view_enable_model_drag_dest*(tree_view: PGtkTreeView, + targets: PGtkTargetEntry, n_targets: gint, actions: TGdkDragAction){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_enable_model_drag_dest".} +proc gtk_tree_view_unset_rows_drag_source*(tree_view: PGtkTreeView){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_unset_rows_drag_source".} +proc gtk_tree_view_unset_rows_drag_dest*(tree_view: PGtkTreeView){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_unset_rows_drag_dest".} +proc gtk_tree_view_set_drag_dest_row*(tree_view: PGtkTreeView, + path: PGtkTreePath, + pos: TGtkTreeViewDropPosition){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_drag_dest_row".} +proc gtk_tree_view_create_row_drag_icon*(tree_view: PGtkTreeView, + path: PGtkTreePath): PGdkPixmap{.cdecl, dynlib: gtklib, importc: "gtk_tree_view_create_row_drag_icon".} +proc gtk_tree_view_set_enable_search*(tree_view: PGtkTreeView, + enable_search: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_set_enable_search".} +proc gtk_tree_view_get_enable_search*(tree_view: PGtkTreeView): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_enable_search".} +proc gtk_tree_view_get_search_column*(tree_view: PGtkTreeView): gint{.cdecl, + dynlib: gtklib, importc: "gtk_tree_view_get_search_column".} +proc gtk_tree_view_set_search_column*(tree_view: PGtkTreeView, column: gint){. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_set_search_column".} +proc gtk_tree_view_get_search_equal_func*(tree_view: PGtkTreeView): TGtkTreeViewSearchEqualFunc{. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_get_search_equal_func".} +proc gtk_tree_view_set_search_equal_func*(tree_view: PGtkTreeView, + search_equal_func: TGtkTreeViewSearchEqualFunc, search_user_data: gpointer, + search_destroy: TGtkDestroyNotify){.cdecl, dynlib: gtklib, importc: "gtk_tree_view_set_search_equal_func".} +proc gtk_tree_view_set_destroy_count_func*(tree_view: PGtkTreeView, + func_: TGtkTreeDestroyCountFunc, data: gpointer, destroy: TGtkDestroyNotify){. + cdecl, dynlib: gtklib, importc: "gtk_tree_view_set_destroy_count_func".} +proc GTK_TYPE_VBUTTON_BOX*(): GType +proc GTK_VBUTTON_BOX*(obj: pointer): PGtkVButtonBox +proc GTK_VBUTTON_BOX_CLASS*(klass: pointer): PGtkVButtonBoxClass +proc GTK_IS_VBUTTON_BOX*(obj: pointer): bool +proc GTK_IS_VBUTTON_BOX_CLASS*(klass: pointer): bool +proc GTK_VBUTTON_BOX_GET_CLASS*(obj: pointer): PGtkVButtonBoxClass +proc gtk_vbutton_box_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vbutton_box_get_type".} +proc gtk_vbutton_box_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_vbutton_box_new".} +proc GTK_TYPE_VIEWPORT*(): GType +proc GTK_VIEWPORT*(obj: pointer): PGtkViewport +proc GTK_VIEWPORT_CLASS*(klass: pointer): PGtkViewportClass +proc GTK_IS_VIEWPORT*(obj: pointer): bool +proc GTK_IS_VIEWPORT_CLASS*(klass: pointer): bool +proc GTK_VIEWPORT_GET_CLASS*(obj: pointer): PGtkViewportClass +proc gtk_viewport_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_viewport_get_type".} +proc gtk_viewport_new*(hadjustment: PGtkAdjustment, vadjustment: PGtkAdjustment): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_viewport_new".} +proc gtk_viewport_get_hadjustment*(viewport: PGtkViewport): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_viewport_get_hadjustment".} +proc gtk_viewport_get_vadjustment*(viewport: PGtkViewport): PGtkAdjustment{. + cdecl, dynlib: gtklib, importc: "gtk_viewport_get_vadjustment".} +proc gtk_viewport_set_hadjustment*(viewport: PGtkViewport, + adjustment: PGtkAdjustment){.cdecl, + dynlib: gtklib, importc: "gtk_viewport_set_hadjustment".} +proc gtk_viewport_set_vadjustment*(viewport: PGtkViewport, + adjustment: PGtkAdjustment){.cdecl, + dynlib: gtklib, importc: "gtk_viewport_set_vadjustment".} +proc gtk_viewport_set_shadow_type*(viewport: PGtkViewport, + thetype: TGtkShadowType){.cdecl, + dynlib: gtklib, importc: "gtk_viewport_set_shadow_type".} +proc gtk_viewport_get_shadow_type*(viewport: PGtkViewport): TGtkShadowType{. + cdecl, dynlib: gtklib, importc: "gtk_viewport_get_shadow_type".} +proc GTK_TYPE_VPANED*(): GType +proc GTK_VPANED*(obj: pointer): PGtkVPaned +proc GTK_VPANED_CLASS*(klass: pointer): PGtkVPanedClass +proc GTK_IS_VPANED*(obj: pointer): bool +proc GTK_IS_VPANED_CLASS*(klass: pointer): bool +proc GTK_VPANED_GET_CLASS*(obj: pointer): PGtkVPanedClass +proc gtk_vpaned_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vpaned_get_type".} +proc gtk_vpaned_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_vpaned_new".} +proc GTK_TYPE_VRULER*(): GType +proc GTK_VRULER*(obj: pointer): PGtkVRuler +proc GTK_VRULER_CLASS*(klass: pointer): PGtkVRulerClass +proc GTK_IS_VRULER*(obj: pointer): bool +proc GTK_IS_VRULER_CLASS*(klass: pointer): bool +proc GTK_VRULER_GET_CLASS*(obj: pointer): PGtkVRulerClass +proc gtk_vruler_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vruler_get_type".} +proc gtk_vruler_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_vruler_new".} +proc GTK_TYPE_VSCALE*(): GType +proc GTK_VSCALE*(obj: pointer): PGtkVScale +proc GTK_VSCALE_CLASS*(klass: pointer): PGtkVScaleClass +proc GTK_IS_VSCALE*(obj: pointer): bool +proc GTK_IS_VSCALE_CLASS*(klass: pointer): bool +proc GTK_VSCALE_GET_CLASS*(obj: pointer): PGtkVScaleClass +proc gtk_vscale_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vscale_get_type".} +proc gtk_vscale_new*(adjustment: PGtkAdjustment): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_vscale_new".} +proc gtk_vscale_new_with_range*(min: gdouble, max: gdouble, step: gdouble): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_vscale_new_with_range".} +proc GTK_TYPE_VSCROLLBAR*(): GType +proc GTK_VSCROLLBAR*(obj: pointer): PGtkVScrollbar +proc GTK_VSCROLLBAR_CLASS*(klass: pointer): PGtkVScrollbarClass +proc GTK_IS_VSCROLLBAR*(obj: pointer): bool +proc GTK_IS_VSCROLLBAR_CLASS*(klass: pointer): bool +proc GTK_VSCROLLBAR_GET_CLASS*(obj: pointer): PGtkVScrollbarClass +proc gtk_vscrollbar_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vscrollbar_get_type".} +proc gtk_vscrollbar_new*(adjustment: PGtkAdjustment): PGtkWidget{.cdecl, + dynlib: gtklib, importc: "gtk_vscrollbar_new".} +proc GTK_TYPE_VSEPARATOR*(): GType +proc GTK_VSEPARATOR*(obj: pointer): PGtkVSeparator +proc GTK_VSEPARATOR_CLASS*(klass: pointer): PGtkVSeparatorClass +proc GTK_IS_VSEPARATOR*(obj: pointer): bool +proc GTK_IS_VSEPARATOR_CLASS*(klass: pointer): bool +proc GTK_VSEPARATOR_GET_CLASS*(obj: pointer): PGtkVSeparatorClass +proc gtk_vseparator_get_type*(): TGtkType{.cdecl, dynlib: gtklib, + importc: "gtk_vseparator_get_type".} +proc gtk_vseparator_new*(): PGtkWidget{.cdecl, dynlib: gtklib, + importc: "gtk_vseparator_new".} +proc GTK_TYPE_OBJECT*(): GType = + result = gtk_object_get_type() + +proc GTK_CHECK_CAST*(instance: Pointer, g_type: GType): PGTypeInstance = + result = G_TYPE_CHECK_INSTANCE_CAST(instance, g_type) + +proc GTK_CHECK_CLASS_CAST*(g_class: pointer, g_type: GType): Pointer = + result = G_TYPE_CHECK_CLASS_CAST(g_class, g_type) + +proc GTK_CHECK_GET_CLASS*(instance: Pointer, g_type: GType): PGTypeClass = + result = G_TYPE_INSTANCE_GET_CLASS(instance, g_type) + +proc GTK_CHECK_TYPE*(instance: Pointer, g_type: GType): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(instance, g_type) + +proc GTK_CHECK_CLASS_TYPE*(g_class: pointer, g_type: GType): bool = + result = G_TYPE_CHECK_CLASS_TYPE(g_class, g_type) + +proc GTK_OBJECT*(anObject: pointer): PGtkObject = + result = cast[PGtkObject](GTK_CHECK_CAST(anObject, GTK_TYPE_OBJECT())) + +proc GTK_OBJECT_CLASS*(klass: pointer): PGtkObjectClass = + result = cast[PGtkObjectClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_OBJECT())) + +proc GTK_IS_OBJECT*(anObject: pointer): bool = + result = GTK_CHECK_TYPE(anObject, GTK_TYPE_OBJECT()) + +proc GTK_IS_OBJECT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_OBJECT()) + +proc GTK_OBJECT_GET_CLASS*(anObject: pointer): PGtkObjectClass = + result = cast[PGtkObjectClass](GTK_CHECK_GET_CLASS(anObject, GTK_TYPE_OBJECT())) + +proc GTK_OBJECT_TYPE*(anObject: pointer): GType = + result = G_TYPE_FROM_INSTANCE(anObject) + +proc GTK_OBJECT_TYPE_NAME*(anObject: pointer): cstring = + result = g_type_name(GTK_OBJECT_TYPE(anObject)) + +proc GTK_OBJECT_FLAGS*(obj: pointer): guint32 = + result = (GTK_OBJECT(obj)).flags + +proc GTK_OBJECT_FLOATING*(obj: pointer): gboolean = + result = ((GTK_OBJECT_FLAGS(obj)) and GTK_FLOATING) != 0 + +proc GTK_OBJECT_SET_FLAGS*(obj: pointer, flag: guint32) = + GTK_OBJECT(obj).flags = GTK_OBJECT(obj).flags or int(flag) + +proc GTK_OBJECT_UNSET_FLAGS*(obj: pointer, flag: guint32) = + GTK_OBJECT(obj) . flags = GTK_OBJECT(obj). flags and not int(flag) + +proc gtk_object_data_try_key*(`string`: cstring): TGQuark = + result = g_quark_try_string(`string`) + +proc gtk_object_data_force_id*(`string`: cstring): TGQuark = + result = g_quark_from_string(`string`) + +proc GTK_CLASS_NAME*(`class`: pointer): cstring = + result = g_type_name(G_TYPE_FROM_CLASS(`class`)) + +proc GTK_CLASS_TYPE*(`class`: pointer): GType = + result = G_TYPE_FROM_CLASS(`class`) + +proc GTK_TYPE_IS_OBJECT*(thetype: GType): gboolean = + result = g_type_is_a(thetype, GTK_TYPE_OBJECT()) + +proc GTK_TYPE_IDENTIFIER*(): GType = + result = gtk_identifier_get_type() + +proc GTK_SIGNAL_FUNC*(f: pointer): TGtkSignalFunc = + result = cast[TGtkSignalFunc](f) + +proc gtk_type_name*(thetype: GType): cstring = + result = g_type_name(thetype) + +proc gtk_type_from_name*(name: cstring): GType = + result = g_type_from_name(name) + +proc gtk_type_parent*(thetype: GType): GType = + result = g_type_parent(thetype) + +proc gtk_type_is_a*(thetype, is_a_type: GType): gboolean = + result = g_type_is_a(thetype, is_a_type) + +proc GTK_FUNDAMENTAL_TYPE*(thetype: GType): GType = + result = G_TYPE_FUNDAMENTAL(thetype) + +proc GTK_VALUE_CHAR*(a: TGtkArg): gchar = + Result = cast[ptr gchar](addr(a.d))^ + +proc GTK_VALUE_UCHAR*(a: TGtkArg): guchar = + Result = cast[ptr guchar](addr(a.d))^ + +proc GTK_VALUE_BOOL*(a: TGtkArg): gboolean = + Result = cast[ptr gboolean](addr(a.d))^ + +proc GTK_VALUE_INT*(a: TGtkArg): gint = + Result = cast[ptr gint](addr(a.d))^ + +proc GTK_VALUE_UINT*(a: TGtkArg): guint = + Result = cast[ptr guint](addr(a.d))^ + +proc GTK_VALUE_LONG*(a: TGtkArg): glong = + Result = cast[ptr glong](addr(a.d))^ + +proc GTK_VALUE_ULONG*(a: TGtkArg): gulong = + Result = cast[ptr gulong](addr(a.d))^ + +proc GTK_VALUE_FLOAT*(a: TGtkArg): gfloat = + Result = cast[ptr gfloat](addr(a.d))^ + +proc GTK_VALUE_DOUBLE*(a: TGtkArg): gdouble = + Result = cast[ptr gdouble](addr(a.d))^ + +proc GTK_VALUE_STRING*(a: TGtkArg): cstring = + Result = cast[ptr cstring](addr(a.d))^ + +proc GTK_VALUE_ENUM*(a: TGtkArg): gint = + Result = cast[ptr gint](addr(a.d))^ + +proc GTK_VALUE_FLAGS*(a: TGtkArg): guint = + Result = cast[ptr guint](addr(a.d))^ + +proc GTK_VALUE_BOXED*(a: TGtkArg): gpointer = + Result = cast[ptr gpointer](addr(a.d))^ + +proc GTK_VALUE_OBJECT*(a: TGtkArg): PGtkObject = + Result = cast[ptr PGtkObject](addr(a.d))^ + +proc GTK_VALUE_POINTER*(a: TGtkArg): GPointer = + Result = cast[ptr gpointer](addr(a.d))^ + +proc GTK_VALUE_SIGNAL*(a: TGtkArg): TGtkArgSignalData = + Result = cast[ptr TGtkArgSignalData](addr(a.d))^ + +proc GTK_RETLOC_CHAR*(a: TGtkArg): cstring = + Result = cast[ptr cstring](addr(a.d))^ + +proc GTK_RETLOC_UCHAR*(a: TGtkArg): Pguchar = + Result = cast[ptr pguchar](addr(a.d))^ + +proc GTK_RETLOC_BOOL*(a: TGtkArg): Pgboolean = + Result = cast[ptr pgboolean](addr(a.d))^ + +proc GTK_RETLOC_INT*(a: TGtkArg): Pgint = + Result = cast[ptr pgint](addr(a.d))^ + +proc GTK_RETLOC_UINT*(a: TGtkArg): Pguint = + Result = cast[ptr pguint](addr(a.d))^ + +proc GTK_RETLOC_LONG*(a: TGtkArg): Pglong = + Result = cast[ptr pglong](addr(a.d))^ + +proc GTK_RETLOC_ULONG*(a: TGtkArg): Pgulong = + Result = cast[ptr pgulong](addr(a.d))^ + +proc GTK_RETLOC_FLOAT*(a: TGtkArg): Pgfloat = + Result = cast[ptr pgfloat](addr(a.d))^ + +proc GTK_RETLOC_DOUBLE*(a: TGtkArg): Pgdouble = + Result = cast[ptr pgdouble](addr(a.d))^ + +proc GTK_RETLOC_STRING*(a: TGtkArg): Ppgchar = + Result = cast[ptr Ppgchar](addr(a.d))^ + +proc GTK_RETLOC_ENUM*(a: TGtkArg): Pgint = + Result = cast[ptr Pgint](addr(a.d))^ + +proc GTK_RETLOC_FLAGS*(a: TGtkArg): Pguint = + Result = cast[ptr pguint](addr(a.d))^ + +proc GTK_RETLOC_BOXED*(a: TGtkArg): Pgpointer = + Result = cast[ptr pgpointer](addr(a.d))^ + +proc GTK_RETLOC_OBJECT*(a: TGtkArg): PPGtkObject = + Result = cast[ptr ppgtkobject](addr(a.d))^ + +proc GTK_RETLOC_POINTER*(a: TGtkArg): Pgpointer = + Result = cast[ptr pgpointer](addr(a.d))^ + +proc GTK_TYPE_WIDGET*(): GType = + result = gtk_widget_get_type() + +proc GTK_WIDGET*(widget: pointer): PGtkWidget = + result = cast[PGtkWidget](GTK_CHECK_CAST(widget, GTK_TYPE_WIDGET())) + +proc GTK_WIDGET_CLASS*(klass: pointer): PGtkWidgetClass = + result = cast[PGtkWidgetClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_WIDGET())) + +proc GTK_IS_WIDGET*(widget: pointer): bool = + result = GTK_CHECK_TYPE(widget, GTK_TYPE_WIDGET()) + +proc GTK_IS_WIDGET_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_WIDGET()) + +proc GTK_WIDGET_GET_CLASS*(obj: pointer): PGtkWidgetClass = + result = cast[PGtkWidgetClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_WIDGET())) + +proc GTK_WIDGET_TYPE*(wid: pointer): GType = + result = GTK_OBJECT_TYPE(wid) + +proc GTK_WIDGET_STATE*(wid: pointer): int32 = + result = (GTK_WIDGET(wid)) . state + +proc GTK_WIDGET_SAVED_STATE*(wid: pointer): int32 = + result = (GTK_WIDGET(wid)) . saved_state + +proc GTK_WIDGET_FLAGS*(wid: pointer): guint32 = + result = GTK_OBJECT_FLAGS(wid) + +proc GTK_WIDGET_TOPLEVEL*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_TOPLEVEL) != 0 + +proc GTK_WIDGET_NO_WINDOW*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_NO_WINDOW) != 0 + +proc GTK_WIDGET_REALIZED*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_REALIZED) != 0 + +proc GTK_WIDGET_MAPPED*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_MAPPED) != 0 + +proc GTK_WIDGET_VISIBLE*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_VISIBLE) != 0 + +proc GTK_WIDGET_DRAWABLE*(wid: pointer): gboolean = + result = (GTK_WIDGET_VISIBLE(wid)) and (GTK_WIDGET_MAPPED(wid)) + +proc GTK_WIDGET_SENSITIVE*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_SENSITIVE) != 0 + +proc GTK_WIDGET_PARENT_SENSITIVE*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_PARENT_SENSITIVE) != 0 + +proc GTK_WIDGET_IS_SENSITIVE*(wid: pointer): gboolean = + result = (GTK_WIDGET_SENSITIVE(wid)) and (GTK_WIDGET_PARENT_SENSITIVE(wid)) + +proc GTK_WIDGET_CAN_FOCUS*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_CAN_FOCUS) != 0 + +proc GTK_WIDGET_HAS_FOCUS*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_HAS_FOCUS) != 0 + +proc GTK_WIDGET_CAN_DEFAULT*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_CAN_DEFAULT) != 0 + +proc GTK_WIDGET_HAS_DEFAULT*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_HAS_DEFAULT) != 0 + +proc GTK_WIDGET_HAS_GRAB*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_HAS_GRAB) != 0 + +proc GTK_WIDGET_RC_STYLE*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_RC_STYLE) != 0 + +proc GTK_WIDGET_COMPOSITE_CHILD*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_COMPOSITE_CHILD) != 0 + +proc GTK_WIDGET_APP_PAINTABLE*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_APP_PAINTABLE) != 0 + +proc GTK_WIDGET_RECEIVES_DEFAULT*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_RECEIVES_DEFAULT) != 0 + +proc GTK_WIDGET_DOUBLE_BUFFERED*(wid: pointer): gboolean = + result = ((GTK_WIDGET_FLAGS(wid)) and GTK_DOUBLE_BUFFERED) != 0 + +proc GTK_TYPE_REQUISITION*(): GType = + result = gtk_requisition_get_type() + +proc x_set*(a: var TGtkWidgetAuxInfo): guint = + result = (a.flag0 and bm_TGtkWidgetAuxInfo_x_set) shr + bp_TGtkWidgetAuxInfo_x_set + +proc set_x_set*(a: var TGtkWidgetAuxInfo, `x_set`: guint) = + a.flag0 = a.flag0 or + ((`x_set` shl bp_TGtkWidgetAuxInfo_x_set) and + bm_TGtkWidgetAuxInfo_x_set) + +proc y_set*(a: var TGtkWidgetAuxInfo): guint = + result = (a.flag0 and bm_TGtkWidgetAuxInfo_y_set) shr + bp_TGtkWidgetAuxInfo_y_set + +proc set_y_set*(a: var TGtkWidgetAuxInfo, `y_set`: guint) = + a.flag0 = a.flag0 or + ((`y_set` shl bp_TGtkWidgetAuxInfo_y_set) and + bm_TGtkWidgetAuxInfo_y_set) + +proc gtk_widget_set_visual*(widget, visual: pointer) = + if (Widget != nil) and (visual != nil): nil + +proc gtk_widget_push_visual*(visual: pointer) = + if (visual != nil): nil + +proc gtk_widget_pop_visual*() = + nil + +proc gtk_widget_set_default_visual*(visual: pointer) = + if (visual != nil): nil + +proc gtk_widget_set_rc_style*(widget: pointer) = + gtk_widget_set_style(cast[PGtkWidget](widget), nil) + +proc gtk_widget_restore_default_style*(widget: pointer) = + gtk_widget_set_style(cast[PGtkWidget](widget), nil) + +proc GTK_WIDGET_SET_FLAGS*(wid: PGtkWidget, flags: TGtkWidgetFlags): TGtkWidgetFlags = + cast[pGtkObject](wid).flags = cast[pGtkObject](wid).flags or int(flags) + result = cast[pGtkObject](wid).flags + +proc GTK_WIDGET_UNSET_FLAGS*(wid: PGtkWidget, flags: TGtkWidgetFlags): TGtkWidgetFlags = + cast[pGtkObject](wid).flags = cast[pGtkObject](wid).flags and (not int(flags)) + result = cast[pGtkObject](wid).flags + +proc GTK_TYPE_MISC*(): GType = + result = gtk_misc_get_type() + +proc GTK_MISC*(obj: pointer): PGtkMisc = + result = cast[PGtkMisc](GTK_CHECK_CAST(obj, GTK_TYPE_MISC())) + +proc GTK_MISC_CLASS*(klass: pointer): PGtkMiscClass = + result = cast[PGtkMiscClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_MISC())) + +proc GTK_IS_MISC*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_MISC()) + +proc GTK_IS_MISC_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_MISC()) + +proc GTK_MISC_GET_CLASS*(obj: pointer): PGtkMiscClass = + result = cast[PGtkMiscClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_MISC())) + +proc GTK_TYPE_ACCEL_GROUP*(): GType = + result = gtk_accel_group_get_type() + +proc GTK_ACCEL_GROUP*(anObject: pointer): PGtkAccelGroup = + result = cast[PGtkAccelGroup](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GTK_TYPE_ACCEL_GROUP())) + +proc GTK_ACCEL_GROUP_CLASS*(klass: pointer): PGtkAccelGroupClass = + result = cast[PGtkAccelGroupClass](G_TYPE_CHECK_CLASS_CAST(klass, + GTK_TYPE_ACCEL_GROUP())) + +proc GTK_IS_ACCEL_GROUP*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_ACCEL_GROUP()) + +proc GTK_IS_ACCEL_GROUP_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_ACCEL_GROUP()) + +proc GTK_ACCEL_GROUP_GET_CLASS*(obj: pointer): PGtkAccelGroupClass = + result = cast[PGtkAccelGroupClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GTK_TYPE_ACCEL_GROUP())) + +proc accel_flags*(a: var TGtkAccelKey): guint = + result = (a.flag0 and bm_TGtkAccelKey_accel_flags) shr + bp_TGtkAccelKey_accel_flags + +proc set_accel_flags*(a: var TGtkAccelKey, `accel_flags`: guint) = + a.flag0 = a.flag0 or + ((`accel_flags` shl bp_TGtkAccelKey_accel_flags) and + bm_TGtkAccelKey_accel_flags) + +proc gtk_accel_group_ref*(AccelGroup: PGtkAccelGroup) = + discard g_object_ref(AccelGroup) + +proc gtk_accel_group_unref*(AccelGroup: PGtkAccelGroup) = + g_object_unref(AccelGroup) + +proc GTK_TYPE_CONTAINER*(): GType = + result = gtk_container_get_type() + +proc GTK_CONTAINER*(obj: pointer): PGtkContainer = + result = cast[PGtkContainer](GTK_CHECK_CAST(obj, GTK_TYPE_CONTAINER())) + +proc GTK_CONTAINER_CLASS*(klass: pointer): PGtkContainerClass = + result = cast[PGtkContainerClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_CONTAINER())) + +proc GTK_IS_CONTAINER*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CONTAINER()) + +proc GTK_IS_CONTAINER_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CONTAINER()) + +proc GTK_CONTAINER_GET_CLASS*(obj: pointer): PGtkContainerClass = + result = cast[PGtkContainerClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CONTAINER())) + +proc GTK_IS_RESIZE_CONTAINER*(widget: pointer): bool = + result = (GTK_IS_CONTAINER(widget)) and + ((resize_mode(cast[PGtkContainer](widget))) != ord(GTK_RESIZE_PARENT)) + +proc border_width*(a: var TGtkContainer): guint = + result = (a.GtkContainer_flag0 and bm_TGtkContainer_border_width) shr + bp_TGtkContainer_border_width + +proc set_border_width*(a: var TGtkContainer, `border_width`: guint) = + a.GtkContainer_flag0 = a.GtkContainer_flag0 or + ((`border_width` shl bp_TGtkContainer_border_width) and + bm_TGtkContainer_border_width) + +proc need_resize*(a: var TGtkContainer): guint = + result = (a.GtkContainer_flag0 and bm_TGtkContainer_need_resize) shr + bp_TGtkContainer_need_resize + +proc set_need_resize*(a: var TGtkContainer, `need_resize`: guint) = + a.GtkContainer_flag0 = a.GtkContainer_flag0 or + ((`need_resize` shl bp_TGtkContainer_need_resize) and + bm_TGtkContainer_need_resize) + +proc resize_mode*(a: PGtkContainer): guint = + result = (a.GtkContainer_flag0 and bm_TGtkContainer_resize_mode) shr + bp_TGtkContainer_resize_mode + +proc set_resize_mode*(a: var TGtkContainer, `resize_mode`: guint) = + a.GtkContainerflag0 = a.GtkContainerflag0 or + ((`resize_mode` shl bp_TGtkContainer_resize_mode) and + bm_TGtkContainer_resize_mode) + +proc reallocate_redraws*(a: var TGtkContainer): guint = + result = (a.GtkContainerflag0 and bm_TGtkContainer_reallocate_redraws) shr + bp_TGtkContainer_reallocate_redraws + +proc set_reallocate_redraws*(a: var TGtkContainer, `reallocate_redraws`: guint) = + a.GtkContainerflag0 = a.GtkContainerflag0 or + ((`reallocate_redraws` shl bp_TGtkContainer_reallocate_redraws) and + bm_TGtkContainer_reallocate_redraws) + +proc has_focus_chain*(a: var TGtkContainer): guint = + result = (a.GtkContainerflag0 and bm_TGtkContainer_has_focus_chain) shr + bp_TGtkContainer_has_focus_chain + +proc set_has_focus_chain*(a: var TGtkContainer, `has_focus_chain`: guint) = + a.GtkContainerflag0 = a.GtkContainerflag0 or + ((`has_focus_chain` shl bp_TGtkContainer_has_focus_chain) and + bm_TGtkContainer_has_focus_chain) + +proc GTK_CONTAINER_WARN_INVALID_CHILD_PROPERTY_ID*(anObject: pointer, + property_id: guint, pspec: pointer) = + write(stdout, "WARNING: invalid child property id\n") + +proc GTK_TYPE_BIN*(): GType = + result = gtk_bin_get_type() + +proc GTK_BIN*(obj: pointer): PGtkBin = + result = cast[PGtkBin](GTK_CHECK_CAST(obj, GTK_TYPE_BIN())) + +proc GTK_BIN_CLASS*(klass: pointer): PGtkBinClass = + result = cast[PGtkBinClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_BIN())) + +proc GTK_IS_BIN*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_BIN()) + +proc GTK_IS_BIN_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_BIN()) + +proc GTK_BIN_GET_CLASS*(obj: pointer): PGtkBinClass = + result = cast[PGtkBinClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_BIN())) + +proc GTK_TYPE_WINDOW*(): GType = + result = gtk_window_get_type() + +proc GTK_WINDOW*(obj: pointer): PGtkWindow = + result = cast[PGtkWindow](GTK_CHECK_CAST(obj, GTK_TYPE_WINDOW())) + +proc GTK_WINDOW_CLASS*(klass: pointer): PGtkWindowClass = + result = cast[PGtkWindowClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_WINDOW())) + +proc GTK_IS_WINDOW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_WINDOW()) + +proc GTK_IS_WINDOW_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_WINDOW()) + +proc GTK_WINDOW_GET_CLASS*(obj: pointer): PGtkWindowClass = + result = cast[PGtkWindowClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_WINDOW())) + +proc allow_shrink*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_allow_shrink) shr + bp_TGtkWindow_allow_shrink + +proc set_allow_shrink*(a: var TGtkWindow, `allow_shrink`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`allow_shrink` shl bp_TGtkWindow_allow_shrink) and + bm_TGtkWindow_allow_shrink) + +proc allow_grow*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_allow_grow) shr + bp_TGtkWindow_allow_grow + +proc set_allow_grow*(a: var TGtkWindow, `allow_grow`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`allow_grow` shl bp_TGtkWindow_allow_grow) and + bm_TGtkWindow_allow_grow) + +proc configure_notify_received*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_configure_notify_received) shr + bp_TGtkWindow_configure_notify_received + +proc set_configure_notify_received*(a: var TGtkWindow, + `configure_notify_received`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`configure_notify_received` shl + bp_TGtkWindow_configure_notify_received) and + bm_TGtkWindow_configure_notify_received) + +proc need_default_position*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_need_default_position) shr + bp_TGtkWindow_need_default_position + +proc set_need_default_position*(a: var TGtkWindow, + `need_default_position`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`need_default_position` shl bp_TGtkWindow_need_default_position) and + bm_TGtkWindow_need_default_position) + +proc need_default_size*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_need_default_size) shr + bp_TGtkWindow_need_default_size + +proc set_need_default_size*(a: var TGtkWindow, `need_default_size`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`need_default_size` shl bp_TGtkWindow_need_default_size) and + bm_TGtkWindow_need_default_size) + +proc position*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_position) shr bp_TGtkWindow_position + +proc set_position*(a: var TGtkWindow, `position`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`position` shl bp_TGtkWindow_position) and bm_TGtkWindow_position) + +proc get_type*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_type) shr bp_TGtkWindow_type + +proc set_type*(a: var TGtkWindow, `type`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`type` shl bp_TGtkWindow_type) and bm_TGtkWindow_type) + +proc has_user_ref_count*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_has_user_ref_count) shr + bp_TGtkWindow_has_user_ref_count + +proc set_has_user_ref_count*(a: var TGtkWindow, `has_user_ref_count`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`has_user_ref_count` shl bp_TGtkWindow_has_user_ref_count) and + bm_TGtkWindow_has_user_ref_count) + +proc has_focus*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_has_focus) shr bp_TGtkWindow_has_focus + +proc set_has_focus*(a: var TGtkWindow, `has_focus`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`has_focus` shl bp_TGtkWindow_has_focus) and bm_TGtkWindow_has_focus) + +proc modal*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_modal) shr bp_TGtkWindow_modal + +proc set_modal*(a: var TGtkWindow, `modal`: guint) = + a.GtkWindow_flag0 = a.GtkWindow_flag0 or + ((`modal` shl bp_TGtkWindow_modal) and bm_TGtkWindow_modal) + +proc destroy_with_parent*(a: var TGtkWindow): guint = + result = (a.GtkWindow_flag0 and bm_TGtkWindow_destroy_with_parent) shr + bp_TGtkWindow_destroy_with_parent + +proc set_destroy_with_parent*(a: var TGtkWindow, `destroy_with_parent`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`destroy_with_parent` shl bp_TGtkWindow_destroy_with_parent) and + bm_TGtkWindow_destroy_with_parent) + +proc has_frame*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_has_frame) shr bp_TGtkWindow_has_frame + +proc set_has_frame*(a: var TGtkWindow, `has_frame`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`has_frame` shl bp_TGtkWindow_has_frame) and bm_TGtkWindow_has_frame) + +proc iconify_initially*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_iconify_initially) shr + bp_TGtkWindow_iconify_initially + +proc set_iconify_initially*(a: var TGtkWindow, `iconify_initially`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`iconify_initially` shl bp_TGtkWindow_iconify_initially) and + bm_TGtkWindow_iconify_initially) + +proc stick_initially*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_stick_initially) shr + bp_TGtkWindow_stick_initially + +proc set_stick_initially*(a: var TGtkWindow, `stick_initially`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`stick_initially` shl bp_TGtkWindow_stick_initially) and + bm_TGtkWindow_stick_initially) + +proc maximize_initially*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_maximize_initially) shr + bp_TGtkWindow_maximize_initially + +proc set_maximize_initially*(a: var TGtkWindow, `maximize_initially`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`maximize_initially` shl bp_TGtkWindow_maximize_initially) and + bm_TGtkWindow_maximize_initially) + +proc decorated*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_decorated) shr bp_TGtkWindow_decorated + +proc set_decorated*(a: var TGtkWindow, `decorated`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`decorated` shl bp_TGtkWindow_decorated) and bm_TGtkWindow_decorated) + +proc type_hint*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_type_hint) shr bp_TGtkWindow_type_hint + +proc set_type_hint*(a: var TGtkWindow, `type_hint`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`type_hint` shl bp_TGtkWindow_type_hint) and bm_TGtkWindow_type_hint) + +proc gravity*(a: var TGtkWindow): guint = + result = (a.GtkWindowflag0 and bm_TGtkWindow_gravity) shr bp_TGtkWindow_gravity + +proc set_gravity*(a: var TGtkWindow, `gravity`: guint) = + a.GtkWindowflag0 = a.GtkWindowflag0 or + ((`gravity` shl bp_TGtkWindow_gravity) and bm_TGtkWindow_gravity) + +proc GTK_TYPE_WINDOW_GROUP*(): GType = + result = gtk_window_group_get_type() + +proc GTK_WINDOW_GROUP*(anObject: pointer): PGtkWindowGroup = + result = cast[PGtkWindowGroup](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GTK_TYPE_WINDOW_GROUP())) + +proc GTK_WINDOW_GROUP_CLASS*(klass: pointer): PGtkWindowGroupClass = + result = cast[PGtkWindowGroupClass](G_TYPE_CHECK_CLASS_CAST(klass, + GTK_TYPE_WINDOW_GROUP())) + +proc GTK_IS_WINDOW_GROUP*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_WINDOW_GROUP()) + +proc GTK_IS_WINDOW_GROUP_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_WINDOW_GROUP()) + +proc GTK_WINDOW_GROUP_GET_CLASS*(obj: pointer): PGtkWindowGroupClass = + result = cast[PGtkWindowGroupClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GTK_TYPE_WINDOW_GROUP())) + +proc gtk_window_position*(window: PGtkWindow, position: TGtkWindowPosition) = + gtk_window_set_position(window, position) + +proc GTK_TYPE_LABEL*(): GType = + result = gtk_label_get_type() + +proc GTK_LABEL*(obj: pointer): PGtkLabel = + result = cast[PGtkLabel](GTK_CHECK_CAST(obj, GTK_TYPE_LABEL())) + +proc GTK_LABEL_CLASS*(klass: pointer): PGtkLabelClass = + result = cast[PGtkLabelClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_LABEL())) + +proc GTK_IS_LABEL*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_LABEL()) + +proc GTK_IS_LABEL_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_LABEL()) + +proc GTK_LABEL_GET_CLASS*(obj: pointer): PGtkLabelClass = + result = cast[PGtkLabelClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_LABEL())) + +proc jtype*(a: var TGtkLabel): guint = + result = (a.GtkLabelflag0 and bm_TGtkLabel_jtype) shr bp_TGtkLabel_jtype + +proc set_jtype*(a: var TGtkLabel, `jtype`: guint) = + a.GtkLabelflag0 = a.GtkLabelflag0 or + ((`jtype` shl bp_TGtkLabel_jtype) and bm_TGtkLabel_jtype) + +proc wrap*(a: var TGtkLabel): guint = + result = (a.GtkLabelflag0 and bm_TGtkLabel_wrap) shr bp_TGtkLabel_wrap + +proc set_wrap*(a: var TGtkLabel, `wrap`: guint) = + a.GtkLabelflag0 = a.GtkLabelflag0 or ((`wrap` shl bp_TGtkLabel_wrap) and bm_TGtkLabel_wrap) + +proc use_underline*(a: var TGtkLabel): guint = + result = (a.GtkLabelflag0 and bm_TGtkLabel_use_underline) shr + bp_TGtkLabel_use_underline + +proc set_use_underline*(a: var TGtkLabel, `use_underline`: guint) = + a.GtkLabelflag0 = a.GtkLabelflag0 or + ((`use_underline` shl bp_TGtkLabel_use_underline) and + bm_TGtkLabel_use_underline) + +proc use_markup*(a: var TGtkLabel): guint = + result = (a.GtkLabelflag0 and bm_TGtkLabel_use_markup) shr bp_TGtkLabel_use_markup + +proc set_use_markup*(a: var TGtkLabel, `use_markup`: guint) = + a.GtkLabelflag0 = a.GtkLabelflag0 or + ((`use_markup` shl bp_TGtkLabel_use_markup) and bm_TGtkLabel_use_markup) + +proc GTK_TYPE_ACCEL_LABEL*(): GType = + result = gtk_accel_label_get_type() + +proc GTK_ACCEL_LABEL*(obj: pointer): PGtkAccelLabel = + result = cast[PGtkAccelLabel](GTK_CHECK_CAST(obj, GTK_TYPE_ACCEL_LABEL())) + +proc GTK_ACCEL_LABEL_CLASS*(klass: pointer): PGtkAccelLabelClass = + result = cast[PGtkAccelLabelClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ACCEL_LABEL())) + +proc GTK_IS_ACCEL_LABEL*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ACCEL_LABEL()) + +proc GTK_IS_ACCEL_LABEL_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ACCEL_LABEL()) + +proc GTK_ACCEL_LABEL_GET_CLASS*(obj: pointer): PGtkAccelLabelClass = + result = cast[PGtkAccelLabelClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ACCEL_LABEL())) + +proc latin1_to_char*(a: var TGtkAccelLabelClass): guint = + result = (a.GtkAccelLabelClassflag0 and bm_TGtkAccelLabelClass_latin1_to_char) shr + bp_TGtkAccelLabelClass_latin1_to_char + +proc set_latin1_to_char*(a: var TGtkAccelLabelClass, `latin1_to_char`: guint) = + a.GtkAccelLabelClassflag0 = a.GtkAccelLabelClassflag0 or + ((`latin1_to_char` shl bp_TGtkAccelLabelClass_latin1_to_char) and + bm_TGtkAccelLabelClass_latin1_to_char) + +proc gtk_accel_label_accelerator_width*(accel_label: PGtkAccelLabel): guint = + result = gtk_accel_label_get_accel_width(accel_label) + +proc GTK_TYPE_ACCESSIBLE*(): GType = + result = gtk_accessible_get_type() + +proc GTK_ACCESSIBLE*(obj: pointer): PGtkAccessible = + result = cast[PGtkAccessible](GTK_CHECK_CAST(obj, GTK_TYPE_ACCESSIBLE())) + +proc GTK_ACCESSIBLE_CLASS*(klass: pointer): PGtkAccessibleClass = + result = cast[PGtkAccessibleClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ACCESSIBLE())) + +proc GTK_IS_ACCESSIBLE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ACCESSIBLE()) + +proc GTK_IS_ACCESSIBLE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ACCESSIBLE()) + +proc GTK_ACCESSIBLE_GET_CLASS*(obj: pointer): PGtkAccessibleClass = + result = cast[PGtkAccessibleClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ACCESSIBLE())) + +proc GTK_TYPE_ADJUSTMENT*(): GType = + result = gtk_adjustment_get_type() + +proc GTK_ADJUSTMENT*(obj: pointer): PGtkAdjustment = + result = cast[PGtkAdjustment](GTK_CHECK_CAST(obj, GTK_TYPE_ADJUSTMENT())) + +proc GTK_ADJUSTMENT_CLASS*(klass: pointer): PGtkAdjustmentClass = + result = cast[PGtkAdjustmentClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ADJUSTMENT())) + +proc GTK_IS_ADJUSTMENT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ADJUSTMENT()) + +proc GTK_IS_ADJUSTMENT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ADJUSTMENT()) + +proc GTK_ADJUSTMENT_GET_CLASS*(obj: pointer): PGtkAdjustmentClass = + result = cast[PGtkAdjustmentClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ADJUSTMENT())) + +proc GTK_TYPE_ALIGNMENT*(): GType = + result = gtk_alignment_get_type() + +proc GTK_ALIGNMENT*(obj: pointer): PGtkAlignment = + result = cast[PGtkAlignment](GTK_CHECK_CAST(obj, GTK_TYPE_ALIGNMENT())) + +proc GTK_ALIGNMENT_CLASS*(klass: pointer): PGtkAlignmentClass = + result = cast[PGtkAlignmentClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ALIGNMENT())) + +proc GTK_IS_ALIGNMENT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ALIGNMENT()) + +proc GTK_IS_ALIGNMENT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ALIGNMENT()) + +proc GTK_ALIGNMENT_GET_CLASS*(obj: pointer): PGtkAlignmentClass = + result = cast[PGtkAlignmentClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ALIGNMENT())) + +proc GTK_TYPE_FRAME*(): GType = + result = gtk_frame_get_type() + +proc GTK_FRAME*(obj: pointer): PGtkFrame = + result = cast[PGtkFrame](GTK_CHECK_CAST(obj, GTK_TYPE_FRAME())) + +proc GTK_FRAME_CLASS*(klass: pointer): PGtkFrameClass = + result = cast[PGtkFrameClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_FRAME())) + +proc GTK_IS_FRAME*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_FRAME()) + +proc GTK_IS_FRAME_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_FRAME()) + +proc GTK_FRAME_GET_CLASS*(obj: pointer): PGtkFrameClass = + result = cast[PGtkFrameClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_FRAME())) + +proc GTK_TYPE_ASPECT_FRAME*(): GType = + result = gtk_aspect_frame_get_type() + +proc GTK_ASPECT_FRAME*(obj: pointer): PGtkAspectFrame = + result = cast[PGtkAspectFrame](GTK_CHECK_CAST(obj, GTK_TYPE_ASPECT_FRAME())) + +proc GTK_ASPECT_FRAME_CLASS*(klass: pointer): PGtkAspectFrameClass = + result = cast[PGtkAspectFrameClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_ASPECT_FRAME())) + +proc GTK_IS_ASPECT_FRAME*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ASPECT_FRAME()) + +proc GTK_IS_ASPECT_FRAME_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ASPECT_FRAME()) + +proc GTK_ASPECT_FRAME_GET_CLASS*(obj: pointer): PGtkAspectFrameClass = + result = cast[PGtkAspectFrameClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ASPECT_FRAME())) + +proc GTK_TYPE_ARROW*(): GType = + result = gtk_arrow_get_type() + +proc GTK_ARROW*(obj: pointer): PGtkArrow = + result = cast[PGtkArrow](GTK_CHECK_CAST(obj, GTK_TYPE_ARROW())) + +proc GTK_ARROW_CLASS*(klass: pointer): PGtkArrowClass = + result = cast[PGtkArrowClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ARROW())) + +proc GTK_IS_ARROW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ARROW()) + +proc GTK_IS_ARROW_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ARROW()) + +proc GTK_ARROW_GET_CLASS*(obj: pointer): PGtkArrowClass = + result = cast[PGtkArrowClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ARROW())) + +proc parsed*(a: var TGtkBindingSet): guint = + result = (a.flag0 and bm_TGtkBindingSet_parsed) shr + bp_TGtkBindingSet_parsed + +proc set_parsed*(a: var TGtkBindingSet, `parsed`: guint) = + a.flag0 = a.flag0 or + ((`parsed` shl bp_TGtkBindingSet_parsed) and bm_TGtkBindingSet_parsed) + +proc destroyed*(a: var TGtkBindingEntry): guint = + result = (a.flag0 and bm_TGtkBindingEntry_destroyed) shr + bp_TGtkBindingEntry_destroyed + +proc set_destroyed*(a: var TGtkBindingEntry, `destroyed`: guint) = + a.flag0 = a.flag0 or + ((`destroyed` shl bp_TGtkBindingEntry_destroyed) and + bm_TGtkBindingEntry_destroyed) + +proc in_emission*(a: var TGtkBindingEntry): guint = + result = (a.flag0 and bm_TGtkBindingEntry_in_emission) shr + bp_TGtkBindingEntry_in_emission + +proc set_in_emission*(a: var TGtkBindingEntry, `in_emission`: guint) = + a.flag0 = a.flag0 or + ((`in_emission` shl bp_TGtkBindingEntry_in_emission) and + bm_TGtkBindingEntry_in_emission) + +proc gtk_binding_entry_add*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType) = + gtk_binding_entry_clear(binding_set, keyval, modifiers) + +proc GTK_TYPE_BOX*(): GType = + result = gtk_box_get_type() + +proc GTK_BOX*(obj: pointer): PGtkBox = + result = cast[PGtkBox](GTK_CHECK_CAST(obj, GTK_TYPE_BOX())) + +proc GTK_BOX_CLASS*(klass: pointer): PGtkBoxClass = + result = cast[PGtkBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_BOX())) + +proc GTK_IS_BOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_BOX()) + +proc GTK_IS_BOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_BOX()) + +proc GTK_BOX_GET_CLASS*(obj: pointer): PGtkBoxClass = + result = cast[PGtkBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_BOX())) + +proc homogeneous*(a: var TGtkBox): guint = + result = (a.GtkBoxflag0 and bm_TGtkBox_homogeneous) shr bp_TGtkBox_homogeneous + +proc set_homogeneous*(a: var TGtkBox, `homogeneous`: guint) = + a.GtkBoxflag0 = a.GtkBoxflag0 or + ((`homogeneous` shl bp_TGtkBox_homogeneous) and bm_TGtkBox_homogeneous) + +proc expand*(a: var TGtkBoxChild): guint = + result = (a.flag0 and bm_TGtkBoxChild_expand) shr bp_TGtkBoxChild_expand + +proc set_expand*(a: var TGtkBoxChild, `expand`: guint) = + a.flag0 = a.flag0 or + ((`expand` shl bp_TGtkBoxChild_expand) and bm_TGtkBoxChild_expand) + +proc fill*(a: var TGtkBoxChild): guint = + result = (a.flag0 and bm_TGtkBoxChild_fill) shr bp_TGtkBoxChild_fill + +proc set_fill*(a: var TGtkBoxChild, `fill`: guint) = + a.flag0 = a.flag0 or + ((`fill` shl bp_TGtkBoxChild_fill) and bm_TGtkBoxChild_fill) + +proc pack*(a: var TGtkBoxChild): guint = + result = (a.flag0 and bm_TGtkBoxChild_pack) shr bp_TGtkBoxChild_pack + +proc set_pack*(a: var TGtkBoxChild, `pack`: guint) = + a.flag0 = a.flag0 or + ((`pack` shl bp_TGtkBoxChild_pack) and bm_TGtkBoxChild_pack) + +proc is_secondary*(a: var TGtkBoxChild): guint = + result = (a.flag0 and bm_TGtkBoxChild_is_secondary) shr + bp_TGtkBoxChild_is_secondary + +proc set_is_secondary*(a: var TGtkBoxChild, `is_secondary`: guint) = + a.flag0 = a.flag0 or + ((`is_secondary` shl bp_TGtkBoxChild_is_secondary) and + bm_TGtkBoxChild_is_secondary) + +proc GTK_TYPE_BUTTON_BOX*(): GType = + result = gtk_button_box_get_type() + +proc GTK_BUTTON_BOX*(obj: pointer): PGtkButtonBox = + result = cast[PGtkButtonBox](GTK_CHECK_CAST(obj, GTK_TYPE_BUTTON_BOX())) + +proc GTK_BUTTON_BOX_CLASS*(klass: pointer): PGtkButtonBoxClass = + result = cast[PGtkButtonBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_BUTTON_BOX())) + +proc GTK_IS_BUTTON_BOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_BUTTON_BOX()) + +proc GTK_IS_BUTTON_BOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_BUTTON_BOX()) + +proc GTK_BUTTON_BOX_GET_CLASS*(obj: pointer): PGtkButtonBoxClass = + result = cast[PGtkButtonBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_BUTTON_BOX())) + +proc gtk_button_box_set_spacing*(b: pointer, s: gint) = + gtk_box_set_spacing(GTK_BOX(b), s) + +proc gtk_button_box_get_spacing*(b: pointer): gint = + result = gtk_box_get_spacing(GTK_BOX(b)) + +proc GTK_TYPE_BUTTON*(): GType = + result = gtk_button_get_type() + +proc GTK_BUTTON*(obj: pointer): PGtkButton = + result = cast[PGtkButton](GTK_CHECK_CAST(obj, GTK_TYPE_BUTTON())) + +proc GTK_BUTTON_CLASS*(klass: pointer): PGtkButtonClass = + result = cast[PGtkButtonClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_BUTTON())) + +proc GTK_IS_BUTTON*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_BUTTON()) + +proc GTK_IS_BUTTON_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_BUTTON()) + +proc GTK_BUTTON_GET_CLASS*(obj: pointer): PGtkButtonClass = + result = cast[PGtkButtonClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_BUTTON())) + +proc constructed*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_constructed) shr + bp_TGtkButton_constructed + +proc set_constructed*(a: var TGtkButton, `constructed`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`constructed` shl bp_TGtkButton_constructed) and + bm_TGtkButton_constructed) + +proc in_button*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_in_button) shr bp_TGtkButton_in_button + +proc set_in_button*(a: var TGtkButton, `in_button`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`in_button` shl bp_TGtkButton_in_button) and bm_TGtkButton_in_button) + +proc button_down*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_button_down) shr + bp_TGtkButton_button_down + +proc set_button_down*(a: var TGtkButton, `button_down`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`button_down` shl bp_TGtkButton_button_down) and + bm_TGtkButton_button_down) + +proc relief*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_relief) shr bp_TGtkButton_relief + +proc set_relief*(a: var TGtkButton, `relief`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`relief` shl bp_TGtkButton_relief) and bm_TGtkButton_relief) + +proc use_underline*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_use_underline) shr + bp_TGtkButton_use_underline + +proc set_use_underline*(a: var TGtkButton, `use_underline`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`use_underline` shl bp_TGtkButton_use_underline) and + bm_TGtkButton_use_underline) + +proc use_stock*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_use_stock) shr bp_TGtkButton_use_stock + +proc set_use_stock*(a: var TGtkButton, `use_stock`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`use_stock` shl bp_TGtkButton_use_stock) and bm_TGtkButton_use_stock) + +proc depressed*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_depressed) shr bp_TGtkButton_depressed + +proc set_depressed*(a: var TGtkButton, `depressed`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`depressed` shl bp_TGtkButton_depressed) and bm_TGtkButton_depressed) + +proc depress_on_activate*(a: var TGtkButton): guint = + result = (a.GtkButtonflag0 and bm_TGtkButton_depress_on_activate) shr + bp_TGtkButton_depress_on_activate + +proc set_depress_on_activate*(a: var TGtkButton, `depress_on_activate`: guint) = + a.GtkButtonflag0 = a.GtkButtonflag0 or + ((`depress_on_activate` shl bp_TGtkButton_depress_on_activate) and + bm_TGtkButton_depress_on_activate) + +proc GTK_TYPE_CALENDAR*(): GType = + result = gtk_calendar_get_type() + +proc GTK_CALENDAR*(obj: pointer): PGtkCalendar = + result = cast[PGtkCalendar](GTK_CHECK_CAST(obj, GTK_TYPE_CALENDAR())) + +proc GTK_CALENDAR_CLASS*(klass: pointer): PGtkCalendarClass = + result = cast[PGtkCalendarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_CALENDAR())) + +proc GTK_IS_CALENDAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CALENDAR()) + +proc GTK_IS_CALENDAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CALENDAR()) + +proc GTK_CALENDAR_GET_CLASS*(obj: pointer): PGtkCalendarClass = + result = cast[PGtkCalendarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CALENDAR())) + +proc GTK_TYPE_CELL_EDITABLE*(): GType = + result = gtk_cell_editable_get_type() + +proc GTK_CELL_EDITABLE*(obj: pointer): PGtkCellEditable = + result = cast[PGtkCellEditable](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_CELL_EDITABLE())) + +proc GTK_CELL_EDITABLE_CLASS*(obj: pointer): PGtkCellEditableIface = + result = cast[PGtkCellEditableIface](G_TYPE_CHECK_CLASS_CAST(obj, + GTK_TYPE_CELL_EDITABLE())) + +proc GTK_IS_CELL_EDITABLE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_CELL_EDITABLE()) + +proc GTK_CELL_EDITABLE_GET_IFACE*(obj: pointer): PGtkCellEditableIface = + result = cast[PGtkCellEditableIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + GTK_TYPE_CELL_EDITABLE())) + +proc GTK_TYPE_CELL_RENDERER*(): GType = + result = gtk_cell_renderer_get_type() + +proc GTK_CELL_RENDERER*(obj: pointer): PGtkCellRenderer = + result = cast[PGtkCellRenderer](GTK_CHECK_CAST(obj, GTK_TYPE_CELL_RENDERER())) + +proc GTK_CELL_RENDERER_CLASS*(klass: pointer): PGtkCellRendererClass = + result = cast[PGtkCellRendererClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_CELL_RENDERER())) + +proc GTK_IS_CELL_RENDERER*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CELL_RENDERER()) + +proc GTK_IS_CELL_RENDERER_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CELL_RENDERER()) + +proc GTK_CELL_RENDERER_GET_CLASS*(obj: pointer): PGtkCellRendererClass = + result = cast[PGtkCellRendererClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CELL_RENDERER())) + +proc mode*(a: var TGtkCellRenderer): guint = + result = (a.GtkCellRendererflag0 and bm_TGtkCellRenderer_mode) shr + bp_TGtkCellRenderer_mode + +proc set_mode*(a: var TGtkCellRenderer, `mode`: guint) = + a.GtkCellRendererflag0 = a.GtkCellRendererflag0 or + ((`mode` shl bp_TGtkCellRenderer_mode) and bm_TGtkCellRenderer_mode) + +proc visible*(a: var TGtkCellRenderer): guint = + result = (a.GtkCellRendererflag0 and bm_TGtkCellRenderer_visible) shr + bp_TGtkCellRenderer_visible + +proc set_visible*(a: var TGtkCellRenderer, `visible`: guint) = + a.GtkCellRendererflag0 = a.GtkCellRendererflag0 or + ((`visible` shl bp_TGtkCellRenderer_visible) and + bm_TGtkCellRenderer_visible) + +proc is_expander*(a: var TGtkCellRenderer): guint = + result = (a.GtkCellRendererflag0 and bm_TGtkCellRenderer_is_expander) shr + bp_TGtkCellRenderer_is_expander + +proc set_is_expander*(a: var TGtkCellRenderer, `is_expander`: guint) = + a.GtkCellRendererflag0 = a.GtkCellRendererflag0 or + ((`is_expander` shl bp_TGtkCellRenderer_is_expander) and + bm_TGtkCellRenderer_is_expander) + +proc is_expanded*(a: var TGtkCellRenderer): guint = + result = (a.GtkCellRendererflag0 and bm_TGtkCellRenderer_is_expanded) shr + bp_TGtkCellRenderer_is_expanded + +proc set_is_expanded*(a: var TGtkCellRenderer, `is_expanded`: guint) = + a.GtkCellRendererflag0 = a.GtkCellRendererflag0 or + ((`is_expanded` shl bp_TGtkCellRenderer_is_expanded) and + bm_TGtkCellRenderer_is_expanded) + +proc cell_background_set*(a: var TGtkCellRenderer): guint = + result = (a.GtkCellRendererflag0 and bm_TGtkCellRenderer_cell_background_set) shr + bp_TGtkCellRenderer_cell_background_set + +proc set_cell_background_set*(a: var TGtkCellRenderer, + `cell_background_set`: guint) = + a.GtkCellRendererflag0 = a.GtkCellRendererflag0 or + ((`cell_background_set` shl bp_TGtkCellRenderer_cell_background_set) and + bm_TGtkCellRenderer_cell_background_set) + +proc GTK_TYPE_CELL_RENDERER_TEXT*(): GType = + result = gtk_cell_renderer_text_get_type() + +proc GTK_CELL_RENDERER_TEXT*(obj: pointer): PGtkCellRendererText = + result = cast[PGtkCellRendererText](GTK_CHECK_CAST(obj, GTK_TYPE_CELL_RENDERER_TEXT())) + +proc GTK_CELL_RENDERER_TEXT_CLASS*(klass: pointer): PGtkCellRendererTextClass = + result = cast[PGtkCellRendererTextClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_CELL_RENDERER_TEXT())) + +proc GTK_IS_CELL_RENDERER_TEXT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CELL_RENDERER_TEXT()) + +proc GTK_IS_CELL_RENDERER_TEXT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CELL_RENDERER_TEXT()) + +proc GTK_CELL_RENDERER_TEXT_GET_CLASS*(obj: pointer): PGtkCellRendererTextClass = + result = cast[PGtkCellRendererTextClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_CELL_RENDERER_TEXT())) + +proc strikethrough*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_strikethrough) shr + bp_TGtkCellRendererText_strikethrough + +proc set_strikethrough*(a: var TGtkCellRendererText, `strikethrough`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`strikethrough` shl bp_TGtkCellRendererText_strikethrough) and + bm_TGtkCellRendererText_strikethrough) + +proc editable*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_editable) shr + bp_TGtkCellRendererText_editable + +proc set_editable*(a: var TGtkCellRendererText, `editable`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`editable` shl bp_TGtkCellRendererText_editable) and + bm_TGtkCellRendererText_editable) + +proc scale_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_scale_set) shr + bp_TGtkCellRendererText_scale_set + +proc set_scale_set*(a: var TGtkCellRendererText, `scale_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`scale_set` shl bp_TGtkCellRendererText_scale_set) and + bm_TGtkCellRendererText_scale_set) + +proc foreground_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_foreground_set) shr + bp_TGtkCellRendererText_foreground_set + +proc set_foreground_set*(a: var TGtkCellRendererText, `foreground_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`foreground_set` shl bp_TGtkCellRendererText_foreground_set) and + bm_TGtkCellRendererText_foreground_set) + +proc background_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_background_set) shr + bp_TGtkCellRendererText_background_set + +proc set_background_set*(a: var TGtkCellRendererText, `background_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`background_set` shl bp_TGtkCellRendererText_background_set) and + bm_TGtkCellRendererText_background_set) + +proc underline_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_underline_set) shr + bp_TGtkCellRendererText_underline_set + +proc set_underline_set*(a: var TGtkCellRendererText, `underline_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`underline_set` shl bp_TGtkCellRendererText_underline_set) and + bm_TGtkCellRendererText_underline_set) + +proc rise_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_rise_set) shr + bp_TGtkCellRendererText_rise_set + +proc set_rise_set*(a: var TGtkCellRendererText, `rise_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`rise_set` shl bp_TGtkCellRendererText_rise_set) and + bm_TGtkCellRendererText_rise_set) + +proc strikethrough_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_strikethrough_set) shr + bp_TGtkCellRendererText_strikethrough_set + +proc set_strikethrough_set*(a: var TGtkCellRendererText, + `strikethrough_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`strikethrough_set` shl bp_TGtkCellRendererText_strikethrough_set) and + bm_TGtkCellRendererText_strikethrough_set) + +proc editable_set*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_editable_set) shr + bp_TGtkCellRendererText_editable_set + +proc set_editable_set*(a: var TGtkCellRendererText, `editable_set`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`editable_set` shl bp_TGtkCellRendererText_editable_set) and + bm_TGtkCellRendererText_editable_set) + +proc calc_fixed_height*(a: var TGtkCellRendererText): guint = + result = (a.GtkCellRendererTextflag0 and bm_TGtkCellRendererText_calc_fixed_height) shr + bp_TGtkCellRendererText_calc_fixed_height + +proc set_calc_fixed_height*(a: var TGtkCellRendererText, + `calc_fixed_height`: guint) = + a.GtkCellRendererTextflag0 = a.GtkCellRendererTextflag0 or + ((`calc_fixed_height` shl bp_TGtkCellRendererText_calc_fixed_height) and + bm_TGtkCellRendererText_calc_fixed_height) + +proc GTK_TYPE_CELL_RENDERER_TOGGLE*(): GType = + result = gtk_cell_renderer_toggle_get_type() + +proc GTK_CELL_RENDERER_TOGGLE*(obj: pointer): PGtkCellRendererToggle = + result = cast[PGtkCellRendererToggle](GTK_CHECK_CAST(obj, + GTK_TYPE_CELL_RENDERER_TOGGLE())) + +proc GTK_CELL_RENDERER_TOGGLE_CLASS*(klass: pointer): PGtkCellRendererToggleClass = + result = cast[PGtkCellRendererToggleClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_CELL_RENDERER_TOGGLE())) + +proc GTK_IS_CELL_RENDERER_TOGGLE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CELL_RENDERER_TOGGLE()) + +proc GTK_IS_CELL_RENDERER_TOGGLE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CELL_RENDERER_TOGGLE()) + +proc GTK_CELL_RENDERER_TOGGLE_GET_CLASS*(obj: pointer): PGtkCellRendererToggleClass = + result = cast[PGtkCellRendererToggleClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_CELL_RENDERER_TOGGLE())) + +proc active*(a: var TGtkCellRendererToggle): guint = + result = (a.GtkCellRendererToggleflag0 and bm_TGtkCellRendererToggle_active) shr + bp_TGtkCellRendererToggle_active + +proc set_active*(a: var TGtkCellRendererToggle, `active`: guint) = + a.GtkCellRendererToggleflag0 = a.GtkCellRendererToggleflag0 or + ((`active` shl bp_TGtkCellRendererToggle_active) and + bm_TGtkCellRendererToggle_active) + +proc activatable*(a: var TGtkCellRendererToggle): guint = + result = (a.GtkCellRendererToggleflag0 and bm_TGtkCellRendererToggle_activatable) shr + bp_TGtkCellRendererToggle_activatable + +proc set_activatable*(a: var TGtkCellRendererToggle, `activatable`: guint) = + a.GtkCellRendererToggleflag0 = a.GtkCellRendererToggleflag0 or + ((`activatable` shl bp_TGtkCellRendererToggle_activatable) and + bm_TGtkCellRendererToggle_activatable) + +proc radio*(a: var TGtkCellRendererToggle): guint = + result = (a.GtkCellRendererToggleflag0 and bm_TGtkCellRendererToggle_radio) shr + bp_TGtkCellRendererToggle_radio + +proc set_radio*(a: var TGtkCellRendererToggle, `radio`: guint) = + a.GtkCellRendererToggleflag0 = a.GtkCellRendererToggleflag0 or + ((`radio` shl bp_TGtkCellRendererToggle_radio) and + bm_TGtkCellRendererToggle_radio) + +proc GTK_TYPE_CELL_RENDERER_PIXBUF*(): GType = + result = gtk_cell_renderer_pixbuf_get_type() + +proc GTK_CELL_RENDERER_PIXBUF*(obj: pointer): PGtkCellRendererPixbuf = + result = cast[PGtkCellRendererPixbuf](GTK_CHECK_CAST(obj, + GTK_TYPE_CELL_RENDERER_PIXBUF())) + +proc GTK_CELL_RENDERER_PIXBUF_CLASS*(klass: pointer): PGtkCellRendererPixbufClass = + result = cast[PGtkCellRendererPixbufClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_CELL_RENDERER_PIXBUF())) + +proc GTK_IS_CELL_RENDERER_PIXBUF*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CELL_RENDERER_PIXBUF()) + +proc GTK_IS_CELL_RENDERER_PIXBUF_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CELL_RENDERER_PIXBUF()) + +proc GTK_CELL_RENDERER_PIXBUF_GET_CLASS*(obj: pointer): PGtkCellRendererPixbufClass = + result = cast[PGtkCellRendererPixbufClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_CELL_RENDERER_PIXBUF())) + +proc GTK_TYPE_ITEM*(): GType = + result = gtk_item_get_type() + +proc GTK_ITEM*(obj: pointer): PGtkItem = + result = cast[PGtkItem](GTK_CHECK_CAST(obj, GTK_TYPE_ITEM())) + +proc GTK_ITEM_CLASS*(klass: pointer): PGtkItemClass = + result = cast[PGtkItemClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ITEM())) + +proc GTK_IS_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ITEM()) + +proc GTK_IS_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ITEM()) + +proc GTK_ITEM_GET_CLASS*(obj: pointer): PGtkItemClass = + result = cast[PGtkItemClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ITEM())) + +proc GTK_TYPE_MENU_ITEM*(): GType = + result = gtk_menu_item_get_type() + +proc GTK_MENU_ITEM*(obj: pointer): PGtkMenuItem = + result = cast[PGtkMenuItem](GTK_CHECK_CAST(obj, GTK_TYPE_MENU_ITEM())) + +proc GTK_MENU_ITEM_CLASS*(klass: pointer): PGtkMenuItemClass = + result = cast[PGtkMenuItemClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_MENU_ITEM())) + +proc GTK_IS_MENU_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_MENU_ITEM()) + +proc GTK_IS_MENU_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_MENU_ITEM()) + +proc GTK_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkMenuItemClass = + result = cast[PGtkMenuItemClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_MENU_ITEM())) + +proc show_submenu_indicator*(a: var TGtkMenuItem): guint = + result = (a.GtkMenuItemflag0 and bm_TGtkMenuItem_show_submenu_indicator) shr + bp_TGtkMenuItem_show_submenu_indicator + +proc set_show_submenu_indicator*(a: var TGtkMenuItem, + `show_submenu_indicator`: guint) = + a.GtkMenuItemflag0 = a.GtkMenuItemflag0 or + ((`show_submenu_indicator` shl bp_TGtkMenuItem_show_submenu_indicator) and + bm_TGtkMenuItem_show_submenu_indicator) + +proc submenu_placement*(a: var TGtkMenuItem): guint = + result = (a.GtkMenuItemflag0 and bm_TGtkMenuItem_submenu_placement) shr + bp_TGtkMenuItem_submenu_placement + +proc set_submenu_placement*(a: var TGtkMenuItem, `submenu_placement`: guint) = + a.GtkMenuItemflag0 = a.GtkMenuItemflag0 or + ((`submenu_placement` shl bp_TGtkMenuItem_submenu_placement) and + bm_TGtkMenuItem_submenu_placement) + +proc submenu_direction*(a: var TGtkMenuItem): guint = + result = (a.GtkMenuItemflag0 and bm_TGtkMenuItem_submenu_direction) shr + bp_TGtkMenuItem_submenu_direction + +proc set_submenu_direction*(a: var TGtkMenuItem, `submenu_direction`: guint) = + a.GtkMenuItemflag0 = a.GtkMenuItemflag0 or + ((`submenu_direction` shl bp_TGtkMenuItem_submenu_direction) and + bm_TGtkMenuItem_submenu_direction) + +proc right_justify*(a: var TGtkMenuItem): guint = + result = (a.GtkMenuItemflag0 and bm_TGtkMenuItem_right_justify) shr + bp_TGtkMenuItem_right_justify + +proc set_right_justify*(a: var TGtkMenuItem, `right_justify`: guint) = + a.GtkMenuItemflag0 = a.GtkMenuItemflag0 or + ((`right_justify` shl bp_TGtkMenuItem_right_justify) and + bm_TGtkMenuItem_right_justify) + +proc timer_from_keypress*(a: var TGtkMenuItem): guint = + result = (a.GtkMenuItemflag0 and bm_TGtkMenuItem_timer_from_keypress) shr + bp_TGtkMenuItem_timer_from_keypress + +proc set_timer_from_keypress*(a: var TGtkMenuItem, `timer_from_keypress`: guint) = + a.GtkMenuItemflag0 = a.GtkMenuItemflag0 or + ((`timer_from_keypress` shl bp_TGtkMenuItem_timer_from_keypress) and + bm_TGtkMenuItem_timer_from_keypress) + +proc hide_on_activate*(a: var TGtkMenuItemClass): guint = + result = (a.GtkMenuItemClassflag0 and bm_TGtkMenuItemClass_hide_on_activate) shr + bp_TGtkMenuItemClass_hide_on_activate + +proc set_hide_on_activate*(a: var TGtkMenuItemClass, `hide_on_activate`: guint) = + a.GtkMenuItemClassflag0 = a.GtkMenuItemClassflag0 or + ((`hide_on_activate` shl bp_TGtkMenuItemClass_hide_on_activate) and + bm_TGtkMenuItemClass_hide_on_activate) + +proc gtk_menu_item_right_justify*(menu_item: PGtkMenuItem) = + gtk_menu_item_set_right_justified(menu_item, true) + +proc GTK_TYPE_TOGGLE_BUTTON*(): GType = + result = gtk_toggle_button_get_type() + +proc GTK_TOGGLE_BUTTON*(obj: pointer): PGtkToggleButton = + result = cast[PGtkToggleButton](GTK_CHECK_CAST(obj, GTK_TYPE_TOGGLE_BUTTON())) + +proc GTK_TOGGLE_BUTTON_CLASS*(klass: pointer): PGtkToggleButtonClass = + result = cast[PGtkToggleButtonClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_TOGGLE_BUTTON())) + +proc GTK_IS_TOGGLE_BUTTON*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TOGGLE_BUTTON()) + +proc GTK_IS_TOGGLE_BUTTON_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TOGGLE_BUTTON()) + +proc GTK_TOGGLE_BUTTON_GET_CLASS*(obj: pointer): PGtkToggleButtonClass = + result = cast[PGtkToggleButtonClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TOGGLE_BUTTON())) + +proc active*(a: var TGtkToggleButton): guint = + result = (a.GtkToggleButtonflag0 and bm_TGtkToggleButton_active) shr + bp_TGtkToggleButton_active + +proc set_active*(a: var TGtkToggleButton, `active`: guint) = + a.GtkToggleButtonflag0 = a.GtkToggleButtonflag0 or + ((`active` shl bp_TGtkToggleButton_active) and + bm_TGtkToggleButton_active) + +proc draw_indicator*(a: var TGtkToggleButton): guint = + result = (a.GtkToggleButtonflag0 and bm_TGtkToggleButton_draw_indicator) shr + bp_TGtkToggleButton_draw_indicator + +proc set_draw_indicator*(a: var TGtkToggleButton, `draw_indicator`: guint) = + a.GtkToggleButtonflag0 = a.GtkToggleButtonflag0 or + ((`draw_indicator` shl bp_TGtkToggleButton_draw_indicator) and + bm_TGtkToggleButton_draw_indicator) + +proc inconsistent*(a: var TGtkToggleButton): guint = + result = (a.GtkToggleButtonflag0 and bm_TGtkToggleButton_inconsistent) shr + bp_TGtkToggleButton_inconsistent + +proc set_inconsistent*(a: var TGtkToggleButton, `inconsistent`: guint) = + a.GtkToggleButtonflag0 = a.GtkToggleButtonflag0 or + ((`inconsistent` shl bp_TGtkToggleButton_inconsistent) and + bm_TGtkToggleButton_inconsistent) + +proc GTK_TYPE_CHECK_BUTTON*(): GType = + result = gtk_check_button_get_type() + +proc GTK_CHECK_BUTTON*(obj: pointer): PGtkCheckButton = + result = cast[PGtkCheckButton](GTK_CHECK_CAST(obj, GTK_TYPE_CHECK_BUTTON())) + +proc GTK_CHECK_BUTTON_CLASS*(klass: pointer): PGtkCheckButtonClass = + result = cast[PGtkCheckButtonClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_CHECK_BUTTON())) + +proc GTK_IS_CHECK_BUTTON*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CHECK_BUTTON()) + +proc GTK_IS_CHECK_BUTTON_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CHECK_BUTTON()) + +proc GTK_CHECK_BUTTON_GET_CLASS*(obj: pointer): PGtkCheckButtonClass = + result = cast[PGtkCheckButtonClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CHECK_BUTTON())) + +proc GTK_TYPE_CHECK_MENU_ITEM*(): GType = + result = gtk_check_menu_item_get_type() + +proc GTK_CHECK_MENU_ITEM*(obj: pointer): PGtkCheckMenuItem = + result = cast[PGtkCheckMenuItem](GTK_CHECK_CAST(obj, GTK_TYPE_CHECK_MENU_ITEM())) + +proc GTK_CHECK_MENU_ITEM_CLASS*(klass: pointer): PGtkCheckMenuItemClass = + result = cast[PGtkCheckMenuItemClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_CHECK_MENU_ITEM())) + +proc GTK_IS_CHECK_MENU_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CHECK_MENU_ITEM()) + +proc GTK_IS_CHECK_MENU_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CHECK_MENU_ITEM()) + +proc GTK_CHECK_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkCheckMenuItemClass = + result = cast[PGtkCheckMenuItemClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_CHECK_MENU_ITEM())) + +proc active*(a: var TGtkCheckMenuItem): guint = + result = (a.GtkCheckMenuItemflag0 and bm_TGtkCheckMenuItem_active) shr + bp_TGtkCheckMenuItem_active + +proc set_active*(a: var TGtkCheckMenuItem, `active`: guint) = + a.GtkCheckMenuItemflag0 = a.GtkCheckMenuItemflag0 or + ((`active` shl bp_TGtkCheckMenuItem_active) and + bm_TGtkCheckMenuItem_active) + +proc always_show_toggle*(a: var TGtkCheckMenuItem): guint = + result = (a.GtkCheckMenuItemflag0 and bm_TGtkCheckMenuItem_always_show_toggle) shr + bp_TGtkCheckMenuItem_always_show_toggle + +proc set_always_show_toggle*(a: var TGtkCheckMenuItem, + `always_show_toggle`: guint) = + a.GtkCheckMenuItemflag0 = a.GtkCheckMenuItemflag0 or + ((`always_show_toggle` shl bp_TGtkCheckMenuItem_always_show_toggle) and + bm_TGtkCheckMenuItem_always_show_toggle) + +proc inconsistent*(a: var TGtkCheckMenuItem): guint = + result = (a.GtkCheckMenuItemflag0 and bm_TGtkCheckMenuItem_inconsistent) shr + bp_TGtkCheckMenuItem_inconsistent + +proc set_inconsistent*(a: var TGtkCheckMenuItem, `inconsistent`: guint) = + a.GtkCheckMenuItemflag0 = a.GtkCheckMenuItemflag0 or + ((`inconsistent` shl bp_TGtkCheckMenuItem_inconsistent) and + bm_TGtkCheckMenuItem_inconsistent) + +proc GTK_TYPE_CLIST*(): GType = + result = gtk_clist_get_type() + +proc GTK_CLIST*(obj: pointer): PGtkCList = + result = cast[PGtkCList](GTK_CHECK_CAST(obj, GTK_TYPE_CLIST())) + +proc GTK_CLIST_CLASS*(klass: pointer): PGtkCListClass = + result = cast[PGtkCListClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_CLIST())) + +proc GTK_IS_CLIST*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CLIST()) + +proc GTK_IS_CLIST_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CLIST()) + +proc GTK_CLIST_GET_CLASS*(obj: pointer): PGtkCListClass = + result = cast[PGtkCListClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CLIST())) + +proc GTK_CLIST_FLAGS*(clist: pointer): guint16 = + result = GTK_CLIST(clist).flags + +proc GTK_CLIST_SET_FLAG*(clist: PGtkCList, flag: guint16) = + clist . flags = GTK_CLIST(clist) . flags or int(flag) + +proc GTK_CLIST_UNSET_FLAG*(clist: PGtkCList, flag: guint16) = + clist . flags = GTK_CLIST(clist) . flags and not int(flag) + +proc GTK_CLIST_IN_DRAG_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_IN_DRAG) != 0 + +proc GTK_CLIST_ROW_HEIGHT_SET_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_ROW_HEIGHT_SET) != 0 + +proc GTK_CLIST_SHOW_TITLES_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_SHOW_TITLES) != 0 + +proc GTK_CLIST_ADD_MODE_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_ADD_MODE) != 0 + +proc GTK_CLIST_AUTO_SORT_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_AUTO_SORT) != 0 + +proc GTK_CLIST_AUTO_RESIZE_BLOCKED_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_AUTO_RESIZE_BLOCKED) != 0 + +proc GTK_CLIST_REORDERABLE_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_REORDERABLE) != 0 + +proc GTK_CLIST_USE_DRAG_ICONS_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_USE_DRAG_ICONS) != 0 + +proc GTK_CLIST_DRAW_DRAG_LINE_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_DRAW_DRAG_LINE) != 0 + +proc GTK_CLIST_DRAW_DRAG_RECT_get*(clist: pointer): bool = + result = ((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_DRAW_DRAG_RECT) != 0 + +proc GTK_CLIST_ROW_get*(`glist_`: PGList): PGtkCListRow = + result = cast[PGtkCListRow](`glist_` . data) + +when false: + proc GTK_CELL_TEXT_get*(cell: pointer): PGtkCellText = + result = cast[PGtkCellText](addr((cell))) + + proc GTK_CELL_PIXMAP_get*(cell: pointer): PGtkCellPixmap = + result = cast[PGtkCellPixmap](addr((cell))) + + proc GTK_CELL_PIXTEXT_get*(cell: pointer): PGtkCellPixText = + result = cast[PGtkCellPixText](addr((cell))) + + proc GTK_CELL_WIDGET_get*(cell: pointer): PGtkCellWidget = + result = cast[PGtkCellWidget](addr((cell))) + +proc visible*(a: var TGtkCListColumn): guint = + result = (a.flag0 and bm_TGtkCListColumn_visible) shr + bp_TGtkCListColumn_visible + +proc set_visible*(a: var TGtkCListColumn, `visible`: guint) = + a.flag0 = a.flag0 or + ((`visible` shl bp_TGtkCListColumn_visible) and + bm_TGtkCListColumn_visible) + +proc width_set*(a: var TGtkCListColumn): guint = + result = (a.flag0 and bm_TGtkCListColumn_width_set) shr + bp_TGtkCListColumn_width_set + +proc set_width_set*(a: var TGtkCListColumn, `width_set`: guint) = + a.flag0 = a.flag0 or + ((`width_set` shl bp_TGtkCListColumn_width_set) and + bm_TGtkCListColumn_width_set) + +proc resizeable*(a: var TGtkCListColumn): guint = + result = (a.flag0 and bm_TGtkCListColumn_resizeable) shr + bp_TGtkCListColumn_resizeable + +proc set_resizeable*(a: var TGtkCListColumn, `resizeable`: guint) = + a.flag0 = a.flag0 or + ((`resizeable` shl bp_TGtkCListColumn_resizeable) and + bm_TGtkCListColumn_resizeable) + +proc auto_resize*(a: var TGtkCListColumn): guint = + result = (a.flag0 and bm_TGtkCListColumn_auto_resize) shr + bp_TGtkCListColumn_auto_resize + +proc set_auto_resize*(a: var TGtkCListColumn, `auto_resize`: guint) = + a.flag0 = a.flag0 or + ((`auto_resize` shl bp_TGtkCListColumn_auto_resize) and + bm_TGtkCListColumn_auto_resize) + +proc button_passive*(a: var TGtkCListColumn): guint = + result = (a.flag0 and bm_TGtkCListColumn_button_passive) shr + bp_TGtkCListColumn_button_passive + +proc set_button_passive*(a: var TGtkCListColumn, `button_passive`: guint) = + a.flag0 = a.flag0 or + ((`button_passive` shl bp_TGtkCListColumn_button_passive) and + bm_TGtkCListColumn_button_passive) + +proc fg_set*(a: var TGtkCListRow): guint = + result = (a.flag0 and bm_TGtkCListRow_fg_set) shr bp_TGtkCListRow_fg_set + +proc set_fg_set*(a: var TGtkCListRow, `fg_set`: guint) = + a.flag0 = a.flag0 or + ((`fg_set` shl bp_TGtkCListRow_fg_set) and bm_TGtkCListRow_fg_set) + +proc bg_set*(a: var TGtkCListRow): guint = + result = (a.flag0 and bm_TGtkCListRow_bg_set) shr bp_TGtkCListRow_bg_set + +proc set_bg_set*(a: var TGtkCListRow, `bg_set`: guint) = + a.flag0 = a.flag0 or + ((`bg_set` shl bp_TGtkCListRow_bg_set) and bm_TGtkCListRow_bg_set) + +proc selectable*(a: var TGtkCListRow): guint = + result = (a.flag0 and bm_TGtkCListRow_selectable) shr + bp_TGtkCListRow_selectable + +proc set_selectable*(a: var TGtkCListRow, `selectable`: guint) = + a.flag0 = a.flag0 or + ((`selectable` shl bp_TGtkCListRow_selectable) and + bm_TGtkCListRow_selectable) + +proc GTK_TYPE_DIALOG*(): GType = + result = gtk_dialog_get_type() + +proc GTK_DIALOG*(obj: pointer): PGtkDialog = + result = cast[PGtkDialog](GTK_CHECK_CAST(obj, GTK_TYPE_DIALOG())) + +proc GTK_DIALOG_CLASS*(klass: pointer): PGtkDialogClass = + result = cast[PGtkDialogClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_DIALOG())) + +proc GTK_IS_DIALOG*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_DIALOG()) + +proc GTK_IS_DIALOG_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_DIALOG()) + +proc GTK_DIALOG_GET_CLASS*(obj: pointer): PGtkDialogClass = + result = cast[PGtkDialogClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_DIALOG())) + +proc GTK_TYPE_VBOX*(): GType = + result = gtk_vbox_get_type() + +proc GTK_VBOX*(obj: pointer): PGtkVBox = + result = cast[PGtkVBox](GTK_CHECK_CAST(obj, GTK_TYPE_VBOX())) + +proc GTK_VBOX_CLASS*(klass: pointer): PGtkVBoxClass = + result = cast[PGtkVBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VBOX())) + +proc GTK_IS_VBOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VBOX()) + +proc GTK_IS_VBOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VBOX()) + +proc GTK_VBOX_GET_CLASS*(obj: pointer): PGtkVBoxClass = + result = cast[PGtkVBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VBOX())) + +proc GTK_TYPE_COLOR_SELECTION*(): GType = + result = gtk_color_selection_get_type() + +proc GTK_COLOR_SELECTION*(obj: pointer): PGtkColorSelection = + result = cast[PGtkColorSelection](GTK_CHECK_CAST(obj, GTK_TYPE_COLOR_SELECTION())) + +proc GTK_COLOR_SELECTION_CLASS*(klass: pointer): PGtkColorSelectionClass = + result = cast[PGtkColorSelectionClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_COLOR_SELECTION())) + +proc GTK_IS_COLOR_SELECTION*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_COLOR_SELECTION()) + +proc GTK_IS_COLOR_SELECTION_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_COLOR_SELECTION()) + +proc GTK_COLOR_SELECTION_GET_CLASS*(obj: pointer): PGtkColorSelectionClass = + result = cast[PGtkColorSelectionClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_COLOR_SELECTION())) + +proc GTK_TYPE_COLOR_SELECTION_DIALOG*(): GType = + result = gtk_color_selection_dialog_get_type() + +proc GTK_COLOR_SELECTION_DIALOG*(obj: pointer): PGtkColorSelectionDialog = + result = cast[PGtkColorSelectionDialog](GTK_CHECK_CAST(obj, + GTK_TYPE_COLOR_SELECTION_DIALOG())) + +proc GTK_COLOR_SELECTION_DIALOG_CLASS*(klass: pointer): PGtkColorSelectionDialogClass = + result = cast[PGtkColorSelectionDialogClass]( + GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_COLOR_SELECTION_DIALOG())) + +proc GTK_IS_COLOR_SELECTION_DIALOG*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_COLOR_SELECTION_DIALOG()) + +proc GTK_IS_COLOR_SELECTION_DIALOG_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_COLOR_SELECTION_DIALOG()) + +proc GTK_COLOR_SELECTION_DIALOG_GET_CLASS*(obj: pointer): PGtkColorSelectionDialogClass = + result = cast[PGtkColorSelectionDialogClass]( + GTK_CHECK_GET_CLASS(obj, GTK_TYPE_COLOR_SELECTION_DIALOG())) + +proc GTK_TYPE_HBOX*(): GType = + result = gtk_hbox_get_type() + +proc GTK_HBOX*(obj: pointer): PGtkHBox = + result = cast[PGtkHBox](GTK_CHECK_CAST(obj, GTK_TYPE_HBOX())) + +proc GTK_HBOX_CLASS*(klass: pointer): PGtkHBoxClass = + result = cast[PGtkHBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HBOX())) + +proc GTK_IS_HBOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HBOX()) + +proc GTK_IS_HBOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HBOX()) + +proc GTK_HBOX_GET_CLASS*(obj: pointer): PGtkHBoxClass = + result = cast[PGtkHBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HBOX())) + +proc GTK_TYPE_COMBO*(): GType = + result = gtk_combo_get_type() + +proc GTK_COMBO*(obj: pointer): PGtkCombo = + result = cast[PGtkCombo](GTK_CHECK_CAST(obj, GTK_TYPE_COMBO())) + +proc GTK_COMBO_CLASS*(klass: pointer): PGtkComboClass = + result = cast[PGtkComboClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_COMBO())) + +proc GTK_IS_COMBO*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_COMBO()) + +proc GTK_IS_COMBO_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_COMBO()) + +proc GTK_COMBO_GET_CLASS*(obj: pointer): PGtkComboClass = + result = cast[PGtkComboClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_COMBO())) + +proc value_in_list*(a: var TGtkCombo): guint = + result = (a.GtkComboflag0 and bm_TGtkCombo_value_in_list) shr + bp_TGtkCombo_value_in_list + +proc set_value_in_list*(a: var TGtkCombo, `value_in_list`: guint) = + a.GtkComboflag0 = a.GtkComboflag0 or + ((`value_in_list` shl bp_TGtkCombo_value_in_list) and + bm_TGtkCombo_value_in_list) + +proc ok_if_empty*(a: var TGtkCombo): guint = + result = (a.GtkComboflag0 and bm_TGtkCombo_ok_if_empty) shr + bp_TGtkCombo_ok_if_empty + +proc set_ok_if_empty*(a: var TGtkCombo, `ok_if_empty`: guint) = + a.GtkComboflag0 = a.GtkComboflag0 or + ((`ok_if_empty` shl bp_TGtkCombo_ok_if_empty) and + bm_TGtkCombo_ok_if_empty) + +proc case_sensitive*(a: var TGtkCombo): guint = + result = (a.GtkComboflag0 and bm_TGtkCombo_case_sensitive) shr + bp_TGtkCombo_case_sensitive + +proc set_case_sensitive*(a: var TGtkCombo, `case_sensitive`: guint) = + a.GtkComboflag0 = a.GtkComboflag0 or + ((`case_sensitive` shl bp_TGtkCombo_case_sensitive) and + bm_TGtkCombo_case_sensitive) + +proc use_arrows*(a: var TGtkCombo): guint = + result = (a.GtkComboflag0 and bm_TGtkCombo_use_arrows) shr bp_TGtkCombo_use_arrows + +proc set_use_arrows*(a: var TGtkCombo, `use_arrows`: guint) = + a.GtkComboflag0 = a.GtkComboflag0 or + ((`use_arrows` shl bp_TGtkCombo_use_arrows) and bm_TGtkCombo_use_arrows) + +proc use_arrows_always*(a: var TGtkCombo): guint = + result = (a.GtkComboflag0 and bm_TGtkCombo_use_arrows_always) shr + bp_TGtkCombo_use_arrows_always + +proc set_use_arrows_always*(a: var TGtkCombo, `use_arrows_always`: guint) = + a.GtkComboflag0 = a.GtkComboflag0 or + ((`use_arrows_always` shl bp_TGtkCombo_use_arrows_always) and + bm_TGtkCombo_use_arrows_always) + +proc GTK_TYPE_CTREE*(): GType = + result = gtk_ctree_get_type() + +proc GTK_CTREE*(obj: pointer): PGtkCTree = + result = cast[PGtkCTree](GTK_CHECK_CAST(obj, GTK_TYPE_CTREE())) + +proc GTK_CTREE_CLASS*(klass: pointer): PGtkCTreeClass = + result = cast[PGtkCTreeClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_CTREE())) + +proc GTK_IS_CTREE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CTREE()) + +proc GTK_IS_CTREE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CTREE()) + +proc GTK_CTREE_GET_CLASS*(obj: pointer): PGtkCTreeClass = + result = cast[PGtkCTreeClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CTREE())) + +proc GTK_CTREE_ROW*(`node_`: TAddress): PGtkCTreeRow = + result = cast[PGtkCTreeRow]((cast[PGList](`node_`)) . data) + +proc GTK_CTREE_NODE*(`node_`: TAddress): PGtkCTreeNode = + result = cast[PGtkCTreeNode](`node_`) + +proc GTK_CTREE_NODE_NEXT*(`nnode_`: TAddress): PGtkCTreeNode = + result = cast[PGtkCTreeNode]((cast[PGList](`nnode_`)) . next) + +proc GTK_CTREE_NODE_PREV*(`pnode_`: TAddress): PGtkCTreeNode = + result = cast[PGtkCTreeNode]((cast[PGList](`pnode_`)) . prev) + +proc GTK_CTREE_FUNC*(`func_`: TAddress): TGtkCTreeFunc = + result = cast[TGtkCTreeFunc](`func_`) + +proc GTK_TYPE_CTREE_NODE*(): GType = + result = gtk_ctree_node_get_type() + +proc line_style*(a: var TGtkCTree): guint = + result = (a.GtkCTreeflag0 and bm_TGtkCTree_line_style) shr bp_TGtkCTree_line_style + +proc set_line_style*(a: var TGtkCTree, `line_style`: guint) = + a.GtkCTreeflag0 = a.GtkCTreeflag0 or + ((`line_style` shl bp_TGtkCTree_line_style) and bm_TGtkCTree_line_style) + +proc expander_style*(a: var TGtkCTree): guint = + result = (a.GtkCTreeflag0 and bm_TGtkCTree_expander_style) shr + bp_TGtkCTree_expander_style + +proc set_expander_style*(a: var TGtkCTree, `expander_style`: guint) = + a.GtkCTreeflag0 = a.GtkCTreeflag0 or + ((`expander_style` shl bp_TGtkCTree_expander_style) and + bm_TGtkCTree_expander_style) + +proc show_stub*(a: var TGtkCTree): guint = + result = (a.GtkCTreeflag0 and bm_TGtkCTree_show_stub) shr bp_TGtkCTree_show_stub + +proc set_show_stub*(a: var TGtkCTree, `show_stub`: guint) = + a.GtkCTreeflag0 = a.GtkCTreeflag0 or + ((`show_stub` shl bp_TGtkCTree_show_stub) and bm_TGtkCTree_show_stub) + +proc is_leaf*(a: var TGtkCTreeRow): guint = + result = (a.GtkCTreeRow_flag0 and bm_TGtkCTreeRow_is_leaf) shr bp_TGtkCTreeRow_is_leaf + +proc set_is_leaf*(a: var TGtkCTreeRow, `is_leaf`: guint) = + a.GtkCTreeRow_flag0 = a.GtkCTreeRow_flag0 or + ((`is_leaf` shl bp_TGtkCTreeRow_is_leaf) and bm_TGtkCTreeRow_is_leaf) + +proc expanded*(a: var TGtkCTreeRow): guint = + result = (a.GtkCTreeRow_flag0 and bm_TGtkCTreeRow_expanded) shr + bp_TGtkCTreeRow_expanded + +proc set_expanded*(a: var TGtkCTreeRow, `expanded`: guint) = + a.GtkCTreeRow_flag0 = a.GtkCTreeRowflag0 or + ((`expanded` shl bp_TGtkCTreeRow_expanded) and bm_TGtkCTreeRow_expanded) + +proc gtk_ctree_set_reorderable*(t: pointer, r: bool) = + gtk_clist_set_reorderable(cast[PGtkCList](t), r) + +proc GTK_TYPE_DRAWING_AREA*(): GType = + result = gtk_drawing_area_get_type() + +proc GTK_DRAWING_AREA*(obj: pointer): PGtkDrawingArea = + result = cast[PGtkDrawingArea](GTK_CHECK_CAST(obj, GTK_TYPE_DRAWING_AREA())) + +proc GTK_DRAWING_AREA_CLASS*(klass: pointer): PGtkDrawingAreaClass = + result = cast[PGtkDrawingAreaClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_DRAWING_AREA())) + +proc GTK_IS_DRAWING_AREA*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_DRAWING_AREA()) + +proc GTK_IS_DRAWING_AREA_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_DRAWING_AREA()) + +proc GTK_DRAWING_AREA_GET_CLASS*(obj: pointer): PGtkDrawingAreaClass = + result = cast[PGtkDrawingAreaClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_DRAWING_AREA())) + +proc GTK_TYPE_CURVE*(): GType = + result = gtk_curve_get_type() + +proc GTK_CURVE*(obj: pointer): PGtkCurve = + result = cast[PGtkCurve](GTK_CHECK_CAST(obj, GTK_TYPE_CURVE())) + +proc GTK_CURVE_CLASS*(klass: pointer): PGtkCurveClass = + result = cast[PGtkCurveClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_CURVE())) + +proc GTK_IS_CURVE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_CURVE()) + +proc GTK_IS_CURVE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_CURVE()) + +proc GTK_CURVE_GET_CLASS*(obj: pointer): PGtkCurveClass = + result = cast[PGtkCurveClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_CURVE())) + +proc GTK_TYPE_EDITABLE*(): GType = + result = gtk_editable_get_type() + +proc GTK_EDITABLE*(obj: pointer): PGtkEditable = + result = cast[PGtkEditable](G_TYPE_CHECK_INSTANCE_CAST(obj, GTK_TYPE_EDITABLE())) + +proc GTK_EDITABLE_CLASS*(vtable: pointer): PGtkEditableClass = + result = cast[PGtkEditableClass](G_TYPE_CHECK_CLASS_CAST(vtable, GTK_TYPE_EDITABLE())) + +proc GTK_IS_EDITABLE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_EDITABLE()) + +proc GTK_IS_EDITABLE_CLASS*(vtable: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(vtable, GTK_TYPE_EDITABLE()) + +proc GTK_EDITABLE_GET_CLASS*(inst: pointer): PGtkEditableClass = + result = cast[PGtkEditableClass](G_TYPE_INSTANCE_GET_INTERFACE(inst, + GTK_TYPE_EDITABLE())) + +proc GTK_TYPE_IM_CONTEXT*(): GType = + result = gtk_im_context_get_type() + +proc GTK_IM_CONTEXT*(obj: pointer): PGtkIMContext = + result = cast[PGtkIMContext](GTK_CHECK_CAST(obj, GTK_TYPE_IM_CONTEXT())) + +proc GTK_IM_CONTEXT_CLASS*(klass: pointer): PGtkIMContextClass = + result = cast[PGtkIMContextClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_IM_CONTEXT())) + +proc GTK_IS_IM_CONTEXT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_IM_CONTEXT()) + +proc GTK_IS_IM_CONTEXT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_IM_CONTEXT()) + +proc GTK_IM_CONTEXT_GET_CLASS*(obj: pointer): PGtkIMContextClass = + result = cast[PGtkIMContextClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_IM_CONTEXT())) + +proc GTK_TYPE_MENU_SHELL*(): GType = + result = gtk_menu_shell_get_type() + +proc GTK_MENU_SHELL*(obj: pointer): PGtkMenuShell = + result = cast[PGtkMenuShell](GTK_CHECK_CAST(obj, GTK_TYPE_MENU_SHELL())) + +proc GTK_MENU_SHELL_CLASS*(klass: pointer): PGtkMenuShellClass = + result = cast[PGtkMenuShellClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_MENU_SHELL())) + +proc GTK_IS_MENU_SHELL*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_MENU_SHELL()) + +proc GTK_IS_MENU_SHELL_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_MENU_SHELL()) + +proc GTK_MENU_SHELL_GET_CLASS*(obj: pointer): PGtkMenuShellClass = + result = cast[PGtkMenuShellClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_MENU_SHELL())) + +proc active*(a: var TGtkMenuShell): guint = + result = (a.GtkMenuShellflag0 and bm_TGtkMenuShell_active) shr bp_TGtkMenuShell_active + +proc set_active*(a: var TGtkMenuShell, `active`: guint) = + a.GtkMenuShellflag0 = a.GtkMenuShellflag0 or + ((`active` shl bp_TGtkMenuShell_active) and bm_TGtkMenuShell_active) + +proc have_grab*(a: var TGtkMenuShell): guint = + result = (a.GtkMenuShellflag0 and bm_TGtkMenuShell_have_grab) shr + bp_TGtkMenuShell_have_grab + +proc set_have_grab*(a: var TGtkMenuShell, `have_grab`: guint) = + a.GtkMenuShellflag0 = a.GtkMenuShellflag0 or + ((`have_grab` shl bp_TGtkMenuShell_have_grab) and + bm_TGtkMenuShell_have_grab) + +proc have_xgrab*(a: var TGtkMenuShell): guint = + result = (a.GtkMenuShellflag0 and bm_TGtkMenuShell_have_xgrab) shr + bp_TGtkMenuShell_have_xgrab + +proc set_have_xgrab*(a: var TGtkMenuShell, `have_xgrab`: guint) = + a.GtkMenuShellflag0 = a.GtkMenuShellflag0 or + ((`have_xgrab` shl bp_TGtkMenuShell_have_xgrab) and + bm_TGtkMenuShell_have_xgrab) + +proc ignore_leave*(a: var TGtkMenuShell): guint = + result = (a.GtkMenuShellflag0 and bm_TGtkMenuShell_ignore_leave) shr + bp_TGtkMenuShell_ignore_leave + +proc set_ignore_leave*(a: var TGtkMenuShell, `ignore_leave`: guint) = + a.GtkMenuShellflag0 = a.GtkMenuShellflag0 or + ((`ignore_leave` shl bp_TGtkMenuShell_ignore_leave) and + bm_TGtkMenuShell_ignore_leave) + +proc menu_flag*(a: var TGtkMenuShell): guint = + result = (a.GtkMenuShellflag0 and bm_TGtkMenuShell_menu_flag) shr + bp_TGtkMenuShell_menu_flag + +proc set_menu_flag*(a: var TGtkMenuShell, `menu_flag`: guint) = + a.GtkMenuShellflag0 = a.GtkMenuShellflag0 or + ((`menu_flag` shl bp_TGtkMenuShell_menu_flag) and + bm_TGtkMenuShell_menu_flag) + +proc ignore_enter*(a: var TGtkMenuShell): guint = + result = (a.GtkMenuShellflag0 and bm_TGtkMenuShell_ignore_enter) shr + bp_TGtkMenuShell_ignore_enter + +proc set_ignore_enter*(a: var TGtkMenuShell, `ignore_enter`: guint) = + a.GtkMenuShellflag0 = a.GtkMenuShellflag0 or + ((`ignore_enter` shl bp_TGtkMenuShell_ignore_enter) and + bm_TGtkMenuShell_ignore_enter) + +proc submenu_placement*(a: var TGtkMenuShellClass): guint = + result = (a.GtkMenuShellClassflag0 and bm_TGtkMenuShellClass_submenu_placement) shr + bp_TGtkMenuShellClass_submenu_placement + +proc set_submenu_placement*(a: var TGtkMenuShellClass, + `submenu_placement`: guint) = + a.GtkMenuShellClassflag0 = a.GtkMenuShellClassflag0 or + ((`submenu_placement` shl bp_TGtkMenuShellClass_submenu_placement) and + bm_TGtkMenuShellClass_submenu_placement) + +proc GTK_TYPE_MENU*(): GType = + result = gtk_menu_get_type() + +proc GTK_MENU*(obj: pointer): PGtkMenu = + result = cast[PGtkMenu](GTK_CHECK_CAST(obj, GTK_TYPE_MENU())) + +proc GTK_MENU_CLASS*(klass: pointer): PGtkMenuClass = + result = cast[PGtkMenuClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_MENU())) + +proc GTK_IS_MENU*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_MENU()) + +proc GTK_IS_MENU_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_MENU()) + +proc GTK_MENU_GET_CLASS*(obj: pointer): PGtkMenuClass = + result = cast[PGtkMenuClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_MENU())) + +proc needs_destruction_ref_count*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_needs_destruction_ref_count) shr + bp_TGtkMenu_needs_destruction_ref_count + +proc set_needs_destruction_ref_count*(a: var TGtkMenu, + `needs_destruction_ref_count`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`needs_destruction_ref_count` shl + bp_TGtkMenu_needs_destruction_ref_count) and + bm_TGtkMenu_needs_destruction_ref_count) + +proc torn_off*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_torn_off) shr bp_TGtkMenu_torn_off + +proc set_torn_off*(a: var TGtkMenu, `torn_off`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`torn_off` shl bp_TGtkMenu_torn_off) and bm_TGtkMenu_torn_off) + +proc tearoff_active*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_tearoff_active) shr + bp_TGtkMenu_tearoff_active + +proc set_tearoff_active*(a: var TGtkMenu, `tearoff_active`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`tearoff_active` shl bp_TGtkMenu_tearoff_active) and + bm_TGtkMenu_tearoff_active) + +proc scroll_fast*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_scroll_fast) shr bp_TGtkMenu_scroll_fast + +proc set_scroll_fast*(a: var TGtkMenu, `scroll_fast`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`scroll_fast` shl bp_TGtkMenu_scroll_fast) and + bm_TGtkMenu_scroll_fast) + +proc upper_arrow_visible*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_upper_arrow_visible) shr + bp_TGtkMenu_upper_arrow_visible + +proc set_upper_arrow_visible*(a: var TGtkMenu, `upper_arrow_visible`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`upper_arrow_visible` shl bp_TGtkMenu_upper_arrow_visible) and + bm_TGtkMenu_upper_arrow_visible) + +proc lower_arrow_visible*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_lower_arrow_visible) shr + bp_TGtkMenu_lower_arrow_visible + +proc set_lower_arrow_visible*(a: var TGtkMenu, `lower_arrow_visible`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`lower_arrow_visible` shl bp_TGtkMenu_lower_arrow_visible) and + bm_TGtkMenu_lower_arrow_visible) + +proc upper_arrow_prelight*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_upper_arrow_prelight) shr + bp_TGtkMenu_upper_arrow_prelight + +proc set_upper_arrow_prelight*(a: var TGtkMenu, `upper_arrow_prelight`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`upper_arrow_prelight` shl bp_TGtkMenu_upper_arrow_prelight) and + bm_TGtkMenu_upper_arrow_prelight) + +proc lower_arrow_prelight*(a: var TGtkMenu): guint = + result = (a.GtkMenuflag0 and bm_TGtkMenu_lower_arrow_prelight) shr + bp_TGtkMenu_lower_arrow_prelight + +proc set_lower_arrow_prelight*(a: var TGtkMenu, `lower_arrow_prelight`: guint) = + a.GtkMenuflag0 = a.GtkMenuflag0 or + ((`lower_arrow_prelight` shl bp_TGtkMenu_lower_arrow_prelight) and + bm_TGtkMenu_lower_arrow_prelight) + +proc gtk_menu_append*(menu, child: PGtkWidget) = + gtk_menu_shell_append(cast[PGtkMenuShell](menu), child) + +proc gtk_menu_prepend*(menu, child: PGtkWidget) = + gtk_menu_shell_prepend(cast[PGtkMenuShell](menu), child) + +proc gtk_menu_insert*(menu, child: PGtkWidget, pos: gint) = + gtk_menu_shell_insert(cast[PGtkMenuShell](menu), child, pos) + +proc GTK_TYPE_ENTRY*(): GType = + result = gtk_entry_get_type() + +proc GTK_ENTRY*(obj: pointer): PGtkEntry = + result = cast[PGtkEntry](GTK_CHECK_CAST(obj, GTK_TYPE_ENTRY())) + +proc GTK_ENTRY_CLASS*(klass: pointer): PGtkEntryClass = + result = cast[PGtkEntryClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_ENTRY())) + +proc GTK_IS_ENTRY*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_ENTRY()) + +proc GTK_IS_ENTRY_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ENTRY()) + +proc GTK_ENTRY_GET_CLASS*(obj: pointer): PGtkEntryClass = + result = cast[PGtkEntryClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ENTRY())) + +proc editable*(a: var TGtkEntry): guint = + result = (a.GtkEntryflag0 and bm_TGtkEntry_editable) shr bp_TGtkEntry_editable + +proc set_editable*(a: var TGtkEntry, `editable`: guint) = + a.GtkEntryflag0 = a.GtkEntryflag0 or + ((`editable` shl bp_TGtkEntry_editable) and bm_TGtkEntry_editable) + +proc visible*(a: var TGtkEntry): guint = + result = (a.GtkEntryflag0 and bm_TGtkEntry_visible) shr bp_TGtkEntry_visible + +proc set_visible*(a: var TGtkEntry, `visible`: guint) = + a.GtkEntryflag0 = a.GtkEntryflag0 or + ((`visible` shl bp_TGtkEntry_visible) and bm_TGtkEntry_visible) + +proc overwrite_mode*(a: var TGtkEntry): guint = + result = (a.GtkEntryflag0 and bm_TGtkEntry_overwrite_mode) shr + bp_TGtkEntry_overwrite_mode + +proc set_overwrite_mode*(a: var TGtkEntry, `overwrite_mode`: guint) = + a.GtkEntryflag0 = a.GtkEntryflag0 or + ((`overwrite_mode` shl bp_TGtkEntry_overwrite_mode) and + bm_TGtkEntry_overwrite_mode) + +proc in_drag*(a: var TGtkEntry): guint = + result = (a.GtkEntryflag0 and bm_TGtkEntry_in_drag) shr bp_TGtkEntry_in_drag + +proc set_in_drag*(a: var TGtkEntry, `in_drag`: guint) = + a.GtkEntryflag0 = a.GtkEntryflag0 or + ((`in_drag` shl bp_TGtkEntry_in_drag) and bm_TGtkEntry_in_drag) + +proc cache_includes_preedit*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_cache_includes_preedit) shr + bp_TGtkEntry_cache_includes_preedit + +proc set_cache_includes_preedit*(a: var TGtkEntry, + `cache_includes_preedit`: guint) = + a.flag1 = a.flag1 or + ((`cache_includes_preedit` shl bp_TGtkEntry_cache_includes_preedit) and + bm_TGtkEntry_cache_includes_preedit) + +proc need_im_reset*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_need_im_reset) shr + bp_TGtkEntry_need_im_reset + +proc set_need_im_reset*(a: var TGtkEntry, `need_im_reset`: guint) = + a.flag1 = a.flag1 or + ((`need_im_reset` shl bp_TGtkEntry_need_im_reset) and + bm_TGtkEntry_need_im_reset) + +proc has_frame*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_has_frame) shr bp_TGtkEntry_has_frame + +proc set_has_frame*(a: var TGtkEntry, `has_frame`: guint) = + a.flag1 = a.flag1 or + ((`has_frame` shl bp_TGtkEntry_has_frame) and bm_TGtkEntry_has_frame) + +proc activates_default*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_activates_default) shr + bp_TGtkEntry_activates_default + +proc set_activates_default*(a: var TGtkEntry, `activates_default`: guint) = + a.flag1 = a.flag1 or + ((`activates_default` shl bp_TGtkEntry_activates_default) and + bm_TGtkEntry_activates_default) + +proc cursor_visible*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_cursor_visible) shr + bp_TGtkEntry_cursor_visible + +proc set_cursor_visible*(a: var TGtkEntry, `cursor_visible`: guint) = + a.flag1 = a.flag1 or + ((`cursor_visible` shl bp_TGtkEntry_cursor_visible) and + bm_TGtkEntry_cursor_visible) + +proc in_click*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_in_click) shr bp_TGtkEntry_in_click + +proc set_in_click*(a: var TGtkEntry, `in_click`: guint) = + a.flag1 = a.flag1 or + ((`in_click` shl bp_TGtkEntry_in_click) and bm_TGtkEntry_in_click) + +proc is_cell_renderer*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_is_cell_renderer) shr + bp_TGtkEntry_is_cell_renderer + +proc set_is_cell_renderer*(a: var TGtkEntry, `is_cell_renderer`: guint) = + a.flag1 = a.flag1 or + ((`is_cell_renderer` shl bp_TGtkEntry_is_cell_renderer) and + bm_TGtkEntry_is_cell_renderer) + +proc editing_canceled*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_editing_canceled) shr + bp_TGtkEntry_editing_canceled + +proc set_editing_canceled*(a: var TGtkEntry, `editing_canceled`: guint) = + a.flag1 = a.flag1 or + ((`editing_canceled` shl bp_TGtkEntry_editing_canceled) and + bm_TGtkEntry_editing_canceled) + +proc mouse_cursor_obscured*(a: var TGtkEntry): guint = + result = (a.flag1 and bm_TGtkEntry_mouse_cursor_obscured) shr + bp_TGtkEntry_mouse_cursor_obscured + +proc set_mouse_cursor_obscured*(a: var TGtkEntry, `mouse_cursor_obscured`: guint) = + a.flag1 = a.flag1 or + ((`mouse_cursor_obscured` shl bp_TGtkEntry_mouse_cursor_obscured) and + bm_TGtkEntry_mouse_cursor_obscured) + +proc GTK_TYPE_EVENT_BOX*(): GType = + result = gtk_event_box_get_type() + +proc GTK_EVENT_BOX*(obj: pointer): PGtkEventBox = + result = cast[PGtkEventBox](GTK_CHECK_CAST(obj, GTK_TYPE_EVENT_BOX())) + +proc GTK_EVENT_BOX_CLASS*(klass: pointer): PGtkEventBoxClass = + result = cast[PGtkEventBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_EVENT_BOX())) + +proc GTK_IS_EVENT_BOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_EVENT_BOX()) + +proc GTK_IS_EVENT_BOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_EVENT_BOX()) + +proc GTK_EVENT_BOX_GET_CLASS*(obj: pointer): PGtkEventBoxClass = + result = cast[PGtkEventBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_EVENT_BOX())) + +proc GTK_TYPE_FILE_SELECTION*(): GType = + result = gtk_file_selection_get_type() + +proc GTK_FILE_SELECTION*(obj: pointer): PGtkFileSelection = + result = cast[PGtkFileSelection](GTK_CHECK_CAST(obj, GTK_TYPE_FILE_SELECTION())) + +proc GTK_FILE_SELECTION_CLASS*(klass: pointer): PGtkFileSelectionClass = + result = cast[PGtkFileSelectionClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_FILE_SELECTION())) + +proc GTK_IS_FILE_SELECTION*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_FILE_SELECTION()) + +proc GTK_IS_FILE_SELECTION_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_FILE_SELECTION()) + +proc GTK_FILE_SELECTION_GET_CLASS*(obj: pointer): PGtkFileSelectionClass = + result = cast[PGtkFileSelectionClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_FILE_SELECTION())) + +proc GTK_TYPE_FIXED*(): GType = + result = gtk_fixed_get_type() + +proc GTK_FIXED*(obj: pointer): PGtkFixed = + result = cast[PGtkFixed](GTK_CHECK_CAST(obj, GTK_TYPE_FIXED())) + +proc GTK_FIXED_CLASS*(klass: pointer): PGtkFixedClass = + result = cast[PGtkFixedClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_FIXED())) + +proc GTK_IS_FIXED*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_FIXED()) + +proc GTK_IS_FIXED_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_FIXED()) + +proc GTK_FIXED_GET_CLASS*(obj: pointer): PGtkFixedClass = + result = cast[PGtkFixedClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_FIXED())) + +proc GTK_TYPE_FONT_SELECTION*(): GType = + result = gtk_font_selection_get_type() + +proc GTK_FONT_SELECTION*(obj: pointer): PGtkFontSelection = + result = cast[PGtkFontSelection](GTK_CHECK_CAST(obj, GTK_TYPE_FONT_SELECTION())) + +proc GTK_FONT_SELECTION_CLASS*(klass: pointer): PGtkFontSelectionClass = + result = cast[PGtkFontSelectionClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_FONT_SELECTION())) + +proc GTK_IS_FONT_SELECTION*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_FONT_SELECTION()) + +proc GTK_IS_FONT_SELECTION_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_FONT_SELECTION()) + +proc GTK_FONT_SELECTION_GET_CLASS*(obj: pointer): PGtkFontSelectionClass = + result = cast[PGtkFontSelectionClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_FONT_SELECTION())) + +proc GTK_TYPE_FONT_SELECTION_DIALOG*(): GType = + result = gtk_font_selection_dialog_get_type() + +proc GTK_FONT_SELECTION_DIALOG*(obj: pointer): PGtkFontSelectionDialog = + result = cast[PGtkFontSelectionDialog](GTK_CHECK_CAST(obj, + GTK_TYPE_FONT_SELECTION_DIALOG())) + +proc GTK_FONT_SELECTION_DIALOG_CLASS*(klass: pointer): PGtkFontSelectionDialogClass = + result = cast[PGtkFontSelectionDialogClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_FONT_SELECTION_DIALOG())) + +proc GTK_IS_FONT_SELECTION_DIALOG*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_FONT_SELECTION_DIALOG()) + +proc GTK_IS_FONT_SELECTION_DIALOG_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_FONT_SELECTION_DIALOG()) + +proc GTK_FONT_SELECTION_DIALOG_GET_CLASS*(obj: pointer): PGtkFontSelectionDialogClass = + result = cast[PGtkFontSelectionDialogClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_FONT_SELECTION_DIALOG())) + +proc GTK_TYPE_GAMMA_CURVE*(): GType = + result = gtk_gamma_curve_get_type() + +proc GTK_GAMMA_CURVE*(obj: pointer): PGtkGammaCurve = + result = cast[PGtkGammaCurve](GTK_CHECK_CAST(obj, GTK_TYPE_GAMMA_CURVE())) + +proc GTK_GAMMA_CURVE_CLASS*(klass: pointer): PGtkGammaCurveClass = + result = cast[PGtkGammaCurveClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_GAMMA_CURVE())) + +proc GTK_IS_GAMMA_CURVE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_GAMMA_CURVE()) + +proc GTK_IS_GAMMA_CURVE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_GAMMA_CURVE()) + +proc GTK_GAMMA_CURVE_GET_CLASS*(obj: pointer): PGtkGammaCurveClass = + result = cast[PGtkGammaCurveClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_GAMMA_CURVE())) + +proc GTK_TYPE_HANDLE_BOX*(): GType = + result = gtk_handle_box_get_type() + +proc GTK_HANDLE_BOX*(obj: pointer): PGtkHandleBox = + result = cast[PGtkHandleBox](GTK_CHECK_CAST(obj, GTK_TYPE_HANDLE_BOX())) + +proc GTK_HANDLE_BOX_CLASS*(klass: pointer): PGtkHandleBoxClass = + result = cast[PGtkHandleBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HANDLE_BOX())) + +proc GTK_IS_HANDLE_BOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HANDLE_BOX()) + +proc GTK_IS_HANDLE_BOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HANDLE_BOX()) + +proc GTK_HANDLE_BOX_GET_CLASS*(obj: pointer): PGtkHandleBoxClass = + result = cast[PGtkHandleBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HANDLE_BOX())) + +proc handle_position*(a: var TGtkHandleBox): guint = + result = (a.GtkHandleBoxflag0 and bm_TGtkHandleBox_handle_position) shr + bp_TGtkHandleBox_handle_position + +proc set_handle_position*(a: var TGtkHandleBox, `handle_position`: guint) = + a.GtkHandleBoxflag0 = a.GtkHandleBoxflag0 or + ((`handle_position` shl bp_TGtkHandleBox_handle_position) and + bm_TGtkHandleBox_handle_position) + +proc float_window_mapped*(a: var TGtkHandleBox): guint = + result = (a.GtkHandleBoxflag0 and bm_TGtkHandleBox_float_window_mapped) shr + bp_TGtkHandleBox_float_window_mapped + +proc set_float_window_mapped*(a: var TGtkHandleBox, `float_window_mapped`: guint) = + a.GtkHandleBoxflag0 = a.GtkHandleBoxflag0 or + ((`float_window_mapped` shl bp_TGtkHandleBox_float_window_mapped) and + bm_TGtkHandleBox_float_window_mapped) + +proc child_detached*(a: var TGtkHandleBox): guint = + result = (a.GtkHandleBoxflag0 and bm_TGtkHandleBox_child_detached) shr + bp_TGtkHandleBox_child_detached + +proc set_child_detached*(a: var TGtkHandleBox, `child_detached`: guint) = + a.GtkHandleBoxflag0 = a.GtkHandleBoxflag0 or + ((`child_detached` shl bp_TGtkHandleBox_child_detached) and + bm_TGtkHandleBox_child_detached) + +proc in_drag*(a: var TGtkHandleBox): guint = + result = (a.GtkHandleBoxflag0 and bm_TGtkHandleBox_in_drag) shr + bp_TGtkHandleBox_in_drag + +proc set_in_drag*(a: var TGtkHandleBox, `in_drag`: guint) = + a.GtkHandleBoxflag0 = a.GtkHandleBoxflag0 or + ((`in_drag` shl bp_TGtkHandleBox_in_drag) and bm_TGtkHandleBox_in_drag) + +proc shrink_on_detach*(a: var TGtkHandleBox): guint = + result = (a.GtkHandleBoxflag0 and bm_TGtkHandleBox_shrink_on_detach) shr + bp_TGtkHandleBox_shrink_on_detach + +proc set_shrink_on_detach*(a: var TGtkHandleBox, `shrink_on_detach`: guint) = + a.GtkHandleBoxflag0 = a.GtkHandleBoxflag0 or + ((`shrink_on_detach` shl bp_TGtkHandleBox_shrink_on_detach) and + bm_TGtkHandleBox_shrink_on_detach) + +proc snap_edge*(a: var TGtkHandleBox): gint = + result = (a.GtkHandleBoxflag0 and bm_TGtkHandleBox_snap_edge) shr + bp_TGtkHandleBox_snap_edge + +proc set_snap_edge*(a: var TGtkHandleBox, `snap_edge`: gint) = + a.GtkHandleBoxflag0 = a.GtkHandleBoxflag0 or + ((`snap_edge` shl bp_TGtkHandleBox_snap_edge) and + bm_TGtkHandleBox_snap_edge) + +proc GTK_TYPE_PANED*(): GType = + result = gtk_paned_get_type() + +proc GTK_PANED*(obj: pointer): PGtkPaned = + result = cast[PGtkPaned](GTK_CHECK_CAST(obj, GTK_TYPE_PANED())) + +proc GTK_PANED_CLASS*(klass: pointer): PGtkPanedClass = + result = cast[PGtkPanedClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_PANED())) + +proc GTK_IS_PANED*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_PANED()) + +proc GTK_IS_PANED_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_PANED()) + +proc GTK_PANED_GET_CLASS*(obj: pointer): PGtkPanedClass = + result = cast[PGtkPanedClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_PANED())) + +proc position_set*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_position_set) shr + bp_TGtkPaned_position_set + +proc set_position_set*(a: var TGtkPaned, `position_set`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`position_set` shl bp_TGtkPaned_position_set) and + bm_TGtkPaned_position_set) + +proc in_drag*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_in_drag) shr bp_TGtkPaned_in_drag + +proc set_in_drag*(a: var TGtkPaned, `in_drag`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`in_drag` shl bp_TGtkPaned_in_drag) and bm_TGtkPaned_in_drag) + +proc child1_shrink*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_child1_shrink) shr + bp_TGtkPaned_child1_shrink + +proc set_child1_shrink*(a: var TGtkPaned, `child1_shrink`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`child1_shrink` shl bp_TGtkPaned_child1_shrink) and + bm_TGtkPaned_child1_shrink) + +proc child1_resize*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_child1_resize) shr + bp_TGtkPaned_child1_resize + +proc set_child1_resize*(a: var TGtkPaned, `child1_resize`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`child1_resize` shl bp_TGtkPaned_child1_resize) and + bm_TGtkPaned_child1_resize) + +proc child2_shrink*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_child2_shrink) shr + bp_TGtkPaned_child2_shrink + +proc set_child2_shrink*(a: var TGtkPaned, `child2_shrink`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`child2_shrink` shl bp_TGtkPaned_child2_shrink) and + bm_TGtkPaned_child2_shrink) + +proc child2_resize*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_child2_resize) shr + bp_TGtkPaned_child2_resize + +proc set_child2_resize*(a: var TGtkPaned, `child2_resize`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`child2_resize` shl bp_TGtkPaned_child2_resize) and + bm_TGtkPaned_child2_resize) + +proc orientation*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_orientation) shr + bp_TGtkPaned_orientation + +proc set_orientation*(a: var TGtkPaned, `orientation`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`orientation` shl bp_TGtkPaned_orientation) and + bm_TGtkPaned_orientation) + +proc in_recursion*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_in_recursion) shr + bp_TGtkPaned_in_recursion + +proc set_in_recursion*(a: var TGtkPaned, `in_recursion`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`in_recursion` shl bp_TGtkPaned_in_recursion) and + bm_TGtkPaned_in_recursion) + +proc handle_prelit*(a: var TGtkPaned): guint = + result = (a.GtkPanedflag0 and bm_TGtkPaned_handle_prelit) shr + bp_TGtkPaned_handle_prelit + +proc set_handle_prelit*(a: var TGtkPaned, `handle_prelit`: guint) = + a.GtkPanedflag0 = a.GtkPanedflag0 or + ((`handle_prelit` shl bp_TGtkPaned_handle_prelit) and + bm_TGtkPaned_handle_prelit) + +proc gtk_paned_gutter_size*(p: pointer, s: gint) = + if (p != nil) and (s != 0): nil + +proc gtk_paned_set_gutter_size*(p: pointer, s: gint) = + if (p != nil) and (s != 0): nil + +proc GTK_TYPE_HBUTTON_BOX*(): GType = + result = gtk_hbutton_box_get_type() + +proc GTK_HBUTTON_BOX*(obj: pointer): PGtkHButtonBox = + result = cast[PGtkHButtonBox](GTK_CHECK_CAST(obj, GTK_TYPE_HBUTTON_BOX())) + +proc GTK_HBUTTON_BOX_CLASS*(klass: pointer): PGtkHButtonBoxClass = + result = cast[PGtkHButtonBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HBUTTON_BOX())) + +proc GTK_IS_HBUTTON_BOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HBUTTON_BOX()) + +proc GTK_IS_HBUTTON_BOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HBUTTON_BOX()) + +proc GTK_HBUTTON_BOX_GET_CLASS*(obj: pointer): PGtkHButtonBoxClass = + result = cast[PGtkHButtonBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HBUTTON_BOX())) + +proc GTK_TYPE_HPANED*(): GType = + result = gtk_hpaned_get_type() + +proc GTK_HPANED*(obj: pointer): PGtkHPaned = + result = cast[PGtkHPaned](GTK_CHECK_CAST(obj, GTK_TYPE_HPANED())) + +proc GTK_HPANED_CLASS*(klass: pointer): PGtkHPanedClass = + result = cast[PGtkHPanedClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HPANED())) + +proc GTK_IS_HPANED*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HPANED()) + +proc GTK_IS_HPANED_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HPANED()) + +proc GTK_HPANED_GET_CLASS*(obj: pointer): PGtkHPanedClass = + result = cast[PGtkHPanedClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HPANED())) + +proc GTK_TYPE_RULER*(): GType = + result = gtk_ruler_get_type() + +proc GTK_RULER*(obj: pointer): PGtkRuler = + result = cast[PGtkRuler](GTK_CHECK_CAST(obj, GTK_TYPE_RULER())) + +proc GTK_RULER_CLASS*(klass: pointer): PGtkRulerClass = + result = cast[PGtkRulerClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_RULER())) + +proc GTK_IS_RULER*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_RULER()) + +proc GTK_IS_RULER_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_RULER()) + +proc GTK_RULER_GET_CLASS*(obj: pointer): PGtkRulerClass = + result = cast[PGtkRulerClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_RULER())) + +proc GTK_TYPE_HRULER*(): GType = + result = gtk_hruler_get_type() + +proc GTK_HRULER*(obj: pointer): PGtkHRuler = + result = cast[PGtkHRuler](GTK_CHECK_CAST(obj, GTK_TYPE_HRULER())) + +proc GTK_HRULER_CLASS*(klass: pointer): PGtkHRulerClass = + result = cast[PGtkHRulerClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HRULER())) + +proc GTK_IS_HRULER*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HRULER()) + +proc GTK_IS_HRULER_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HRULER()) + +proc GTK_HRULER_GET_CLASS*(obj: pointer): PGtkHRulerClass = + result = cast[PGtkHRulerClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HRULER())) + +proc GTK_TYPE_SETTINGS*(): GType = + result = gtk_settings_get_type() + +proc GTK_SETTINGS*(obj: pointer): PGtkSettings = + result = cast[PGtkSettings](GTK_CHECK_CAST(obj, GTK_TYPE_SETTINGS())) + +proc GTK_SETTINGS_CLASS*(klass: pointer): PGtkSettingsClass = + result = cast[PGtkSettingsClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SETTINGS())) + +proc GTK_IS_SETTINGS*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SETTINGS()) + +proc GTK_IS_SETTINGS_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SETTINGS()) + +proc GTK_SETTINGS_GET_CLASS*(obj: pointer): PGtkSettingsClass = + result = cast[PGtkSettingsClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SETTINGS())) + +proc GTK_TYPE_RC_STYLE*(): GType = + result = gtk_rc_style_get_type() + +proc GTK_RC_STYLE_get*(anObject: pointer): PGtkRcStyle = + result = cast[PGtkRcStyle](G_TYPE_CHECK_INSTANCE_CAST(anObject, GTK_TYPE_RC_STYLE())) + +proc GTK_RC_STYLE_CLASS*(klass: pointer): PGtkRcStyleClass = + result = cast[PGtkRcStyleClass](G_TYPE_CHECK_CLASS_CAST(klass, GTK_TYPE_RC_STYLE())) + +proc GTK_IS_RC_STYLE*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_RC_STYLE()) + +proc GTK_IS_RC_STYLE_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_RC_STYLE()) + +proc GTK_RC_STYLE_GET_CLASS*(obj: pointer): PGtkRcStyleClass = + result = cast[PGtkRcStyleClass](G_TYPE_INSTANCE_GET_CLASS(obj, GTK_TYPE_RC_STYLE())) + +proc engine_specified*(a: var TGtkRcStyle): guint = + result = (a.GtkRcStyleflag0 and bm_TGtkRcStyle_engine_specified) shr + bp_TGtkRcStyle_engine_specified + +proc set_engine_specified*(a: var TGtkRcStyle, `engine_specified`: guint) = + a.GtkRcStyleflag0 = a.GtkRcStyleflag0 or + ((`engine_specified` shl bp_TGtkRcStyle_engine_specified) and + bm_TGtkRcStyle_engine_specified) + +proc GTK_TYPE_STYLE*(): GType = + result = gtk_style_get_type() + +proc GTK_STYLE*(anObject: pointer): PGtkStyle = + result = cast[PGtkStyle](G_TYPE_CHECK_INSTANCE_CAST(anObject, GTK_TYPE_STYLE())) + +proc GTK_STYLE_CLASS*(klass: pointer): PGtkStyleClass = + result = cast[PGtkStyleClass](G_TYPE_CHECK_CLASS_CAST(klass, GTK_TYPE_STYLE())) + +proc GTK_IS_STYLE*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_STYLE()) + +proc GTK_IS_STYLE_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_STYLE()) + +proc GTK_STYLE_GET_CLASS*(obj: pointer): PGtkStyleClass = + result = cast[PGtkStyleClass](G_TYPE_INSTANCE_GET_CLASS(obj, GTK_TYPE_STYLE())) + +proc GTK_TYPE_BORDER*(): GType = + result = gtk_border_get_type() + +proc GTK_STYLE_ATTACHED*(style: pointer): bool = + result = ((GTK_STYLE(style)).attach_count) > 0 + +proc gtk_style_apply_default_pixmap*(style: PGtkStyle, window: PGdkWindow, + state_type: TGtkStateType, + area: PGdkRectangle, x: gint, y: gint, + width: gint, height: gint) = + gtk_style_apply_default_background(style, window, true, state_type, area, x, + y, width, height) + +proc GTK_TYPE_RANGE*(): GType = + result = gtk_range_get_type() + +proc GTK_RANGE*(obj: pointer): PGtkRange = + result = cast[PGtkRange](GTK_CHECK_CAST(obj, GTK_TYPE_RANGE())) + +proc GTK_RANGE_CLASS*(klass: pointer): PGtkRangeClass = + result = cast[PGtkRangeClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_RANGE())) + +proc GTK_IS_RANGE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_RANGE()) + +proc GTK_IS_RANGE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_RANGE()) + +proc GTK_RANGE_GET_CLASS*(obj: pointer): PGtkRangeClass = + result = cast[PGtkRangeClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_RANGE())) + +proc inverted*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_inverted) shr bp_TGtkRange_inverted + +proc set_inverted*(a: var TGtkRange, `inverted`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`inverted` shl bp_TGtkRange_inverted) and bm_TGtkRange_inverted) + +proc flippable*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_flippable) shr bp_TGtkRange_flippable + +proc set_flippable*(a: var TGtkRange, `flippable`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`flippable` shl bp_TGtkRange_flippable) and bm_TGtkRange_flippable) + +proc has_stepper_a*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_has_stepper_a) shr + bp_TGtkRange_has_stepper_a + +proc set_has_stepper_a*(a: var TGtkRange, `has_stepper_a`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`has_stepper_a` shl bp_TGtkRange_has_stepper_a) and + bm_TGtkRange_has_stepper_a) + +proc has_stepper_b*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_has_stepper_b) shr + bp_TGtkRange_has_stepper_b + +proc set_has_stepper_b*(a: var TGtkRange, `has_stepper_b`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`has_stepper_b` shl bp_TGtkRange_has_stepper_b) and + bm_TGtkRange_has_stepper_b) + +proc has_stepper_c*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_has_stepper_c) shr + bp_TGtkRange_has_stepper_c + +proc set_has_stepper_c*(a: var TGtkRange, `has_stepper_c`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`has_stepper_c` shl bp_TGtkRange_has_stepper_c) and + bm_TGtkRange_has_stepper_c) + +proc has_stepper_d*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_has_stepper_d) shr + bp_TGtkRange_has_stepper_d + +proc set_has_stepper_d*(a: var TGtkRange, `has_stepper_d`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`has_stepper_d` shl bp_TGtkRange_has_stepper_d) and + bm_TGtkRange_has_stepper_d) + +proc need_recalc*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_need_recalc) shr + bp_TGtkRange_need_recalc + +proc set_need_recalc*(a: var TGtkRange, `need_recalc`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`need_recalc` shl bp_TGtkRange_need_recalc) and + bm_TGtkRange_need_recalc) + +proc slider_size_fixed*(a: var TGtkRange): guint = + result = (a.GtkRangeflag0 and bm_TGtkRange_slider_size_fixed) shr + bp_TGtkRange_slider_size_fixed + +proc set_slider_size_fixed*(a: var TGtkRange, `slider_size_fixed`: guint) = + a.GtkRangeflag0 = a.GtkRangeflag0 or + ((`slider_size_fixed` shl bp_TGtkRange_slider_size_fixed) and + bm_TGtkRange_slider_size_fixed) + +proc trough_click_forward*(a: var TGtkRange): guint = + result = (a.flag1 and bm_TGtkRange_trough_click_forward) shr + bp_TGtkRange_trough_click_forward + +proc set_trough_click_forward*(a: var TGtkRange, `trough_click_forward`: guint) = + a.flag1 = a.flag1 or + ((`trough_click_forward` shl bp_TGtkRange_trough_click_forward) and + bm_TGtkRange_trough_click_forward) + +proc update_pending*(a: var TGtkRange): guint = + result = (a.flag1 and bm_TGtkRange_update_pending) shr + bp_TGtkRange_update_pending + +proc set_update_pending*(a: var TGtkRange, `update_pending`: guint) = + a.flag1 = a.flag1 or + ((`update_pending` shl bp_TGtkRange_update_pending) and + bm_TGtkRange_update_pending) + +proc GTK_TYPE_SCALE*(): GType = + result = gtk_scale_get_type() + +proc GTK_SCALE*(obj: pointer): PGtkScale = + result = cast[PGtkScale](GTK_CHECK_CAST(obj, GTK_TYPE_SCALE())) + +proc GTK_SCALE_CLASS*(klass: pointer): PGtkScaleClass = + result = cast[PGtkScaleClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SCALE())) + +proc GTK_IS_SCALE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SCALE()) + +proc GTK_IS_SCALE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SCALE()) + +proc GTK_SCALE_GET_CLASS*(obj: pointer): PGtkScaleClass = + result = cast[PGtkScaleClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SCALE())) + +proc draw_value*(a: var TGtkScale): guint = + result = (a.GtkScaleflag0 and bm_TGtkScale_draw_value) shr bp_TGtkScale_draw_value + +proc set_draw_value*(a: var TGtkScale, `draw_value`: guint) = + a.GtkScaleflag0 = a.GtkScaleflag0 or + ((`draw_value` shl bp_TGtkScale_draw_value) and bm_TGtkScale_draw_value) + +proc value_pos*(a: var TGtkScale): guint = + result = (a.GtkScaleflag0 and bm_TGtkScale_value_pos) shr bp_TGtkScale_value_pos + +proc set_value_pos*(a: var TGtkScale, `value_pos`: guint) = + a.GtkScaleflag0 = a.GtkScaleflag0 or + ((`value_pos` shl bp_TGtkScale_value_pos) and bm_TGtkScale_value_pos) + +proc GTK_TYPE_HSCALE*(): GType = + result = gtk_hscale_get_type() + +proc GTK_HSCALE*(obj: pointer): PGtkHScale = + result = cast[PGtkHScale](GTK_CHECK_CAST(obj, GTK_TYPE_HSCALE())) + +proc GTK_HSCALE_CLASS*(klass: pointer): PGtkHScaleClass = + result = cast[PGtkHScaleClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HSCALE())) + +proc GTK_IS_HSCALE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HSCALE()) + +proc GTK_IS_HSCALE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HSCALE()) + +proc GTK_HSCALE_GET_CLASS*(obj: pointer): PGtkHScaleClass = + result = cast[PGtkHScaleClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HSCALE())) + +proc GTK_TYPE_SCROLLBAR*(): GType = + result = gtk_scrollbar_get_type() + +proc GTK_SCROLLBAR*(obj: pointer): PGtkScrollbar = + result = cast[PGtkScrollbar](GTK_CHECK_CAST(obj, GTK_TYPE_SCROLLBAR())) + +proc GTK_SCROLLBAR_CLASS*(klass: pointer): PGtkScrollbarClass = + result = cast[PGtkScrollbarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SCROLLBAR())) + +proc GTK_IS_SCROLLBAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SCROLLBAR()) + +proc GTK_IS_SCROLLBAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SCROLLBAR()) + +proc GTK_SCROLLBAR_GET_CLASS*(obj: pointer): PGtkScrollbarClass = + result = cast[PGtkScrollbarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SCROLLBAR())) + +proc GTK_TYPE_HSCROLLBAR*(): GType = + result = gtk_hscrollbar_get_type() + +proc GTK_HSCROLLBAR*(obj: pointer): PGtkHScrollbar = + result = cast[PGtkHScrollbar](GTK_CHECK_CAST(obj, GTK_TYPE_HSCROLLBAR())) + +proc GTK_HSCROLLBAR_CLASS*(klass: pointer): PGtkHScrollbarClass = + result = cast[PGtkHScrollbarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HSCROLLBAR())) + +proc GTK_IS_HSCROLLBAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HSCROLLBAR()) + +proc GTK_IS_HSCROLLBAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HSCROLLBAR()) + +proc GTK_HSCROLLBAR_GET_CLASS*(obj: pointer): PGtkHScrollbarClass = + result = cast[PGtkHScrollbarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HSCROLLBAR())) + +proc GTK_TYPE_SEPARATOR*(): GType = + result = gtk_separator_get_type() + +proc GTK_SEPARATOR*(obj: pointer): PGtkSeparator = + result = cast[PGtkSeparator](GTK_CHECK_CAST(obj, GTK_TYPE_SEPARATOR())) + +proc GTK_SEPARATOR_CLASS*(klass: pointer): PGtkSeparatorClass = + result = cast[PGtkSeparatorClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SEPARATOR())) + +proc GTK_IS_SEPARATOR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SEPARATOR()) + +proc GTK_IS_SEPARATOR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SEPARATOR()) + +proc GTK_SEPARATOR_GET_CLASS*(obj: pointer): PGtkSeparatorClass = + result = cast[PGtkSeparatorClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SEPARATOR())) + +proc GTK_TYPE_HSEPARATOR*(): GType = + result = gtk_hseparator_get_type() + +proc GTK_HSEPARATOR*(obj: pointer): PGtkHSeparator = + result = cast[PGtkHSeparator](GTK_CHECK_CAST(obj, GTK_TYPE_HSEPARATOR())) + +proc GTK_HSEPARATOR_CLASS*(klass: pointer): PGtkHSeparatorClass = + result = cast[PGtkHSeparatorClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_HSEPARATOR())) + +proc GTK_IS_HSEPARATOR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_HSEPARATOR()) + +proc GTK_IS_HSEPARATOR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_HSEPARATOR()) + +proc GTK_HSEPARATOR_GET_CLASS*(obj: pointer): PGtkHSeparatorClass = + result = cast[PGtkHSeparatorClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_HSEPARATOR())) + +proc GTK_TYPE_ICON_FACTORY*(): GType = + result = gtk_icon_factory_get_type() + +proc GTK_ICON_FACTORY*(anObject: pointer): PGtkIconFactory = + result = cast[PGtkIconFactory](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GTK_TYPE_ICON_FACTORY())) + +proc GTK_ICON_FACTORY_CLASS*(klass: pointer): PGtkIconFactoryClass = + result = cast[PGtkIconFactoryClass](G_TYPE_CHECK_CLASS_CAST(klass, + GTK_TYPE_ICON_FACTORY())) + +proc GTK_IS_ICON_FACTORY*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_ICON_FACTORY()) + +proc GTK_IS_ICON_FACTORY_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_ICON_FACTORY()) + +proc GTK_ICON_FACTORY_GET_CLASS*(obj: pointer): PGtkIconFactoryClass = + result = cast[PGtkIconFactoryClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GTK_TYPE_ICON_FACTORY())) + +proc GTK_TYPE_ICON_SET*(): GType = + result = gtk_icon_set_get_type() + +proc GTK_TYPE_ICON_SOURCE*(): GType = + result = gtk_icon_source_get_type() + +proc GTK_TYPE_IMAGE*(): GType = + result = gtk_image_get_type() + +proc GTK_IMAGE*(obj: pointer): PGtkImage = + result = cast[PGtkImage](GTK_CHECK_CAST(obj, GTK_TYPE_IMAGE())) + +proc GTK_IMAGE_CLASS*(klass: pointer): PGtkImageClass = + result = cast[PGtkImageClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_IMAGE())) + +proc GTK_IS_IMAGE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_IMAGE()) + +proc GTK_IS_IMAGE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_IMAGE()) + +proc GTK_IMAGE_GET_CLASS*(obj: pointer): PGtkImageClass = + result = cast[PGtkImageClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_IMAGE())) + +proc GTK_TYPE_IMAGE_MENU_ITEM*(): GType = + result = gtk_image_menu_item_get_type() + +proc GTK_IMAGE_MENU_ITEM*(obj: pointer): PGtkImageMenuItem = + result = cast[PGtkImageMenuItem](GTK_CHECK_CAST(obj, GTK_TYPE_IMAGE_MENU_ITEM())) + +proc GTK_IMAGE_MENU_ITEM_CLASS*(klass: pointer): PGtkImageMenuItemClass = + result = cast[PGtkImageMenuItemClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_IMAGE_MENU_ITEM())) + +proc GTK_IS_IMAGE_MENU_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_IMAGE_MENU_ITEM()) + +proc GTK_IS_IMAGE_MENU_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_IMAGE_MENU_ITEM()) + +proc GTK_IMAGE_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkImageMenuItemClass = + result = cast[PGtkImageMenuItemClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_IMAGE_MENU_ITEM())) + +proc GTK_TYPE_IM_CONTEXT_SIMPLE*(): GType = + result = gtk_im_context_simple_get_type() + +proc GTK_IM_CONTEXT_SIMPLE*(obj: pointer): PGtkIMContextSimple = + result = cast[PGtkIMContextSimple](GTK_CHECK_CAST(obj, GTK_TYPE_IM_CONTEXT_SIMPLE())) + +proc GTK_IM_CONTEXT_SIMPLE_CLASS*(klass: pointer): PGtkIMContextSimpleClass = + result = cast[PGtkIMContextSimpleClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_IM_CONTEXT_SIMPLE())) + +proc GTK_IS_IM_CONTEXT_SIMPLE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_IM_CONTEXT_SIMPLE()) + +proc GTK_IS_IM_CONTEXT_SIMPLE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_IM_CONTEXT_SIMPLE()) + +proc GTK_IM_CONTEXT_SIMPLE_GET_CLASS*(obj: pointer): PGtkIMContextSimpleClass = + result = cast[PGtkIMContextSimpleClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_IM_CONTEXT_SIMPLE())) + +proc in_hex_sequence*(a: var TGtkIMContextSimple): guint = + result = (a.GtkIMContextSimpleflag0 and bm_TGtkIMContextSimple_in_hex_sequence) shr + bp_TGtkIMContextSimple_in_hex_sequence + +proc set_in_hex_sequence*(a: var TGtkIMContextSimple, `in_hex_sequence`: guint) = + a.GtkIMContextSimpleflag0 = a.GtkIMContextSimpleflag0 or + ((`in_hex_sequence` shl bp_TGtkIMContextSimple_in_hex_sequence) and + bm_TGtkIMContextSimple_in_hex_sequence) + +proc GTK_TYPE_IM_MULTICONTEXT*(): GType = + result = gtk_im_multicontext_get_type() + +proc GTK_IM_MULTICONTEXT*(obj: pointer): PGtkIMMulticontext = + result = cast[PGtkIMMulticontext](GTK_CHECK_CAST(obj, GTK_TYPE_IM_MULTICONTEXT())) + +proc GTK_IM_MULTICONTEXT_CLASS*(klass: pointer): PGtkIMMulticontextClass = + result = cast[PGtkIMMulticontextClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_IM_MULTICONTEXT())) + +proc GTK_IS_IM_MULTICONTEXT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_IM_MULTICONTEXT()) + +proc GTK_IS_IM_MULTICONTEXT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_IM_MULTICONTEXT()) + +proc GTK_IM_MULTICONTEXT_GET_CLASS*(obj: pointer): PGtkIMMulticontextClass = + result = cast[PGtkIMMulticontextClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_IM_MULTICONTEXT())) + +proc GTK_TYPE_INPUT_DIALOG*(): GType = + result = gtk_input_dialog_get_type() + +proc GTK_INPUT_DIALOG*(obj: pointer): PGtkInputDialog = + result = cast[PGtkInputDialog](GTK_CHECK_CAST(obj, GTK_TYPE_INPUT_DIALOG())) + +proc GTK_INPUT_DIALOG_CLASS*(klass: pointer): PGtkInputDialogClass = + result = cast[PGtkInputDialogClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_INPUT_DIALOG())) + +proc GTK_IS_INPUT_DIALOG*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_INPUT_DIALOG()) + +proc GTK_IS_INPUT_DIALOG_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_INPUT_DIALOG()) + +proc GTK_INPUT_DIALOG_GET_CLASS*(obj: pointer): PGtkInputDialogClass = + result = cast[PGtkInputDialogClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_INPUT_DIALOG())) + +proc GTK_TYPE_INVISIBLE*(): GType = + result = gtk_invisible_get_type() + +proc GTK_INVISIBLE*(obj: pointer): PGtkInvisible = + result = cast[PGtkInvisible](GTK_CHECK_CAST(obj, GTK_TYPE_INVISIBLE())) + +proc GTK_INVISIBLE_CLASS*(klass: pointer): PGtkInvisibleClass = + result = cast[PGtkInvisibleClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_INVISIBLE())) + +proc GTK_IS_INVISIBLE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_INVISIBLE()) + +proc GTK_IS_INVISIBLE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_INVISIBLE()) + +proc GTK_INVISIBLE_GET_CLASS*(obj: pointer): PGtkInvisibleClass = + result = cast[PGtkInvisibleClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_INVISIBLE())) + +proc GTK_TYPE_ITEM_FACTORY*(): GType = + result = gtk_item_factory_get_type() + +proc GTK_ITEM_FACTORY*(anObject: pointer): PGtkItemFactory = + result = cast[PGtkItemFactory](GTK_CHECK_CAST(anObject, GTK_TYPE_ITEM_FACTORY())) + +proc GTK_ITEM_FACTORY_CLASS*(klass: pointer): PGtkItemFactoryClass = + result = cast[PGtkItemFactoryClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_ITEM_FACTORY())) + +proc GTK_IS_ITEM_FACTORY*(anObject: pointer): bool = + result = GTK_CHECK_TYPE(anObject, GTK_TYPE_ITEM_FACTORY()) + +proc GTK_IS_ITEM_FACTORY_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_ITEM_FACTORY()) + +proc GTK_ITEM_FACTORY_GET_CLASS*(obj: pointer): PGtkItemFactoryClass = + result = cast[PGtkItemFactoryClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_ITEM_FACTORY())) + +proc GTK_TYPE_LAYOUT*(): GType = + result = gtk_layout_get_type() + +proc GTK_LAYOUT*(obj: pointer): PGtkLayout = + result = cast[PGtkLayout](GTK_CHECK_CAST(obj, GTK_TYPE_LAYOUT())) + +proc GTK_LAYOUT_CLASS*(klass: pointer): PGtkLayoutClass = + result = cast[PGtkLayoutClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_LAYOUT())) + +proc GTK_IS_LAYOUT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_LAYOUT()) + +proc GTK_IS_LAYOUT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_LAYOUT()) + +proc GTK_LAYOUT_GET_CLASS*(obj: pointer): PGtkLayoutClass = + result = cast[PGtkLayoutClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_LAYOUT())) + +proc GTK_TYPE_LIST*(): GType = + result = gtk_list_get_type() + +proc GTK_LIST*(obj: pointer): PGtkList = + result = cast[PGtkList](GTK_CHECK_CAST(obj, GTK_TYPE_LIST())) + +proc GTK_LIST_CLASS*(klass: pointer): PGtkListClass = + result = cast[PGtkListClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_LIST())) + +proc GTK_IS_LIST*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_LIST()) + +proc GTK_IS_LIST_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_LIST()) + +proc GTK_LIST_GET_CLASS*(obj: pointer): PGtkListClass = + result = cast[PGtkListClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_LIST())) + +proc selection_mode*(a: var TGtkList): guint = + result = (a.GtkListflag0 and bm_TGtkList_selection_mode) shr + bp_TGtkList_selection_mode + +proc set_selection_mode*(a: var TGtkList, `selection_mode`: guint) = + a.GtkListflag0 = a.GtkListflag0 or + ((`selection_mode` shl bp_TGtkList_selection_mode) and + bm_TGtkList_selection_mode) + +proc drag_selection*(a: var TGtkList): guint = + result = (a.GtkListflag0 and bm_TGtkList_drag_selection) shr + bp_TGtkList_drag_selection + +proc set_drag_selection*(a: var TGtkList, `drag_selection`: guint) = + a.GtkListflag0 = a.GtkListflag0 or + ((`drag_selection` shl bp_TGtkList_drag_selection) and + bm_TGtkList_drag_selection) + +proc add_mode*(a: var TGtkList): guint = + result = (a.GtkListflag0 and bm_TGtkList_add_mode) shr bp_TGtkList_add_mode + +proc set_add_mode*(a: var TGtkList, `add_mode`: guint) = + a.GtkListflag0 = a.GtkListflag0 or + ((`add_mode` shl bp_TGtkList_add_mode) and bm_TGtkList_add_mode) + +proc gtk_list_item_get_type(): GType {.importc, cdecl, dynlib: gtklib.} + +proc GTK_TYPE_LIST_ITEM*(): GType = + result = gtk_list_item_get_type() + +type + TGtkListItem = object of TGtkItem + TGtkListItemClass = object of TGtkItemClass + PGtkListItem = ptr TGtkListItem + PGtkListItemClass = ptr TGtkListItemClass + +proc GTK_LIST_ITEM*(obj: pointer): PGtkListItem = + result = cast[PGtkListItem](GTK_CHECK_CAST(obj, GTK_TYPE_LIST_ITEM())) + +proc GTK_LIST_ITEM_CLASS*(klass: pointer): PGtkListItemClass = + result = cast[PGtkListItemClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_LIST_ITEM())) + +proc GTK_IS_LIST_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_LIST_ITEM()) + +proc GTK_IS_LIST_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_LIST_ITEM()) + +proc GTK_LIST_ITEM_GET_CLASS*(obj: pointer): PGtkListItemClass = + result = cast[PGtkListItemClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_LIST_ITEM())) + +#proc gtk_tree_model_get_type(): GType {.importc, cdecl, dynlib: gtklib.} + +proc GTK_TYPE_TREE_MODEL*(): GType = + result = gtk_tree_model_get_type() + +proc GTK_TREE_MODEL*(obj: pointer): PGtkTreeModel = + result = cast[PGtkTreeModel](G_TYPE_CHECK_INSTANCE_CAST(obj, GTK_TYPE_TREE_MODEL())) + +proc GTK_IS_TREE_MODEL*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TREE_MODEL()) + +proc GTK_TREE_MODEL_GET_IFACE*(obj: pointer): PGtkTreeModelIface = + result = cast[PGtkTreeModelIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + GTK_TYPE_TREE_MODEL())) + +proc GTK_TYPE_TREE_ITER*(): GType = + result = gtk_tree_iter_get_type() + +proc GTK_TYPE_TREE_PATH*(): GType = + result = gtk_tree_path_get_type() + +proc gtk_tree_path_new_root*(): PGtkTreePath = + result = gtk_tree_path_new_first() + +proc gtk_tree_model_get_iter_root*(tree_model: PGtkTreeModel, iter: PGtkTreeIter): gboolean = + result = gtk_tree_model_get_iter_first(tree_model, iter) + +proc GTK_TYPE_TREE_SORTABLE*(): GType = + result = gtk_tree_sortable_get_type() + +proc GTK_TREE_SORTABLE*(obj: pointer): PGtkTreeSortable = + result = cast[PGtkTreeSortable](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_TREE_SORTABLE())) + +proc GTK_TREE_SORTABLE_CLASS*(obj: pointer): PGtkTreeSortableIface = + result = cast[PGtkTreeSortableIface](G_TYPE_CHECK_CLASS_CAST(obj, + GTK_TYPE_TREE_SORTABLE())) + +proc GTK_IS_TREE_SORTABLE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TREE_SORTABLE()) + +proc GTK_TREE_SORTABLE_GET_IFACE*(obj: pointer): PGtkTreeSortableIface = + result = cast[PGtkTreeSortableIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + GTK_TYPE_TREE_SORTABLE())) + +proc GTK_TYPE_TREE_MODEL_SORT*(): GType = + result = gtk_tree_model_sort_get_type() + +proc GTK_TREE_MODEL_SORT*(obj: pointer): PGtkTreeModelSort = + result = cast[PGtkTreeModelSort](GTK_CHECK_CAST(obj, GTK_TYPE_TREE_MODEL_SORT())) + +proc GTK_TREE_MODEL_SORT_CLASS*(klass: pointer): PGtkTreeModelSortClass = + result = cast[PGtkTreeModelSortClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_TREE_MODEL_SORT())) + +proc GTK_IS_TREE_MODEL_SORT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE_MODEL_SORT()) + +proc GTK_IS_TREE_MODEL_SORT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE_MODEL_SORT()) + +proc GTK_TREE_MODEL_SORT_GET_CLASS*(obj: pointer): PGtkTreeModelSortClass = + result = cast[PGtkTreeModelSortClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_TREE_MODEL_SORT())) + +proc GTK_TYPE_LIST_STORE*(): GType = + result = gtk_list_store_get_type() + +proc GTK_LIST_STORE*(obj: pointer): PGtkListStore = + result = cast[PGtkListStore](GTK_CHECK_CAST(obj, GTK_TYPE_LIST_STORE())) + +proc GTK_LIST_STORE_CLASS*(klass: pointer): PGtkListStoreClass = + result = cast[PGtkListStoreClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_LIST_STORE())) + +proc GTK_IS_LIST_STORE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_LIST_STORE()) + +proc GTK_IS_LIST_STORE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_LIST_STORE()) + +proc GTK_LIST_STORE_GET_CLASS*(obj: pointer): PGtkListStoreClass = + result = cast[PGtkListStoreClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_LIST_STORE())) + +proc columns_dirty*(a: var TGtkListStore): guint = + result = (a.GtkListStoreflag0 and bm_TGtkListStore_columns_dirty) shr + bp_TGtkListStore_columns_dirty + +proc set_columns_dirty*(a: var TGtkListStore, `columns_dirty`: guint) = + a.GtkListStoreflag0 = a.GtkListStoreflag0 or + ((`columns_dirty` shl bp_TGtkListStore_columns_dirty) and + bm_TGtkListStore_columns_dirty) + +proc GTK_TYPE_MENU_BAR*(): GType = + result = gtk_menu_bar_get_type() + +proc GTK_MENU_BAR*(obj: pointer): PGtkMenuBar = + result = cast[PGtkMenuBar](GTK_CHECK_CAST(obj, GTK_TYPE_MENU_BAR())) + +proc GTK_MENU_BAR_CLASS*(klass: pointer): PGtkMenuBarClass = + result = cast[PGtkMenuBarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_MENU_BAR())) + +proc GTK_IS_MENU_BAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_MENU_BAR()) + +proc GTK_IS_MENU_BAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_MENU_BAR()) + +proc GTK_MENU_BAR_GET_CLASS*(obj: pointer): PGtkMenuBarClass = + result = cast[PGtkMenuBarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_MENU_BAR())) + +proc gtk_menu_bar_append*(menu, child: PGtkWidget) = + gtk_menu_shell_append(cast[PGtkMenuShell](menu), child) + +proc gtk_menu_bar_prepend*(menu, child: PGtkWidget) = + gtk_menu_shell_prepend(cast[PGtkMenuShell](menu), child) + +proc gtk_menu_bar_insert*(menu, child: PGtkWidget, pos: gint) = + gtk_menu_shell_insert(cast[PGtkMenuShell](menu), child, pos) + +proc GTK_TYPE_MESSAGE_DIALOG*(): GType = + result = gtk_message_dialog_get_type() + +proc GTK_MESSAGE_DIALOG*(obj: pointer): PGtkMessageDialog = + result = cast[PGtkMessageDialog](GTK_CHECK_CAST(obj, GTK_TYPE_MESSAGE_DIALOG())) + +proc GTK_MESSAGE_DIALOG_CLASS*(klass: pointer): PGtkMessageDialogClass = + result = cast[PGtkMessageDialogClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_MESSAGE_DIALOG())) + +proc GTK_IS_MESSAGE_DIALOG*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_MESSAGE_DIALOG()) + +proc GTK_IS_MESSAGE_DIALOG_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_MESSAGE_DIALOG()) + +proc GTK_MESSAGE_DIALOG_GET_CLASS*(obj: pointer): PGtkMessageDialogClass = + result = cast[PGtkMessageDialogClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_MESSAGE_DIALOG())) + +proc GTK_TYPE_NOTEBOOK*(): GType = + result = gtk_notebook_get_type() + +proc GTK_NOTEBOOK*(obj: pointer): PGtkNotebook = + result = cast[PGtkNotebook](GTK_CHECK_CAST(obj, GTK_TYPE_NOTEBOOK())) + +proc GTK_NOTEBOOK_CLASS*(klass: pointer): PGtkNotebookClass = + result = cast[PGtkNotebookClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_NOTEBOOK())) + +proc GTK_IS_NOTEBOOK*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_NOTEBOOK()) + +proc GTK_IS_NOTEBOOK_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_NOTEBOOK()) + +proc GTK_NOTEBOOK_GET_CLASS*(obj: pointer): PGtkNotebookClass = + result = cast[PGtkNotebookClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_NOTEBOOK())) + +proc show_tabs*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_show_tabs) shr + bp_TGtkNotebook_show_tabs + +proc set_show_tabs*(a: var TGtkNotebook, `show_tabs`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`show_tabs` shl bp_TGtkNotebook_show_tabs) and + bm_TGtkNotebook_show_tabs) + +proc homogeneous*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_homogeneous) shr + bp_TGtkNotebook_homogeneous + +proc set_homogeneous*(a: var TGtkNotebook, `homogeneous`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`homogeneous` shl bp_TGtkNotebook_homogeneous) and + bm_TGtkNotebook_homogeneous) + +proc show_border*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_show_border) shr + bp_TGtkNotebook_show_border + +proc set_show_border*(a: var TGtkNotebook, `show_border`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`show_border` shl bp_TGtkNotebook_show_border) and + bm_TGtkNotebook_show_border) + +proc tab_pos*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_tab_pos) shr bp_TGtkNotebook_tab_pos + +proc set_tab_pos*(a: var TGtkNotebook, `tab_pos`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`tab_pos` shl bp_TGtkNotebook_tab_pos) and bm_TGtkNotebook_tab_pos) + +proc scrollable*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_scrollable) shr + bp_TGtkNotebook_scrollable + +proc set_scrollable*(a: var TGtkNotebook, `scrollable`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`scrollable` shl bp_TGtkNotebook_scrollable) and + bm_TGtkNotebook_scrollable) + +proc in_child*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_in_child) shr + bp_TGtkNotebook_in_child + +proc set_in_child*(a: var TGtkNotebook, `in_child`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`in_child` shl bp_TGtkNotebook_in_child) and bm_TGtkNotebook_in_child) + +proc click_child*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_click_child) shr + bp_TGtkNotebook_click_child + +proc set_click_child*(a: var TGtkNotebook, `click_child`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`click_child` shl bp_TGtkNotebook_click_child) and + bm_TGtkNotebook_click_child) + +proc button*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_button) shr bp_TGtkNotebook_button + +proc set_button*(a: var TGtkNotebook, `button`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`button` shl bp_TGtkNotebook_button) and bm_TGtkNotebook_button) + +proc need_timer*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_need_timer) shr + bp_TGtkNotebook_need_timer + +proc set_need_timer*(a: var TGtkNotebook, `need_timer`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`need_timer` shl bp_TGtkNotebook_need_timer) and + bm_TGtkNotebook_need_timer) + +proc child_has_focus*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_child_has_focus) shr + bp_TGtkNotebook_child_has_focus + +proc set_child_has_focus*(a: var TGtkNotebook, `child_has_focus`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`child_has_focus` shl bp_TGtkNotebook_child_has_focus) and + bm_TGtkNotebook_child_has_focus) + +proc have_visible_child*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_have_visible_child) shr + bp_TGtkNotebook_have_visible_child + +proc set_have_visible_child*(a: var TGtkNotebook, `have_visible_child`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`have_visible_child` shl bp_TGtkNotebook_have_visible_child) and + bm_TGtkNotebook_have_visible_child) + +proc focus_out*(a: var TGtkNotebook): guint = + result = (a.GtkNotebookflag0 and bm_TGtkNotebook_focus_out) shr + bp_TGtkNotebook_focus_out + +proc set_focus_out*(a: var TGtkNotebook, `focus_out`: guint) = + a.GtkNotebookflag0 = a.GtkNotebookflag0 or + ((`focus_out` shl bp_TGtkNotebook_focus_out) and + bm_TGtkNotebook_focus_out) + +proc GTK_TYPE_OLD_EDITABLE*(): GType = + result = gtk_old_editable_get_type() + +proc GTK_OLD_EDITABLE*(obj: pointer): PGtkOldEditable = + result = cast[PGtkOldEditable](GTK_CHECK_CAST(obj, GTK_TYPE_OLD_EDITABLE())) + +proc GTK_OLD_EDITABLE_CLASS*(klass: pointer): PGtkOldEditableClass = + result = cast[PGtkOldEditableClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_OLD_EDITABLE())) + +proc GTK_IS_OLD_EDITABLE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_OLD_EDITABLE()) + +proc GTK_IS_OLD_EDITABLE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_OLD_EDITABLE()) + +proc GTK_OLD_EDITABLE_GET_CLASS*(obj: pointer): PGtkOldEditableClass = + result = cast[PGtkOldEditableClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_OLD_EDITABLE())) + +proc has_selection*(a: var TGtkOldEditable): guint = + result = (a.GtkOldEditableflag0 and bm_TGtkOldEditable_has_selection) shr + bp_TGtkOldEditable_has_selection + +proc set_has_selection*(a: var TGtkOldEditable, `has_selection`: guint) = + a.GtkOldEditableflag0 = a.GtkOldEditableflag0 or + ((`has_selection` shl bp_TGtkOldEditable_has_selection) and + bm_TGtkOldEditable_has_selection) + +proc editable*(a: var TGtkOldEditable): guint = + result = (a.GtkOldEditableflag0 and bm_TGtkOldEditable_editable) shr + bp_TGtkOldEditable_editable + +proc set_editable*(a: var TGtkOldEditable, `editable`: guint) = + a.GtkOldEditableflag0 = a.GtkOldEditableflag0 or + ((`editable` shl bp_TGtkOldEditable_editable) and + bm_TGtkOldEditable_editable) + +proc visible*(a: var TGtkOldEditable): guint = + result = (a.GtkOldEditableflag0 and bm_TGtkOldEditable_visible) shr + bp_TGtkOldEditable_visible + +proc set_visible*(a: var TGtkOldEditable, `visible`: guint) = + a.GtkOldEditableflag0 = a.GtkOldEditableflag0 or + ((`visible` shl bp_TGtkOldEditable_visible) and + bm_TGtkOldEditable_visible) + +proc GTK_TYPE_OPTION_MENU*(): GType = + result = gtk_option_menu_get_type() + +proc GTK_OPTION_MENU*(obj: pointer): PGtkOptionMenu = + result = cast[PGtkOptionMenu](GTK_CHECK_CAST(obj, GTK_TYPE_OPTION_MENU())) + +proc GTK_OPTION_MENU_CLASS*(klass: pointer): PGtkOptionMenuClass = + result = cast[PGtkOptionMenuClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_OPTION_MENU())) + +proc GTK_IS_OPTION_MENU*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_OPTION_MENU()) + +proc GTK_IS_OPTION_MENU_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_OPTION_MENU()) + +proc GTK_OPTION_MENU_GET_CLASS*(obj: pointer): PGtkOptionMenuClass = + result = cast[PGtkOptionMenuClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_OPTION_MENU())) + +proc GTK_TYPE_PIXMAP*(): GType = + result = gtk_pixmap_get_type() + +proc GTK_PIXMAP*(obj: pointer): PGtkPixmap = + result = cast[PGtkPixmap](GTK_CHECK_CAST(obj, GTK_TYPE_PIXMAP())) + +proc GTK_PIXMAP_CLASS*(klass: pointer): PGtkPixmapClass = + result = cast[PGtkPixmapClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_PIXMAP())) + +proc GTK_IS_PIXMAP*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_PIXMAP()) + +proc GTK_IS_PIXMAP_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_PIXMAP()) + +proc GTK_PIXMAP_GET_CLASS*(obj: pointer): PGtkPixmapClass = + result = cast[PGtkPixmapClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_PIXMAP())) + +proc build_insensitive*(a: var TGtkPixmap): guint = + result = (a.GtkPixmapflag0 and bm_TGtkPixmap_build_insensitive) shr + bp_TGtkPixmap_build_insensitive + +proc set_build_insensitive*(a: var TGtkPixmap, `build_insensitive`: guint) = + a.GtkPixmapflag0 = a.GtkPixmapflag0 or + ((`build_insensitive` shl bp_TGtkPixmap_build_insensitive) and + bm_TGtkPixmap_build_insensitive) + +proc GTK_TYPE_PLUG*(): GType = + result = gtk_plug_get_type() + +proc GTK_PLUG*(obj: pointer): PGtkPlug = + result = cast[PGtkPlug](GTK_CHECK_CAST(obj, GTK_TYPE_PLUG())) + +proc GTK_PLUG_CLASS*(klass: pointer): PGtkPlugClass = + result = cast[PGtkPlugClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_PLUG())) + +proc GTK_IS_PLUG*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_PLUG()) + +proc GTK_IS_PLUG_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_PLUG()) + +proc GTK_PLUG_GET_CLASS*(obj: pointer): PGtkPlugClass = + result = cast[PGtkPlugClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_PLUG())) + +proc same_app*(a: var TGtkPlug): guint = + result = (a.GtkPlugflag0 and bm_TGtkPlug_same_app) shr bp_TGtkPlug_same_app + +proc set_same_app*(a: var TGtkPlug, `same_app`: guint) = + a.GtkPlugflag0 = a.GtkPlugflag0 or + ((`same_app` shl bp_TGtkPlug_same_app) and bm_TGtkPlug_same_app) + +proc GTK_TYPE_PREVIEW*(): GType = + result = gtk_preview_get_type() + +proc GTK_PREVIEW*(obj: pointer): PGtkPreview = + result = cast[PGtkPreview](GTK_CHECK_CAST(obj, GTK_TYPE_PREVIEW())) + +proc GTK_PREVIEW_CLASS*(klass: pointer): PGtkPreviewClass = + result = cast[PGtkPreviewClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_PREVIEW())) + +proc GTK_IS_PREVIEW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_PREVIEW()) + +proc GTK_IS_PREVIEW_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_PREVIEW()) + +proc GTK_PREVIEW_GET_CLASS*(obj: pointer): PGtkPreviewClass = + result = cast[PGtkPreviewClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_PREVIEW())) + +proc get_type*(a: var TGtkPreview): guint = + result = (a.GtkPreviewflag0 and bm_TGtkPreview_type) shr bp_TGtkPreview_type + +proc set_type*(a: var TGtkPreview, `type`: guint) = + a.GtkPreviewflag0 = a.GtkPreviewflag0 or + ((`type` shl bp_TGtkPreview_type) and bm_TGtkPreview_type) + +proc get_expand*(a: var TGtkPreview): guint = + result = (a.GtkPreviewflag0 and bm_TGtkPreview_expand) shr bp_TGtkPreview_expand + +proc set_expand*(a: var TGtkPreview, `expand`: guint) = + a.GtkPreviewflag0 = a.GtkPreviewflag0 or + ((`expand` shl bp_TGtkPreview_expand) and bm_TGtkPreview_expand) + +proc gtk_progress_get_type(): GType {.importc, cdecl, dynlib: gtklib.} + +proc GTK_TYPE_PROGRESS*(): GType = + result = gtk_progress_get_type() + +proc GTK_PROGRESS*(obj: pointer): PGtkProgress = + result = cast[PGtkProgress](GTK_CHECK_CAST(obj, GTK_TYPE_PROGRESS())) + +proc GTK_PROGRESS_CLASS*(klass: pointer): PGtkProgressClass = + result = cast[PGtkProgressClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_PROGRESS())) + +proc GTK_IS_PROGRESS*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_PROGRESS()) + +proc GTK_IS_PROGRESS_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_PROGRESS()) + +proc GTK_PROGRESS_GET_CLASS*(obj: pointer): PGtkProgressClass = + result = cast[PGtkProgressClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_PROGRESS())) + +proc show_text*(a: var TGtkProgress): guint = + result = (a.GtkProgressflag0 and bm_TGtkProgress_show_text) shr + bp_TGtkProgress_show_text + +proc set_show_text*(a: var TGtkProgress, `show_text`: guint) = + a.GtkProgressflag0 = a.GtkProgressflag0 or + ((`show_text` shl bp_TGtkProgress_show_text) and + bm_TGtkProgress_show_text) + +proc activity_mode*(a: var TGtkProgress): guint = + result = (a.GtkProgressflag0 and bm_TGtkProgress_activity_mode) shr + bp_TGtkProgress_activity_mode + +proc set_activity_mode*(a: var TGtkProgress, `activity_mode`: guint) = + a.GtkProgressflag0 = a.GtkProgressflag0 or + ((`activity_mode` shl bp_TGtkProgress_activity_mode) and + bm_TGtkProgress_activity_mode) + +proc use_text_format*(a: var TGtkProgress): guint = + result = (a.GtkProgressflag0 and bm_TGtkProgress_use_text_format) shr + bp_TGtkProgress_use_text_format + +proc set_use_text_format*(a: var TGtkProgress, `use_text_format`: guint) = + a.GtkProgressflag0 = a.GtkProgressflag0 or + ((`use_text_format` shl bp_TGtkProgress_use_text_format) and + bm_TGtkProgress_use_text_format) + +proc GTK_TYPE_PROGRESS_BAR*(): GType = + result = gtk_progress_bar_get_type() + +proc GTK_PROGRESS_BAR*(obj: pointer): PGtkProgressBar = + result = cast[PGtkProgressBar](GTK_CHECK_CAST(obj, GTK_TYPE_PROGRESS_BAR())) + +proc GTK_PROGRESS_BAR_CLASS*(klass: pointer): PGtkProgressBarClass = + result = cast[PGtkProgressBarClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_PROGRESS_BAR())) + +proc GTK_IS_PROGRESS_BAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_PROGRESS_BAR()) + +proc GTK_IS_PROGRESS_BAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_PROGRESS_BAR()) + +proc GTK_PROGRESS_BAR_GET_CLASS*(obj: pointer): PGtkProgressBarClass = + result = cast[PGtkProgressBarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_PROGRESS_BAR())) + +proc activity_dir*(a: var TGtkProgressBar): guint = + result = (a.GtkProgressBarflag0 and bm_TGtkProgressBar_activity_dir) shr + bp_TGtkProgressBar_activity_dir + +proc set_activity_dir*(a: var TGtkProgressBar, `activity_dir`: guint) = + a.GtkProgressBarflag0 = a.GtkProgressBarflag0 or + ((`activity_dir` shl bp_TGtkProgressBar_activity_dir) and + bm_TGtkProgressBar_activity_dir) + +proc GTK_TYPE_RADIO_BUTTON*(): GType = + result = gtk_radio_button_get_type() + +proc GTK_RADIO_BUTTON*(obj: pointer): PGtkRadioButton = + result = cast[PGtkRadioButton](GTK_CHECK_CAST(obj, GTK_TYPE_RADIO_BUTTON())) + +proc GTK_RADIO_BUTTON_CLASS*(klass: pointer): PGtkRadioButtonClass = + result = cast[PGtkRadioButtonClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_RADIO_BUTTON())) + +proc GTK_IS_RADIO_BUTTON*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_RADIO_BUTTON()) + +proc GTK_IS_RADIO_BUTTON_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_RADIO_BUTTON()) + +proc GTK_RADIO_BUTTON_GET_CLASS*(obj: pointer): PGtkRadioButtonClass = + result = cast[PGtkRadioButtonClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_RADIO_BUTTON())) + +proc GTK_TYPE_RADIO_MENU_ITEM*(): GType = + result = gtk_radio_menu_item_get_type() + +proc GTK_RADIO_MENU_ITEM*(obj: pointer): PGtkRadioMenuItem = + result = cast[PGtkRadioMenuItem](GTK_CHECK_CAST(obj, GTK_TYPE_RADIO_MENU_ITEM())) + +proc GTK_RADIO_MENU_ITEM_CLASS*(klass: pointer): PGtkRadioMenuItemClass = + result = cast[PGtkRadioMenuItemClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_RADIO_MENU_ITEM())) + +proc GTK_IS_RADIO_MENU_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_RADIO_MENU_ITEM()) + +proc GTK_IS_RADIO_MENU_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_RADIO_MENU_ITEM()) + +proc GTK_RADIO_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkRadioMenuItemClass = + result = cast[PGtkRadioMenuItemClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_RADIO_MENU_ITEM())) + +proc GTK_TYPE_SCROLLED_WINDOW*(): GType = + result = gtk_scrolled_window_get_type() + +proc GTK_SCROLLED_WINDOW*(obj: pointer): PGtkScrolledWindow = + result = cast[PGtkScrolledWindow](GTK_CHECK_CAST(obj, GTK_TYPE_SCROLLED_WINDOW())) + +proc GTK_SCROLLED_WINDOW_CLASS*(klass: pointer): PGtkScrolledWindowClass = + result = cast[PGtkScrolledWindowClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_SCROLLED_WINDOW())) + +proc GTK_IS_SCROLLED_WINDOW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SCROLLED_WINDOW()) + +proc GTK_IS_SCROLLED_WINDOW_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SCROLLED_WINDOW()) + +proc GTK_SCROLLED_WINDOW_GET_CLASS*(obj: pointer): PGtkScrolledWindowClass = + result = cast[PGtkScrolledWindowClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_SCROLLED_WINDOW())) + +proc hscrollbar_policy*(a: var TGtkScrolledWindow): guint = + result = (a.GtkScrolledWindowflag0 and bm_TGtkScrolledWindow_hscrollbar_policy) shr + bp_TGtkScrolledWindow_hscrollbar_policy + +proc set_hscrollbar_policy*(a: var TGtkScrolledWindow, + `hscrollbar_policy`: guint) = + a.GtkScrolledWindowflag0 = a.GtkScrolledWindowflag0 or + ((`hscrollbar_policy` shl bp_TGtkScrolledWindow_hscrollbar_policy) and + bm_TGtkScrolledWindow_hscrollbar_policy) + +proc vscrollbar_policy*(a: var TGtkScrolledWindow): guint = + result = (a.GtkScrolledWindowflag0 and bm_TGtkScrolledWindow_vscrollbar_policy) shr + bp_TGtkScrolledWindow_vscrollbar_policy + +proc set_vscrollbar_policy*(a: var TGtkScrolledWindow, + `vscrollbar_policy`: guint) = + a.GtkScrolledWindowflag0 = a.GtkScrolledWindowflag0 or + ((`vscrollbar_policy` shl bp_TGtkScrolledWindow_vscrollbar_policy) and + bm_TGtkScrolledWindow_vscrollbar_policy) + +proc hscrollbar_visible*(a: var TGtkScrolledWindow): guint = + result = (a.GtkScrolledWindowflag0 and bm_TGtkScrolledWindow_hscrollbar_visible) shr + bp_TGtkScrolledWindow_hscrollbar_visible + +proc set_hscrollbar_visible*(a: var TGtkScrolledWindow, + `hscrollbar_visible`: guint) = + a.GtkScrolledWindowflag0 = a.GtkScrolledWindowflag0 or + ((`hscrollbar_visible` shl bp_TGtkScrolledWindow_hscrollbar_visible) and + bm_TGtkScrolledWindow_hscrollbar_visible) + +proc vscrollbar_visible*(a: var TGtkScrolledWindow): guint = + result = (a.GtkScrolledWindowflag0 and bm_TGtkScrolledWindow_vscrollbar_visible) shr + bp_TGtkScrolledWindow_vscrollbar_visible + +proc set_vscrollbar_visible*(a: var TGtkScrolledWindow, + `vscrollbar_visible`: guint) = + a.GtkScrolledWindowflag0 = a.GtkScrolledWindowflag0 or + ((`vscrollbar_visible` shl bp_TGtkScrolledWindow_vscrollbar_visible) and + bm_TGtkScrolledWindow_vscrollbar_visible) + +proc window_placement*(a: var TGtkScrolledWindow): guint = + result = (a.GtkScrolledWindowflag0 and bm_TGtkScrolledWindow_window_placement) shr + bp_TGtkScrolledWindow_window_placement + +proc set_window_placement*(a: var TGtkScrolledWindow, `window_placement`: guint) = + a.GtkScrolledWindowflag0 = a.GtkScrolledWindowflag0 or + ((`window_placement` shl bp_TGtkScrolledWindow_window_placement) and + bm_TGtkScrolledWindow_window_placement) + +proc focus_out*(a: var TGtkScrolledWindow): guint = + result = (a.GtkScrolledWindowflag0 and bm_TGtkScrolledWindow_focus_out) shr + bp_TGtkScrolledWindow_focus_out + +proc set_focus_out*(a: var TGtkScrolledWindow, `focus_out`: guint) = + a.GtkScrolledWindowflag0 = a.GtkScrolledWindowflag0 or + ((`focus_out` shl bp_TGtkScrolledWindow_focus_out) and + bm_TGtkScrolledWindow_focus_out) + +proc GTK_TYPE_SELECTION_DATA*(): GType = + result = gtk_selection_data_get_type() + +proc GTK_TYPE_SEPARATOR_MENU_ITEM*(): GType = + result = gtk_separator_menu_item_get_type() + +proc GTK_SEPARATOR_MENU_ITEM*(obj: pointer): PGtkSeparatorMenuItem = + result = cast[PGtkSeparatorMenuItem](GTK_CHECK_CAST(obj, + GTK_TYPE_SEPARATOR_MENU_ITEM())) + +proc GTK_SEPARATOR_MENU_ITEM_CLASS*(klass: pointer): PGtkSeparatorMenuItemClass = + result = cast[PGtkSeparatorMenuItemClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_SEPARATOR_MENU_ITEM())) + +proc GTK_IS_SEPARATOR_MENU_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SEPARATOR_MENU_ITEM()) + +proc GTK_IS_SEPARATOR_MENU_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SEPARATOR_MENU_ITEM()) + +proc GTK_SEPARATOR_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkSeparatorMenuItemClass = + result = cast[PGtkSeparatorMenuItemClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_SEPARATOR_MENU_ITEM())) + +proc gtk_signal_lookup*(name: cstring, object_type: GType): guint = + result = g_signal_lookup(name, object_type) + +proc gtk_signal_name*(signal_id: guint): cstring = + result = g_signal_name(signal_id) + +proc gtk_signal_emit_stop*(instance: gpointer, signal_id: guint, detail: TGQuark) = + if detail != 0: g_signal_stop_emission(instance, signal_id, 0) + +proc gtk_signal_connect_full*(anObject: PGtkObject, name: cstring, + func_: TGtkSignalFunc, unknown1: pointer, + func_data: gpointer, unknown2: pointer, + unknown3, unknown4: int): gulong {. + importc, cdecl, dynlib: gtklib.} + +proc gtk_signal_compat_matched*(anObject: PGtkObject, func_: TGtkSignalFunc, + data: gpointer, m: TGSignalMatchType, + u: int) {.importc, cdecl, dynlib: gtklib.} + +proc gtk_signal_connect*(anObject: PGtkObject, name: cstring, + func_: TGtkSignalFunc, func_data: gpointer): gulong = + result = gtk_signal_connect_full(anObject, name, func_, nil, func_data, nil, + 0, 0) + +proc gtk_signal_connect_after*(anObject: PGtkObject, name: cstring, + func_: TGtkSignalFunc, func_data: gpointer): gulong = + result = gtk_signal_connect_full(anObject, name, func_, nil, func_data, nil, + 0, 1) + +proc gtk_signal_connect_object*(anObject: PGtkObject, name: cstring, + func_: TGtkSignalFunc, slot_object: gpointer): gulong = + result = gtk_signal_connect_full(anObject, name, func_, nil, slot_object, nil, + 1, 0) + +proc gtk_signal_connect_object_after*(anObject: PGtkObject, name: cstring, + func_: TGtkSignalFunc, + slot_object: gpointer): gulong = + result = gtk_signal_connect_full(anObject, name, func_, nil, slot_object, nil, + 1, 1) + +proc gtk_signal_disconnect*(anObject: gpointer, handler_id: gulong) = + g_signal_handler_disconnect(anObject, handler_id) + +proc gtk_signal_handler_block*(anObject: gpointer, handler_id: gulong) = + g_signal_handler_block(anObject, handler_id) + +proc gtk_signal_handler_unblock*(anObject: gpointer, handler_id: gulong) = + g_signal_handler_unblock(anObject, handler_id) + +proc gtk_signal_disconnect_by_data*(anObject: PGtkObject, data: gpointer) = + gtk_signal_compat_matched(anObject, nil, data, G_SIGNAL_MATCH_DATA, 0) + +proc gtk_signal_disconnect_by_func*(anObject: PGtkObject, func_: TGtkSignalFunc, + data: gpointer) = + gtk_signal_compat_matched(anObject, func_, data, cast[TGSignalMatchType]( + G_SIGNAL_MATCH_FUNC or G_SIGNAL_MATCH_DATA), 0) + +proc gtk_signal_handler_block_by_func*(anObject: PGtkObject, + func_: TGtkSignalFunc, data: gpointer) = + gtk_signal_compat_matched(anObject, func_, data, TGSignalMatchType( + G_SIGNAL_MATCH_FUNC or G_SIGNAL_MATCH_DATA), 0) + +proc gtk_signal_handler_block_by_data*(anObject: PGtkObject, data: gpointer) = + gtk_signal_compat_matched(anObject, nil, data, G_SIGNAL_MATCH_DATA, 1) + +proc gtk_signal_handler_unblock_by_func*(anObject: PGtkObject, + func_: TGtkSignalFunc, data: gpointer) = + gtk_signal_compat_matched(anObject, func_, data, cast[TGSignalMatchType]( + G_SIGNAL_MATCH_FUNC or G_SIGNAL_MATCH_DATA), 0) + +proc gtk_signal_handler_unblock_by_data*(anObject: PGtkObject, data: gpointer) = + gtk_signal_compat_matched(anObject, nil, data, G_SIGNAL_MATCH_DATA, 2) + +proc gtk_signal_handler_pending*(anObject: PGtkObject, signal_id: guint, + may_be_blocked: gboolean): gboolean = + Result = g_signal_has_handler_pending(anObject, signal_id, 0, may_be_blocked) + +proc gtk_signal_handler_pending_by_func*(anObject: PGtkObject, signal_id: guint, + may_be_blocked: gboolean, func_: TGtkSignalFunc, data: gpointer): gboolean = + var t: TGSignalMatchType + t = cast[TGSignalMatchType](G_SIGNAL_MATCH_ID or G_SIGNAL_MATCH_FUNC or + G_SIGNAL_MATCH_DATA) + if not may_be_blocked: + t = t or cast[int](G_SIGNAL_MATCH_UNBLOCKED) + Result = g_signal_handler_find(anObject, t, signal_id, 0, nil, addr(func_), + data) != 0 + +proc GTK_TYPE_SIZE_GROUP*(): GType = + result = gtk_size_group_get_type() + +proc GTK_SIZE_GROUP*(obj: pointer): PGtkSizeGroup = + result = cast[PGtkSizeGroup](GTK_CHECK_CAST(obj, GTK_TYPE_SIZE_GROUP())) + +proc GTK_SIZE_GROUP_CLASS*(klass: pointer): PGtkSizeGroupClass = + result = cast[PGtkSizeGroupClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SIZE_GROUP())) + +proc GTK_IS_SIZE_GROUP*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SIZE_GROUP()) + +proc GTK_IS_SIZE_GROUP_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SIZE_GROUP()) + +proc GTK_SIZE_GROUP_GET_CLASS*(obj: pointer): PGtkSizeGroupClass = + result = cast[PGtkSizeGroupClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SIZE_GROUP())) + +proc have_width*(a: var TGtkSizeGroup): guint = + result = (a.GtkSizeGroupflag0 and bm_TGtkSizeGroup_have_width) shr + bp_TGtkSizeGroup_have_width + +proc set_have_width*(a: var TGtkSizeGroup, `have_width`: guint) = + a.GtkSizeGroupflag0 = a.GtkSizeGroupflag0 or + ((`have_width` shl bp_TGtkSizeGroup_have_width) and + bm_TGtkSizeGroup_have_width) + +proc have_height*(a: var TGtkSizeGroup): guint = + result = (a.GtkSizeGroupflag0 and bm_TGtkSizeGroup_have_height) shr + bp_TGtkSizeGroup_have_height + +proc set_have_height*(a: var TGtkSizeGroup, `have_height`: guint) = + a.GtkSizeGroupflag0 = a.GtkSizeGroupflag0 or + ((`have_height` shl bp_TGtkSizeGroup_have_height) and + bm_TGtkSizeGroup_have_height) + +proc GTK_TYPE_SOCKET*(): GType = + result = gtk_socket_get_type() + +proc GTK_SOCKET*(obj: pointer): PGtkSocket = + result = cast[PGtkSocket](GTK_CHECK_CAST(obj, GTK_TYPE_SOCKET())) + +proc GTK_SOCKET_CLASS*(klass: pointer): PGtkSocketClass = + result = cast[PGtkSocketClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SOCKET())) + +proc GTK_IS_SOCKET*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SOCKET()) + +proc GTK_IS_SOCKET_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SOCKET()) + +proc GTK_SOCKET_GET_CLASS*(obj: pointer): PGtkSocketClass = + result = cast[PGtkSocketClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SOCKET())) + +proc same_app*(a: var TGtkSocket): guint = + result = (a.GtkSocketflag0 and bm_TGtkSocket_same_app) shr bp_TGtkSocket_same_app + +proc set_same_app*(a: var TGtkSocket, `same_app`: guint) = + a.GtkSocketflag0 = a.GtkSocketflag0 or + ((`same_app` shl bp_TGtkSocket_same_app) and bm_TGtkSocket_same_app) + +proc focus_in*(a: var TGtkSocket): guint = + result = (a.GtkSocketflag0 and bm_TGtkSocket_focus_in) shr bp_TGtkSocket_focus_in + +proc set_focus_in*(a: var TGtkSocket, `focus_in`: guint) = + a.GtkSocketflag0 = a.GtkSocketflag0 or + ((`focus_in` shl bp_TGtkSocket_focus_in) and bm_TGtkSocket_focus_in) + +proc have_size*(a: var TGtkSocket): guint = + result = (a.GtkSocketflag0 and bm_TGtkSocket_have_size) shr bp_TGtkSocket_have_size + +proc set_have_size*(a: var TGtkSocket, `have_size`: guint) = + a.GtkSocketflag0 = a.GtkSocketflag0 or + ((`have_size` shl bp_TGtkSocket_have_size) and bm_TGtkSocket_have_size) + +proc need_map*(a: var TGtkSocket): guint = + result = (a.GtkSocketflag0 and bm_TGtkSocket_need_map) shr bp_TGtkSocket_need_map + +proc set_need_map*(a: var TGtkSocket, `need_map`: guint) = + a.GtkSocketflag0 = a.GtkSocketflag0 or + ((`need_map` shl bp_TGtkSocket_need_map) and bm_TGtkSocket_need_map) + +proc is_mapped*(a: var TGtkSocket): guint = + result = (a.GtkSocketflag0 and bm_TGtkSocket_is_mapped) shr bp_TGtkSocket_is_mapped + +proc set_is_mapped*(a: var TGtkSocket, `is_mapped`: guint) = + a.GtkSocketflag0 = a.GtkSocketflag0 or + ((`is_mapped` shl bp_TGtkSocket_is_mapped) and bm_TGtkSocket_is_mapped) + +proc GTK_TYPE_SPIN_BUTTON*(): GType = + result = gtk_spin_button_get_type() + +proc GTK_SPIN_BUTTON*(obj: pointer): PGtkSpinButton = + result = cast[PGtkSpinButton](GTK_CHECK_CAST(obj, GTK_TYPE_SPIN_BUTTON())) + +proc GTK_SPIN_BUTTON_CLASS*(klass: pointer): PGtkSpinButtonClass = + result = cast[PGtkSpinButtonClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_SPIN_BUTTON())) + +proc GTK_IS_SPIN_BUTTON*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_SPIN_BUTTON()) + +proc GTK_IS_SPIN_BUTTON_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_SPIN_BUTTON()) + +proc GTK_SPIN_BUTTON_GET_CLASS*(obj: pointer): PGtkSpinButtonClass = + result = cast[PGtkSpinButtonClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_SPIN_BUTTON())) + +proc in_child*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_in_child) shr + bp_TGtkSpinButton_in_child + +proc set_in_child*(a: var TGtkSpinButton, `in_child`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`in_child` shl bp_TGtkSpinButton_in_child) and + bm_TGtkSpinButton_in_child) + +proc click_child*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_click_child) shr + bp_TGtkSpinButton_click_child + +proc set_click_child*(a: var TGtkSpinButton, `click_child`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`click_child` shl bp_TGtkSpinButton_click_child) and + bm_TGtkSpinButton_click_child) + +proc button*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_button) shr + bp_TGtkSpinButton_button + +proc set_button*(a: var TGtkSpinButton, `button`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`button` shl bp_TGtkSpinButton_button) and bm_TGtkSpinButton_button) + +proc need_timer*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_need_timer) shr + bp_TGtkSpinButton_need_timer + +proc set_need_timer*(a: var TGtkSpinButton, `need_timer`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`need_timer` shl bp_TGtkSpinButton_need_timer) and + bm_TGtkSpinButton_need_timer) + +proc timer_calls*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_timer_calls) shr + bp_TGtkSpinButton_timer_calls + +proc set_timer_calls*(a: var TGtkSpinButton, `timer_calls`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`timer_calls` shl bp_TGtkSpinButton_timer_calls) and + bm_TGtkSpinButton_timer_calls) + +proc digits*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_digits) shr + bp_TGtkSpinButton_digits + +proc set_digits*(a: var TGtkSpinButton, `digits`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`digits` shl bp_TGtkSpinButton_digits) and bm_TGtkSpinButton_digits) + +proc numeric*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_numeric) shr + bp_TGtkSpinButton_numeric + +proc set_numeric*(a: var TGtkSpinButton, `numeric`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`numeric` shl bp_TGtkSpinButton_numeric) and + bm_TGtkSpinButton_numeric) + +proc wrap*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_wrap) shr bp_TGtkSpinButton_wrap + +proc set_wrap*(a: var TGtkSpinButton, `wrap`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`wrap` shl bp_TGtkSpinButton_wrap) and bm_TGtkSpinButton_wrap) + +proc snap_to_ticks*(a: var TGtkSpinButton): guint = + result = (a.GtkSpinButtonflag0 and bm_TGtkSpinButton_snap_to_ticks) shr + bp_TGtkSpinButton_snap_to_ticks + +proc set_snap_to_ticks*(a: var TGtkSpinButton, `snap_to_ticks`: guint) = + a.GtkSpinButtonflag0 = a.GtkSpinButtonflag0 or + ((`snap_to_ticks` shl bp_TGtkSpinButton_snap_to_ticks) and + bm_TGtkSpinButton_snap_to_ticks) + +proc GTK_TYPE_STATUSBAR*(): GType = + result = gtk_statusbar_get_type() + +proc GTK_STATUSBAR*(obj: pointer): PGtkStatusbar = + result = cast[PGtkStatusbar](GTK_CHECK_CAST(obj, GTK_TYPE_STATUSBAR())) + +proc GTK_STATUSBAR_CLASS*(klass: pointer): PGtkStatusbarClass = + result = cast[PGtkStatusbarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_STATUSBAR())) + +proc GTK_IS_STATUSBAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_STATUSBAR()) + +proc GTK_IS_STATUSBAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_STATUSBAR()) + +proc GTK_STATUSBAR_GET_CLASS*(obj: pointer): PGtkStatusbarClass = + result = cast[PGtkStatusbarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_STATUSBAR())) + +proc has_resize_grip*(a: var TGtkStatusbar): guint = + result = (a.GtkStatusbarflag0 and bm_TGtkStatusbar_has_resize_grip) shr + bp_TGtkStatusbar_has_resize_grip + +proc set_has_resize_grip*(a: var TGtkStatusbar, `has_resize_grip`: guint) = + a.GtkStatusbarflag0 = a.GtkStatusbarflag0 or + ((`has_resize_grip` shl bp_TGtkStatusbar_has_resize_grip) and + bm_TGtkStatusbar_has_resize_grip) + +proc GTK_TYPE_TABLE*(): GType = + result = gtk_table_get_type() + +proc GTK_TABLE*(obj: pointer): PGtkTable = + result = cast[PGtkTable](GTK_CHECK_CAST(obj, GTK_TYPE_TABLE())) + +proc GTK_TABLE_CLASS*(klass: pointer): PGtkTableClass = + result = cast[PGtkTableClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TABLE())) + +proc GTK_IS_TABLE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TABLE()) + +proc GTK_IS_TABLE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TABLE()) + +proc GTK_TABLE_GET_CLASS*(obj: pointer): PGtkTableClass = + result = cast[PGtkTableClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TABLE())) + +proc homogeneous*(a: var TGtkTable): guint = + result = (a.GtkTableflag0 and bm_TGtkTable_homogeneous) shr + bp_TGtkTable_homogeneous + +proc set_homogeneous*(a: var TGtkTable, `homogeneous`: guint) = + a.GtkTableflag0 = a.GtkTableflag0 or + ((`homogeneous` shl bp_TGtkTable_homogeneous) and + bm_TGtkTable_homogeneous) + +proc xexpand*(a: var TGtkTableChild): guint = + result = (a.GtkTableChildflag0 and bm_TGtkTableChild_xexpand) shr + bp_TGtkTableChild_xexpand + +proc set_xexpand*(a: var TGtkTableChild, `xexpand`: guint) = + a.GtkTableChildflag0 = a.GtkTableChildflag0 or + ((`xexpand` shl bp_TGtkTableChild_xexpand) and + bm_TGtkTableChild_xexpand) + +proc yexpand*(a: var TGtkTableChild): guint = + result = (a.GtkTableChildflag0 and bm_TGtkTableChild_yexpand) shr + bp_TGtkTableChild_yexpand + +proc set_yexpand*(a: var TGtkTableChild, `yexpand`: guint) = + a.GtkTableChildflag0 = a.GtkTableChildflag0 or + ((`yexpand` shl bp_TGtkTableChild_yexpand) and + bm_TGtkTableChild_yexpand) + +proc xshrink*(a: var TGtkTableChild): guint = + result = (a.GtkTableChildflag0 and bm_TGtkTableChild_xshrink) shr + bp_TGtkTableChild_xshrink + +proc set_xshrink*(a: var TGtkTableChild, `xshrink`: guint) = + a.GtkTableChildflag0 = a.GtkTableChildflag0 or + ((`xshrink` shl bp_TGtkTableChild_xshrink) and + bm_TGtkTableChild_xshrink) + +proc yshrink*(a: var TGtkTableChild): guint = + result = (a.GtkTableChildflag0 and bm_TGtkTableChild_yshrink) shr + bp_TGtkTableChild_yshrink + +proc set_yshrink*(a: var TGtkTableChild, `yshrink`: guint) = + a.GtkTableChildflag0 = a.GtkTableChildflag0 or + ((`yshrink` shl bp_TGtkTableChild_yshrink) and + bm_TGtkTableChild_yshrink) + +proc xfill*(a: var TGtkTableChild): guint = + result = (a.GtkTableChildflag0 and bm_TGtkTableChild_xfill) shr bp_TGtkTableChild_xfill + +proc set_xfill*(a: var TGtkTableChild, `xfill`: guint) = + a.GtkTableChildflag0 = a.GtkTableChildflag0 or + ((`xfill` shl bp_TGtkTableChild_xfill) and bm_TGtkTableChild_xfill) + +proc yfill*(a: var TGtkTableChild): guint = + result = (a.GtkTableChildflag0 and bm_TGtkTableChild_yfill) shr bp_TGtkTableChild_yfill + +proc set_yfill*(a: var TGtkTableChild, `yfill`: guint) = + a.GtkTableChildflag0 = a.GtkTableChildflag0 or + ((`yfill` shl bp_TGtkTableChild_yfill) and bm_TGtkTableChild_yfill) + +proc need_expand*(a: var TGtkTableRowCol): guint = + result = (a.flag0 and bm_TGtkTableRowCol_need_expand) shr + bp_TGtkTableRowCol_need_expand + +proc set_need_expand*(a: var TGtkTableRowCol, `need_expand`: guint) = + a.flag0 = a.flag0 or + ((`need_expand` shl bp_TGtkTableRowCol_need_expand) and + bm_TGtkTableRowCol_need_expand) + +proc need_shrink*(a: var TGtkTableRowCol): guint = + result = (a.flag0 and bm_TGtkTableRowCol_need_shrink) shr + bp_TGtkTableRowCol_need_shrink + +proc set_need_shrink*(a: var TGtkTableRowCol, `need_shrink`: guint) = + a.flag0 = a.flag0 or + ((`need_shrink` shl bp_TGtkTableRowCol_need_shrink) and + bm_TGtkTableRowCol_need_shrink) + +proc expand*(a: var TGtkTableRowCol): guint = + result = (a.flag0 and bm_TGtkTableRowCol_expand) shr + bp_TGtkTableRowCol_expand + +proc set_expand*(a: var TGtkTableRowCol, `expand`: guint) = + a.flag0 = a.flag0 or + ((`expand` shl bp_TGtkTableRowCol_expand) and bm_TGtkTableRowCol_expand) + +proc shrink*(a: var TGtkTableRowCol): guint = + result = (a.flag0 and bm_TGtkTableRowCol_shrink) shr + bp_TGtkTableRowCol_shrink + +proc set_shrink*(a: var TGtkTableRowCol, `shrink`: guint) = + a.flag0 = a.flag0 or + ((`shrink` shl bp_TGtkTableRowCol_shrink) and bm_TGtkTableRowCol_shrink) + +proc empty*(a: var TGtkTableRowCol): guint = + result = (a.flag0 and bm_TGtkTableRowCol_empty) shr + bp_TGtkTableRowCol_empty + +proc set_empty*(a: var TGtkTableRowCol, `empty`: guint) = + a.flag0 = a.flag0 or + ((`empty` shl bp_TGtkTableRowCol_empty) and bm_TGtkTableRowCol_empty) + +proc GTK_TYPE_TEAROFF_MENU_ITEM*(): GType = + result = gtk_tearoff_menu_item_get_type() + +proc GTK_TEAROFF_MENU_ITEM*(obj: pointer): PGtkTearoffMenuItem = + result = cast[PGtkTearoffMenuItem](GTK_CHECK_CAST(obj, GTK_TYPE_TEAROFF_MENU_ITEM())) + +proc GTK_TEAROFF_MENU_ITEM_CLASS*(klass: pointer): PGtkTearoffMenuItemClass = + result = cast[PGtkTearoffMenuItemClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_TEAROFF_MENU_ITEM())) + +proc GTK_IS_TEAROFF_MENU_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TEAROFF_MENU_ITEM()) + +proc GTK_IS_TEAROFF_MENU_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEAROFF_MENU_ITEM()) + +proc GTK_TEAROFF_MENU_ITEM_GET_CLASS*(obj: pointer): PGtkTearoffMenuItemClass = + result = cast[PGtkTearoffMenuItemClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TEAROFF_MENU_ITEM())) + +proc torn_off*(a: var TGtkTearoffMenuItem): guint = + result = (a.GtkTearoffMenuItemflag0 and bm_TGtkTearoffMenuItem_torn_off) shr + bp_TGtkTearoffMenuItem_torn_off + +proc set_torn_off*(a: var TGtkTearoffMenuItem, `torn_off`: guint) = + a.GtkTearoffMenuItemflag0 = a.GtkTearoffMenuItemflag0 or + ((`torn_off` shl bp_TGtkTearoffMenuItem_torn_off) and + bm_TGtkTearoffMenuItem_torn_off) + +proc GTK_TYPE_TEXT*(): GType = + result = gtk_text_get_type() + +proc GTK_TEXT*(obj: pointer): PGtkText = + result = cast[PGtkText](GTK_CHECK_CAST(obj, GTK_TYPE_TEXT())) + +proc GTK_TEXT_CLASS*(klass: pointer): PGtkTextClass = + result = cast[PGtkTextClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TEXT())) + +proc GTK_IS_TEXT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TEXT()) + +proc GTK_IS_TEXT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT()) + +proc GTK_TEXT_GET_CLASS*(obj: pointer): PGtkTextClass = + result = cast[PGtkTextClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TEXT())) + +proc line_wrap*(a: PGtkText): guint = + result = (a.GtkTextflag0 and bm_TGtkText_line_wrap) shr bp_TGtkText_line_wrap + +proc set_line_wrap*(a: PGtkText, `line_wrap`: guint) = + a.GtkTextflag0 = a.GtkTextflag0 or + ((`line_wrap` shl bp_TGtkText_line_wrap) and bm_TGtkText_line_wrap) + +proc word_wrap*(a: PGtkText): guint = + result = (a . GtkTextflag0 and bm_TGtkText_word_wrap) shr bp_TGtkText_word_wrap + +proc set_word_wrap*(a: PGtkText, `word_wrap`: guint) = + a.GtkTextflag0 = a.GtkTextflag0 or + ((`word_wrap` shl bp_TGtkText_word_wrap) and bm_TGtkText_word_wrap) + +proc use_wchar*(a: PGtkText): gboolean = + result = ((a.GtkTextflag0 and bm_TGtkText_use_wchar) shr bp_TGtkText_use_wchar) > + 0 + +proc set_use_wchar*(a: PGtkText, `use_wchar`: gboolean) = + if `use_wchar`: + a . GtkTextflag0 = a . GtkTextflag0 or bm_TGtkText_use_wchar + else: + a . GtkTextflag0 = a . GtkTextflag0 and not bm_TGtkText_use_wchar + +proc GTK_TEXT_INDEX_WCHAR*(t: PGtkText, index: guint): guint32 = + nil + +proc GTK_TEXT_INDEX_UCHAR*(t: PGtkText, index: guint): GUChar = + nil + +proc GTK_TYPE_TEXT_ITER*(): GType = + result = gtk_text_iter_get_type() + +proc GTK_TYPE_TEXT_TAG*(): GType = + result = gtk_text_tag_get_type() + +proc GTK_TEXT_TAG*(obj: pointer): PGtkTextTag = + result = cast[PGtkTextTag](G_TYPE_CHECK_INSTANCE_CAST(obj, GTK_TYPE_TEXT_TAG())) + +proc GTK_TEXT_TAG_CLASS*(klass: pointer): PGtkTextTagClass = + result = cast[PGtkTextTagClass](G_TYPE_CHECK_CLASS_CAST(klass, GTK_TYPE_TEXT_TAG())) + +proc GTK_IS_TEXT_TAG*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TEXT_TAG()) + +proc GTK_IS_TEXT_TAG_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_TAG()) + +proc GTK_TEXT_TAG_GET_CLASS*(obj: pointer): PGtkTextTagClass = + result = cast[PGtkTextTagClass](G_TYPE_INSTANCE_GET_CLASS(obj, GTK_TYPE_TEXT_TAG())) + +proc GTK_TYPE_TEXT_ATTRIBUTES*(): GType = + result = gtk_text_attributes_get_type() + +proc bg_color_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_bg_color_set) shr + bp_TGtkTextTag_bg_color_set + +proc set_bg_color_set*(a: var TGtkTextTag, `bg_color_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`bg_color_set` shl bp_TGtkTextTag_bg_color_set) and + bm_TGtkTextTag_bg_color_set) + +proc bg_stipple_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_bg_stipple_set) shr + bp_TGtkTextTag_bg_stipple_set + +proc set_bg_stipple_set*(a: var TGtkTextTag, `bg_stipple_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`bg_stipple_set` shl bp_TGtkTextTag_bg_stipple_set) and + bm_TGtkTextTag_bg_stipple_set) + +proc fg_color_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_fg_color_set) shr + bp_TGtkTextTag_fg_color_set + +proc set_fg_color_set*(a: var TGtkTextTag, `fg_color_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`fg_color_set` shl bp_TGtkTextTag_fg_color_set) and + bm_TGtkTextTag_fg_color_set) + +proc scale_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_scale_set) shr + bp_TGtkTextTag_scale_set + +proc set_scale_set*(a: var TGtkTextTag, `scale_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`scale_set` shl bp_TGtkTextTag_scale_set) and + bm_TGtkTextTag_scale_set) + +proc fg_stipple_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_fg_stipple_set) shr + bp_TGtkTextTag_fg_stipple_set + +proc set_fg_stipple_set*(a: var TGtkTextTag, `fg_stipple_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`fg_stipple_set` shl bp_TGtkTextTag_fg_stipple_set) and + bm_TGtkTextTag_fg_stipple_set) + +proc justification_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_justification_set) shr + bp_TGtkTextTag_justification_set + +proc set_justification_set*(a: var TGtkTextTag, `justification_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`justification_set` shl bp_TGtkTextTag_justification_set) and + bm_TGtkTextTag_justification_set) + +proc left_margin_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_left_margin_set) shr + bp_TGtkTextTag_left_margin_set + +proc set_left_margin_set*(a: var TGtkTextTag, `left_margin_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`left_margin_set` shl bp_TGtkTextTag_left_margin_set) and + bm_TGtkTextTag_left_margin_set) + +proc indent_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_indent_set) shr + bp_TGtkTextTag_indent_set + +proc set_indent_set*(a: var TGtkTextTag, `indent_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`indent_set` shl bp_TGtkTextTag_indent_set) and + bm_TGtkTextTag_indent_set) + +proc rise_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_rise_set) shr bp_TGtkTextTag_rise_set + +proc set_rise_set*(a: var TGtkTextTag, `rise_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`rise_set` shl bp_TGtkTextTag_rise_set) and bm_TGtkTextTag_rise_set) + +proc strikethrough_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_strikethrough_set) shr + bp_TGtkTextTag_strikethrough_set + +proc set_strikethrough_set*(a: var TGtkTextTag, `strikethrough_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`strikethrough_set` shl bp_TGtkTextTag_strikethrough_set) and + bm_TGtkTextTag_strikethrough_set) + +proc right_margin_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_right_margin_set) shr + bp_TGtkTextTag_right_margin_set + +proc set_right_margin_set*(a: var TGtkTextTag, `right_margin_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`right_margin_set` shl bp_TGtkTextTag_right_margin_set) and + bm_TGtkTextTag_right_margin_set) + +proc pixels_above_lines_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_pixels_above_lines_set) shr + bp_TGtkTextTag_pixels_above_lines_set + +proc set_pixels_above_lines_set*(a: var TGtkTextTag, + `pixels_above_lines_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`pixels_above_lines_set` shl bp_TGtkTextTag_pixels_above_lines_set) and + bm_TGtkTextTag_pixels_above_lines_set) + +proc pixels_below_lines_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_pixels_below_lines_set) shr + bp_TGtkTextTag_pixels_below_lines_set + +proc set_pixels_below_lines_set*(a: var TGtkTextTag, + `pixels_below_lines_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`pixels_below_lines_set` shl bp_TGtkTextTag_pixels_below_lines_set) and + bm_TGtkTextTag_pixels_below_lines_set) + +proc pixels_inside_wrap_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_pixels_inside_wrap_set) shr + bp_TGtkTextTag_pixels_inside_wrap_set + +proc set_pixels_inside_wrap_set*(a: var TGtkTextTag, + `pixels_inside_wrap_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`pixels_inside_wrap_set` shl bp_TGtkTextTag_pixels_inside_wrap_set) and + bm_TGtkTextTag_pixels_inside_wrap_set) + +proc tabs_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_tabs_set) shr bp_TGtkTextTag_tabs_set + +proc set_tabs_set*(a: var TGtkTextTag, `tabs_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`tabs_set` shl bp_TGtkTextTag_tabs_set) and bm_TGtkTextTag_tabs_set) + +proc underline_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_underline_set) shr + bp_TGtkTextTag_underline_set + +proc set_underline_set*(a: var TGtkTextTag, `underline_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`underline_set` shl bp_TGtkTextTag_underline_set) and + bm_TGtkTextTag_underline_set) + +proc wrap_mode_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_wrap_mode_set) shr + bp_TGtkTextTag_wrap_mode_set + +proc set_wrap_mode_set*(a: var TGtkTextTag, `wrap_mode_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`wrap_mode_set` shl bp_TGtkTextTag_wrap_mode_set) and + bm_TGtkTextTag_wrap_mode_set) + +proc bg_full_height_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_bg_full_height_set) shr + bp_TGtkTextTag_bg_full_height_set + +proc set_bg_full_height_set*(a: var TGtkTextTag, `bg_full_height_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`bg_full_height_set` shl bp_TGtkTextTag_bg_full_height_set) and + bm_TGtkTextTag_bg_full_height_set) + +proc invisible_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_invisible_set) shr + bp_TGtkTextTag_invisible_set + +proc set_invisible_set*(a: var TGtkTextTag, `invisible_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`invisible_set` shl bp_TGtkTextTag_invisible_set) and + bm_TGtkTextTag_invisible_set) + +proc editable_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_editable_set) shr + bp_TGtkTextTag_editable_set + +proc set_editable_set*(a: var TGtkTextTag, `editable_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`editable_set` shl bp_TGtkTextTag_editable_set) and + bm_TGtkTextTag_editable_set) + +proc language_set*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_language_set) shr + bp_TGtkTextTag_language_set + +proc set_language_set*(a: var TGtkTextTag, `language_set`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`language_set` shl bp_TGtkTextTag_language_set) and + bm_TGtkTextTag_language_set) + +proc pad1*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_pad1) shr bp_TGtkTextTag_pad1 + +proc set_pad1*(a: var TGtkTextTag, `pad1`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`pad1` shl bp_TGtkTextTag_pad1) and bm_TGtkTextTag_pad1) + +proc pad2*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_pad2) shr bp_TGtkTextTag_pad2 + +proc set_pad2*(a: var TGtkTextTag, `pad2`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`pad2` shl bp_TGtkTextTag_pad2) and bm_TGtkTextTag_pad2) + +proc pad3*(a: var TGtkTextTag): guint = + result = (a.GtkTextTagflag0 and bm_TGtkTextTag_pad3) shr bp_TGtkTextTag_pad3 + +proc set_pad3*(a: var TGtkTextTag, `pad3`: guint) = + a.GtkTextTagflag0 = a.GtkTextTagflag0 or + ((`pad3` shl bp_TGtkTextTag_pad3) and bm_TGtkTextTag_pad3) + +proc underline*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_underline) shr + bp_TGtkTextAppearance_underline + +proc set_underline*(a: var TGtkTextAppearance, `underline`: guint) = + a.flag0 = a.flag0 or + ((`underline` shl bp_TGtkTextAppearance_underline) and + bm_TGtkTextAppearance_underline) + +proc strikethrough*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_strikethrough) shr + bp_TGtkTextAppearance_strikethrough + +proc set_strikethrough*(a: var TGtkTextAppearance, `strikethrough`: guint) = + a.flag0 = a.flag0 or + ((`strikethrough` shl bp_TGtkTextAppearance_strikethrough) and + bm_TGtkTextAppearance_strikethrough) + +proc draw_bg*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_draw_bg) shr + bp_TGtkTextAppearance_draw_bg + +proc set_draw_bg*(a: var TGtkTextAppearance, `draw_bg`: guint) = + a.flag0 = a.flag0 or + ((`draw_bg` shl bp_TGtkTextAppearance_draw_bg) and + bm_TGtkTextAppearance_draw_bg) + +proc inside_selection*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_inside_selection) shr + bp_TGtkTextAppearance_inside_selection + +proc set_inside_selection*(a: var TGtkTextAppearance, `inside_selection`: guint) = + a.flag0 = a.flag0 or + ((`inside_selection` shl bp_TGtkTextAppearance_inside_selection) and + bm_TGtkTextAppearance_inside_selection) + +proc is_text*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_is_text) shr + bp_TGtkTextAppearance_is_text + +proc set_is_text*(a: var TGtkTextAppearance, `is_text`: guint) = + a.flag0 = a.flag0 or + ((`is_text` shl bp_TGtkTextAppearance_is_text) and + bm_TGtkTextAppearance_is_text) + +proc pad1*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_pad1) shr + bp_TGtkTextAppearance_pad1 + +proc set_pad1*(a: var TGtkTextAppearance, `pad1`: guint) = + a.flag0 = a.flag0 or + ((`pad1` shl bp_TGtkTextAppearance_pad1) and bm_TGtkTextAppearance_pad1) + +proc pad2*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_pad2) shr + bp_TGtkTextAppearance_pad2 + +proc set_pad2*(a: var TGtkTextAppearance, `pad2`: guint) = + a.flag0 = a.flag0 or + ((`pad2` shl bp_TGtkTextAppearance_pad2) and bm_TGtkTextAppearance_pad2) + +proc pad3*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_pad3) shr + bp_TGtkTextAppearance_pad3 + +proc set_pad3*(a: var TGtkTextAppearance, `pad3`: guint) = + a.flag0 = a.flag0 or + ((`pad3` shl bp_TGtkTextAppearance_pad3) and bm_TGtkTextAppearance_pad3) + +proc pad4*(a: var TGtkTextAppearance): guint = + result = (a.flag0 and bm_TGtkTextAppearance_pad4) shr + bp_TGtkTextAppearance_pad4 + +proc set_pad4*(a: var TGtkTextAppearance, `pad4`: guint) = + a.flag0 = a.flag0 or + ((`pad4` shl bp_TGtkTextAppearance_pad4) and bm_TGtkTextAppearance_pad4) + +proc invisible*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_invisible) shr + bp_TGtkTextAttributes_invisible + +proc set_invisible*(a: var TGtkTextAttributes, `invisible`: guint) = + a.flag0 = a.flag0 or + ((`invisible` shl bp_TGtkTextAttributes_invisible) and + bm_TGtkTextAttributes_invisible) + +proc bg_full_height*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_bg_full_height) shr + bp_TGtkTextAttributes_bg_full_height + +proc set_bg_full_height*(a: var TGtkTextAttributes, `bg_full_height`: guint) = + a.flag0 = a.flag0 or + ((`bg_full_height` shl bp_TGtkTextAttributes_bg_full_height) and + bm_TGtkTextAttributes_bg_full_height) + +proc editable*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_editable) shr + bp_TGtkTextAttributes_editable + +proc set_editable*(a: var TGtkTextAttributes, `editable`: guint) = + a.flag0 = a.flag0 or + ((`editable` shl bp_TGtkTextAttributes_editable) and + bm_TGtkTextAttributes_editable) + +proc realized*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_realized) shr + bp_TGtkTextAttributes_realized + +proc set_realized*(a: var TGtkTextAttributes, `realized`: guint) = + a.flag0 = a.flag0 or + ((`realized` shl bp_TGtkTextAttributes_realized) and + bm_TGtkTextAttributes_realized) + +proc pad1*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_pad1) shr + bp_TGtkTextAttributes_pad1 + +proc set_pad1*(a: var TGtkTextAttributes, `pad1`: guint) = + a.flag0 = a.flag0 or + ((`pad1` shl bp_TGtkTextAttributes_pad1) and bm_TGtkTextAttributes_pad1) + +proc pad2*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_pad2) shr + bp_TGtkTextAttributes_pad2 + +proc set_pad2*(a: var TGtkTextAttributes, `pad2`: guint) = + a.flag0 = a.flag0 or + ((`pad2` shl bp_TGtkTextAttributes_pad2) and bm_TGtkTextAttributes_pad2) + +proc pad3*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_pad3) shr + bp_TGtkTextAttributes_pad3 + +proc set_pad3*(a: var TGtkTextAttributes, `pad3`: guint) = + a.flag0 = a.flag0 or + ((`pad3` shl bp_TGtkTextAttributes_pad3) and bm_TGtkTextAttributes_pad3) + +proc pad4*(a: var TGtkTextAttributes): guint = + result = (a.flag0 and bm_TGtkTextAttributes_pad4) shr + bp_TGtkTextAttributes_pad4 + +proc set_pad4*(a: var TGtkTextAttributes, `pad4`: guint) = + a.flag0 = a.flag0 or + ((`pad4` shl bp_TGtkTextAttributes_pad4) and bm_TGtkTextAttributes_pad4) + +proc GTK_TYPE_TEXT_TAG_TABLE*(): GType = + result = gtk_text_tag_table_get_type() + +proc GTK_TEXT_TAG_TABLE*(obj: pointer): PGtkTextTagTable = + result = cast[PGtkTextTagTable](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_TEXT_TAG_TABLE())) + +proc GTK_TEXT_TAG_TABLE_CLASS*(klass: pointer): PGtkTextTagTableClass = + result = cast[PGtkTextTagTableClass](G_TYPE_CHECK_CLASS_CAST(klass, + GTK_TYPE_TEXT_TAG_TABLE())) + +proc GTK_IS_TEXT_TAG_TABLE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TEXT_TAG_TABLE()) + +proc GTK_IS_TEXT_TAG_TABLE_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_TAG_TABLE()) + +proc GTK_TEXT_TAG_TABLE_GET_CLASS*(obj: pointer): PGtkTextTagTableClass = + result = cast[PGtkTextTagTableClass](G_TYPE_INSTANCE_GET_CLASS(obj, GTK_TYPE_TEXT_TAG_TABLE())) + +proc GTK_TYPE_TEXT_MARK*(): GType = + result = gtk_text_mark_get_type() + +proc GTK_TEXT_MARK*(anObject: pointer): PGtkTextMark = + result = cast[PGtkTextMark](G_TYPE_CHECK_INSTANCE_CAST(anObject, GTK_TYPE_TEXT_MARK())) + +proc GTK_TEXT_MARK_CLASS*(klass: pointer): PGtkTextMarkClass = + result = cast[PGtkTextMarkClass](G_TYPE_CHECK_CLASS_CAST(klass, GTK_TYPE_TEXT_MARK())) + +proc GTK_IS_TEXT_MARK*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_TEXT_MARK()) + +proc GTK_IS_TEXT_MARK_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_MARK()) + +proc GTK_TEXT_MARK_GET_CLASS*(obj: pointer): PGtkTextMarkClass = + result = cast[PGtkTextMarkClass](G_TYPE_INSTANCE_GET_CLASS(obj, GTK_TYPE_TEXT_MARK())) + +proc visible*(a: var TGtkTextMarkBody): guint = + result = (a.flag0 and bm_TGtkTextMarkBody_visible) shr + bp_TGtkTextMarkBody_visible + +proc set_visible*(a: var TGtkTextMarkBody, `visible`: guint) = + a.flag0 = a.flag0 or + ((`visible` shl bp_TGtkTextMarkBody_visible) and + bm_TGtkTextMarkBody_visible) + +proc not_deleteable*(a: var TGtkTextMarkBody): guint = + result = (a.flag0 and bm_TGtkTextMarkBody_not_deleteable) shr + bp_TGtkTextMarkBody_not_deleteable + +proc set_not_deleteable*(a: var TGtkTextMarkBody, `not_deleteable`: guint) = + a.flag0 = a.flag0 or + ((`not_deleteable` shl bp_TGtkTextMarkBody_not_deleteable) and + bm_TGtkTextMarkBody_not_deleteable) + +proc GTK_TYPE_TEXT_CHILD_ANCHOR*(): GType = + result = gtk_text_child_anchor_get_type() + +proc GTK_TEXT_CHILD_ANCHOR*(anObject: pointer): PGtkTextChildAnchor = + result = cast[PGtkTextChildAnchor](G_TYPE_CHECK_INSTANCE_CAST(anObject, + GTK_TYPE_TEXT_CHILD_ANCHOR())) + +proc GTK_TEXT_CHILD_ANCHOR_CLASS*(klass: pointer): PGtkTextChildAnchorClass = + result = cast[PGtkTextChildAnchorClass](G_TYPE_CHECK_CLASS_CAST(klass, GTK_TYPE_TEXT_CHILD_ANCHOR())) + +proc GTK_IS_TEXT_CHILD_ANCHOR*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, GTK_TYPE_TEXT_CHILD_ANCHOR()) + +proc GTK_IS_TEXT_CHILD_ANCHOR_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_CHILD_ANCHOR()) + +proc GTK_TEXT_CHILD_ANCHOR_GET_CLASS*(obj: pointer): PGtkTextChildAnchorClass = + result = cast[PGtkTextChildAnchorClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GTK_TYPE_TEXT_CHILD_ANCHOR())) + +proc width*(a: PGtkTextLineData): gint = + result = a . flag0 and bm_TGtkTextLineData_width + +proc set_width*(a: PGtkTextLineData, NewWidth: gint) = + a . flag0 = (bm_TGtkTextLineData_width and NewWidth) or a . flag0 + +proc valid*(a: PGtkTextLineData): gint = + result = (a . flag0 and bm_TGtkTextLineData_valid) shr + bp_TGtkTextLineData_valid + +proc set_valid*(a: PGtkTextLineData, `valid`: gint) = + a . flag0 = a . + flag0 or + ((`valid` shl bp_TGtkTextLineData_valid) and bm_TGtkTextLineData_valid) + +proc GTK_TYPE_TEXT_BUFFER*(): GType = + result = gtk_text_buffer_get_type() + +proc GTK_TEXT_BUFFER*(obj: pointer): PGtkTextBuffer = + result = cast[PGtkTextBuffer](G_TYPE_CHECK_INSTANCE_CAST(obj, GTK_TYPE_TEXT_BUFFER())) + +proc GTK_TEXT_BUFFER_CLASS*(klass: pointer): PGtkTextBufferClass = + result = cast[PGtkTextBufferClass](G_TYPE_CHECK_CLASS_CAST(klass, + GTK_TYPE_TEXT_BUFFER())) + +proc GTK_IS_TEXT_BUFFER*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TEXT_BUFFER()) + +proc GTK_IS_TEXT_BUFFER_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_BUFFER()) + +proc GTK_TEXT_BUFFER_GET_CLASS*(obj: pointer): PGtkTextBufferClass = + result = cast[PGtkTextBufferClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GTK_TYPE_TEXT_BUFFER())) + +proc modified*(a: var TGtkTextBuffer): guint = + result = (a.GtkTextBufferflag0 and bm_TGtkTextBuffer_modified) shr + bp_TGtkTextBuffer_modified + +proc set_modified*(a: var TGtkTextBuffer, `modified`: guint) = + a.GtkTextBufferflag0 = a.GtkTextBufferflag0 or + ((`modified` shl bp_TGtkTextBuffer_modified) and + bm_TGtkTextBuffer_modified) + +proc GTK_TYPE_TEXT_LAYOUT*(): GType = + result = gtk_text_layout_get_type() + +proc GTK_TEXT_LAYOUT*(obj: pointer): PGtkTextLayout = + result = cast[PGtkTextLayout](G_TYPE_CHECK_INSTANCE_CAST(obj, GTK_TYPE_TEXT_LAYOUT())) + +proc GTK_TEXT_LAYOUT_CLASS*(klass: pointer): PGtkTextLayoutClass = + result = cast[PGtkTextLayoutClass](G_TYPE_CHECK_CLASS_CAST(klass, + GTK_TYPE_TEXT_LAYOUT())) + +proc GTK_IS_TEXT_LAYOUT*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TEXT_LAYOUT()) + +proc GTK_IS_TEXT_LAYOUT_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_LAYOUT()) + +proc GTK_TEXT_LAYOUT_GET_CLASS*(obj: pointer): PGtkTextLayoutClass = + result = cast[PGtkTextLayoutClass](G_TYPE_INSTANCE_GET_CLASS(obj, + GTK_TYPE_TEXT_LAYOUT())) + +proc cursor_visible*(a: var TGtkTextLayout): guint = + result = (a.GtkTextLayoutflag0 and bm_TGtkTextLayout_cursor_visible) shr + bp_TGtkTextLayout_cursor_visible + +proc set_cursor_visible*(a: var TGtkTextLayout, `cursor_visible`: guint) = + a.GtkTextLayoutflag0 = a.GtkTextLayoutflag0 or + ((`cursor_visible` shl bp_TGtkTextLayout_cursor_visible) and + bm_TGtkTextLayout_cursor_visible) + +proc cursor_direction*(a: var TGtkTextLayout): gint = + result = (a.GtkTextLayoutflag0 and bm_TGtkTextLayout_cursor_direction) shr + bp_TGtkTextLayout_cursor_direction + +proc set_cursor_direction*(a: var TGtkTextLayout, `cursor_direction`: gint) = + a.GtkTextLayoutflag0 = a.GtkTextLayoutflag0 or + ((`cursor_direction` shl bp_TGtkTextLayout_cursor_direction) and + bm_TGtkTextLayout_cursor_direction) + +proc is_strong*(a: var TGtkTextCursorDisplay): guint = + result = (a.flag0 and bm_TGtkTextCursorDisplay_is_strong) shr + bp_TGtkTextCursorDisplay_is_strong + +proc set_is_strong*(a: var TGtkTextCursorDisplay, `is_strong`: guint) = + a.flag0 = a.flag0 or + ((`is_strong` shl bp_TGtkTextCursorDisplay_is_strong) and + bm_TGtkTextCursorDisplay_is_strong) + +proc is_weak*(a: var TGtkTextCursorDisplay): guint = + result = (a.flag0 and bm_TGtkTextCursorDisplay_is_weak) shr + bp_TGtkTextCursorDisplay_is_weak + +proc set_is_weak*(a: var TGtkTextCursorDisplay, `is_weak`: guint) = + a.flag0 = a.flag0 or + ((`is_weak` shl bp_TGtkTextCursorDisplay_is_weak) and + bm_TGtkTextCursorDisplay_is_weak) + +proc GTK_TYPE_TEXT_VIEW*(): GType = + result = gtk_text_view_get_type() + +proc GTK_TEXT_VIEW*(obj: pointer): PGtkTextView = + result = cast[PGtkTextView](GTK_CHECK_CAST(obj, GTK_TYPE_TEXT_VIEW())) + +proc GTK_TEXT_VIEW_CLASS*(klass: pointer): PGtkTextViewClass = + result = cast[PGtkTextViewClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TEXT_VIEW())) + +proc GTK_IS_TEXT_VIEW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TEXT_VIEW()) + +proc GTK_IS_TEXT_VIEW_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TEXT_VIEW()) + +proc GTK_TEXT_VIEW_GET_CLASS*(obj: pointer): PGtkTextViewClass = + result = cast[PGtkTextViewClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TEXT_VIEW())) + +proc editable*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_editable) shr + bp_TGtkTextView_editable + +proc set_editable*(a: var TGtkTextView, `editable`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`editable` shl bp_TGtkTextView_editable) and bm_TGtkTextView_editable) + +proc overwrite_mode*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_overwrite_mode) shr + bp_TGtkTextView_overwrite_mode + +proc set_overwrite_mode*(a: var TGtkTextView, `overwrite_mode`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`overwrite_mode` shl bp_TGtkTextView_overwrite_mode) and + bm_TGtkTextView_overwrite_mode) + +proc cursor_visible*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_cursor_visible) shr + bp_TGtkTextView_cursor_visible + +proc set_cursor_visible*(a: var TGtkTextView, `cursor_visible`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`cursor_visible` shl bp_TGtkTextView_cursor_visible) and + bm_TGtkTextView_cursor_visible) + +proc need_im_reset*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_need_im_reset) shr + bp_TGtkTextView_need_im_reset + +proc set_need_im_reset*(a: var TGtkTextView, `need_im_reset`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`need_im_reset` shl bp_TGtkTextView_need_im_reset) and + bm_TGtkTextView_need_im_reset) + +proc just_selected_element*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_just_selected_element) shr + bp_TGtkTextView_just_selected_element + +proc set_just_selected_element*(a: var TGtkTextView, + `just_selected_element`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`just_selected_element` shl bp_TGtkTextView_just_selected_element) and + bm_TGtkTextView_just_selected_element) + +proc disable_scroll_on_focus*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_disable_scroll_on_focus) shr + bp_TGtkTextView_disable_scroll_on_focus + +proc set_disable_scroll_on_focus*(a: var TGtkTextView, + `disable_scroll_on_focus`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`disable_scroll_on_focus` shl bp_TGtkTextView_disable_scroll_on_focus) and + bm_TGtkTextView_disable_scroll_on_focus) + +proc onscreen_validated*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_onscreen_validated) shr + bp_TGtkTextView_onscreen_validated + +proc set_onscreen_validated*(a: var TGtkTextView, `onscreen_validated`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`onscreen_validated` shl bp_TGtkTextView_onscreen_validated) and + bm_TGtkTextView_onscreen_validated) + +proc mouse_cursor_obscured*(a: var TGtkTextView): guint = + result = (a.GtkTextViewflag0 and bm_TGtkTextView_mouse_cursor_obscured) shr + bp_TGtkTextView_mouse_cursor_obscured + +proc set_mouse_cursor_obscured*(a: var TGtkTextView, + `mouse_cursor_obscured`: guint) = + a.GtkTextViewflag0 = a.GtkTextViewflag0 or + ((`mouse_cursor_obscured` shl bp_TGtkTextView_mouse_cursor_obscured) and + bm_TGtkTextView_mouse_cursor_obscured) + +proc GTK_TYPE_TIPS_QUERY*(): GType = + result = gtk_tips_query_get_type() + +proc GTK_TIPS_QUERY*(obj: pointer): PGtkTipsQuery = + result = cast[PGtkTipsQuery](GTK_CHECK_CAST(obj, GTK_TYPE_TIPS_QUERY())) + +proc GTK_TIPS_QUERY_CLASS*(klass: pointer): PGtkTipsQueryClass = + result = cast[PGtkTipsQueryClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TIPS_QUERY())) + +proc GTK_IS_TIPS_QUERY*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TIPS_QUERY()) + +proc GTK_IS_TIPS_QUERY_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TIPS_QUERY()) + +proc GTK_TIPS_QUERY_GET_CLASS*(obj: pointer): PGtkTipsQueryClass = + result = cast[PGtkTipsQueryClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TIPS_QUERY())) + +proc emit_always*(a: var TGtkTipsQuery): guint = + result = (a.GtkTipsQueryflag0 and bm_TGtkTipsQuery_emit_always) shr + bp_TGtkTipsQuery_emit_always + +proc set_emit_always*(a: var TGtkTipsQuery, `emit_always`: guint) = + a.GtkTipsQueryflag0 = a.GtkTipsQueryflag0 or + ((`emit_always` shl bp_TGtkTipsQuery_emit_always) and + bm_TGtkTipsQuery_emit_always) + +proc in_query*(a: var TGtkTipsQuery): guint = + result = (a.GtkTipsQueryflag0 and bm_TGtkTipsQuery_in_query) shr + bp_TGtkTipsQuery_in_query + +proc set_in_query*(a: var TGtkTipsQuery, `in_query`: guint) = + a.GtkTipsQueryflag0 = a.GtkTipsQueryflag0 or + ((`in_query` shl bp_TGtkTipsQuery_in_query) and + bm_TGtkTipsQuery_in_query) + +proc GTK_TYPE_TOOLTIPS*(): GType = + result = gtk_tooltips_get_type() + +proc GTK_TOOLTIPS*(obj: pointer): PGtkTooltips = + result = cast[PGtkTooltips](GTK_CHECK_CAST(obj, GTK_TYPE_TOOLTIPS())) + +proc GTK_TOOLTIPS_CLASS*(klass: pointer): PGtkTooltipsClass = + result = cast[PGtkTooltipsClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TOOLTIPS())) + +proc GTK_IS_TOOLTIPS*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TOOLTIPS()) + +proc GTK_IS_TOOLTIPS_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TOOLTIPS()) + +proc GTK_TOOLTIPS_GET_CLASS*(obj: pointer): PGtkTooltipsClass = + result = cast[PGtkTooltipsClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TOOLTIPS())) + +proc delay*(a: var TGtkTooltips): guint = + result = (a.GtkTooltipsflag0 and bm_TGtkTooltips_delay) shr bp_TGtkTooltips_delay + +proc set_delay*(a: var TGtkTooltips, `delay`: guint) = + a.GtkTooltipsflag0 = a.GtkTooltipsflag0 or + ((`delay` shl bp_TGtkTooltips_delay) and bm_TGtkTooltips_delay) + +proc enabled*(a: var TGtkTooltips): guint = + result = (a.GtkTooltipsflag0 and bm_TGtkTooltips_enabled) shr bp_TGtkTooltips_enabled + +proc set_enabled*(a: var TGtkTooltips, `enabled`: guint) = + a.GtkTooltipsflag0 = a.GtkTooltipsflag0 or + ((`enabled` shl bp_TGtkTooltips_enabled) and bm_TGtkTooltips_enabled) + +proc have_grab*(a: var TGtkTooltips): guint = + result = (a.GtkTooltipsflag0 and bm_TGtkTooltips_have_grab) shr + bp_TGtkTooltips_have_grab + +proc set_have_grab*(a: var TGtkTooltips, `have_grab`: guint) = + a.GtkTooltipsflag0 = a.GtkTooltipsflag0 or + ((`have_grab` shl bp_TGtkTooltips_have_grab) and + bm_TGtkTooltips_have_grab) + +proc use_sticky_delay*(a: var TGtkTooltips): guint = + result = (a.GtkTooltipsflag0 and bm_TGtkTooltips_use_sticky_delay) shr + bp_TGtkTooltips_use_sticky_delay + +proc set_use_sticky_delay*(a: var TGtkTooltips, `use_sticky_delay`: guint) = + a.GtkTooltipsflag0 = a.GtkTooltipsflag0 or + ((`use_sticky_delay` shl bp_TGtkTooltips_use_sticky_delay) and + bm_TGtkTooltips_use_sticky_delay) + +proc GTK_TYPE_TOOLBAR*(): GType = + result = gtk_toolbar_get_type() + +proc GTK_TOOLBAR*(obj: pointer): PGtkToolbar = + result = cast[PGtkToolbar](GTK_CHECK_CAST(obj, GTK_TYPE_TOOLBAR())) + +proc GTK_TOOLBAR_CLASS*(klass: pointer): PGtkToolbarClass = + result = cast[PGtkToolbarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TOOLBAR())) + +proc GTK_IS_TOOLBAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TOOLBAR()) + +proc GTK_IS_TOOLBAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TOOLBAR()) + +proc GTK_TOOLBAR_GET_CLASS*(obj: pointer): PGtkToolbarClass = + result = cast[PGtkToolbarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TOOLBAR())) + +proc style_set*(a: var TGtkToolbar): guint = + result = (a.GtkToolbarflag0 and bm_TGtkToolbar_style_set) shr + bp_TGtkToolbar_style_set + +proc set_style_set*(a: var TGtkToolbar, `style_set`: guint) = + a.GtkToolbarflag0 = a.GtkToolbarflag0 or + ((`style_set` shl bp_TGtkToolbar_style_set) and + bm_TGtkToolbar_style_set) + +proc icon_size_set*(a: var TGtkToolbar): guint = + result = (a.GtkToolbarflag0 and bm_TGtkToolbar_icon_size_set) shr + bp_TGtkToolbar_icon_size_set + +proc set_icon_size_set*(a: var TGtkToolbar, `icon_size_set`: guint) = + a.GtkToolbarflag0 = a.GtkToolbarflag0 or + ((`icon_size_set` shl bp_TGtkToolbar_icon_size_set) and + bm_TGtkToolbar_icon_size_set) + +proc GTK_TYPE_TREE*(): GType = + result = gtk_tree_get_type() + +proc GTK_TREE*(obj: pointer): PGtkTree = + result = cast[PGtkTree](GTK_CHECK_CAST(obj, GTK_TYPE_TREE())) + +proc GTK_TREE_CLASS*(klass: pointer): PGtkTreeClass = + result = cast[PGtkTreeClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TREE())) + +proc GTK_IS_TREE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE()) + +proc GTK_IS_TREE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE()) + +proc GTK_TREE_GET_CLASS*(obj: pointer): PGtkTreeClass = + result = cast[PGtkTreeClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TREE())) + +proc GTK_IS_ROOT_TREE*(obj: pointer): bool = + result = (cast[PGtkObject]((GTK_TREE(obj)) . root_tree)) == + (cast[PGtkObject](obj)) + +proc GTK_TREE_ROOT_TREE*(obj: pointer): PGtkTree = + result = GTK_TREE(obj).root_tree + +proc GTK_TREE_SELECTION_OLD*(obj: pointer): PGList = + result = (GTK_TREE_ROOT_TREE(obj)).selection + +proc selection_mode*(a: var TGtkTree): guint = + result = (a.GtkTreeflag0 and bm_TGtkTree_selection_mode) shr + bp_TGtkTree_selection_mode + +proc set_selection_mode*(a: var TGtkTree, `selection_mode`: guint) = + a.GtkTreeflag0 = a.GtkTreeflag0 or + ((`selection_mode` shl bp_TGtkTree_selection_mode) and + bm_TGtkTree_selection_mode) + +proc view_mode*(a: var TGtkTree): guint = + result = (a.GtkTreeflag0 and bm_TGtkTree_view_mode) shr bp_TGtkTree_view_mode + +proc set_view_mode*(a: var TGtkTree, `view_mode`: guint) = + a.GtkTreeflag0 = a.GtkTreeflag0 or + ((`view_mode` shl bp_TGtkTree_view_mode) and bm_TGtkTree_view_mode) + +proc view_line*(a: var TGtkTree): guint = + result = (a.GtkTreeflag0 and bm_TGtkTree_view_line) shr bp_TGtkTree_view_line + +proc set_view_line*(a: var TGtkTree, `view_line`: guint) = + a.GtkTreeflag0 = a.GtkTreeflag0 or + ((`view_line` shl bp_TGtkTree_view_line) and bm_TGtkTree_view_line) + +proc GTK_TYPE_TREE_DRAG_SOURCE*(): GType = + result = gtk_tree_drag_source_get_type() + +proc GTK_TREE_DRAG_SOURCE*(obj: pointer): PGtkTreeDragSource = + result = cast[PGtkTreeDragSource](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_TREE_DRAG_SOURCE())) + +proc GTK_IS_TREE_DRAG_SOURCE*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TREE_DRAG_SOURCE()) + +proc GTK_TREE_DRAG_SOURCE_GET_IFACE*(obj: pointer): PGtkTreeDragSourceIface = + result = cast[PGtkTreeDragSourceIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + GTK_TYPE_TREE_DRAG_SOURCE())) + +proc GTK_TYPE_TREE_DRAG_DEST*(): GType = + result = gtk_tree_drag_dest_get_type() + +proc GTK_TREE_DRAG_DEST*(obj: pointer): PGtkTreeDragDest = + result = cast[PGtkTreeDragDest](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_TREE_DRAG_DEST())) + +proc GTK_IS_TREE_DRAG_DEST*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_TREE_DRAG_DEST()) + +proc GTK_TREE_DRAG_DEST_GET_IFACE*(obj: pointer): PGtkTreeDragDestIface = + result = cast[PGtkTreeDragDestIface](G_TYPE_INSTANCE_GET_INTERFACE(obj, + GTK_TYPE_TREE_DRAG_DEST())) + +proc GTK_TYPE_TREE_ITEM*(): GType = + result = gtk_tree_item_get_type() + +proc GTK_TREE_ITEM*(obj: pointer): PGtkTreeItem = + result = cast[PGtkTreeItem](GTK_CHECK_CAST(obj, GTK_TYPE_TREE_ITEM())) + +proc GTK_TREE_ITEM_CLASS*(klass: pointer): PGtkTreeItemClass = + result = cast[PGtkTreeItemClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TREE_ITEM())) + +proc GTK_IS_TREE_ITEM*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE_ITEM()) + +proc GTK_IS_TREE_ITEM_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE_ITEM()) + +proc GTK_TREE_ITEM_GET_CLASS*(obj: pointer): PGtkTreeItemClass = + result = cast[PGtkTreeItemClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TREE_ITEM())) + +proc GTK_TREE_ITEM_SUBTREE*(obj: pointer): PGtkWidget = + result = (GTK_TREE_ITEM(obj)).subtree + +proc expanded*(a: var TGtkTreeItem): guint = + result = (a.GtkTreeItemflag0 and bm_TGtkTreeItem_expanded) shr + bp_TGtkTreeItem_expanded + +proc set_expanded*(a: var TGtkTreeItem, `expanded`: guint) = + a.GtkTreeItemflag0 = a.GtkTreeItemflag0 or + ((`expanded` shl bp_TGtkTreeItem_expanded) and bm_TGtkTreeItem_expanded) + +proc GTK_TYPE_TREE_SELECTION*(): GType = + result = gtk_tree_selection_get_type() + +proc GTK_TREE_SELECTION*(obj: pointer): PGtkTreeSelection = + result = cast[PGtkTreeSelection](GTK_CHECK_CAST(obj, GTK_TYPE_TREE_SELECTION())) + +proc GTK_TREE_SELECTION_CLASS*(klass: pointer): PGtkTreeSelectionClass = + result = cast[PGtkTreeSelectionClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_TREE_SELECTION())) + +proc GTK_IS_TREE_SELECTION*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE_SELECTION()) + +proc GTK_IS_TREE_SELECTION_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE_SELECTION()) + +proc GTK_TREE_SELECTION_GET_CLASS*(obj: pointer): PGtkTreeSelectionClass = + result = cast[PGtkTreeSelectionClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_TREE_SELECTION())) + +proc GTK_TYPE_TREE_STORE*(): GType = + result = gtk_tree_store_get_type() + +proc GTK_TREE_STORE*(obj: pointer): PGtkTreeStore = + result = cast[PGtkTreeStore](GTK_CHECK_CAST(obj, GTK_TYPE_TREE_STORE())) + +proc GTK_TREE_STORE_CLASS*(klass: pointer): PGtkTreeStoreClass = + result = cast[PGtkTreeStoreClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TREE_STORE())) + +proc GTK_IS_TREE_STORE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE_STORE()) + +proc GTK_IS_TREE_STORE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE_STORE()) + +proc GTK_TREE_STORE_GET_CLASS*(obj: pointer): PGtkTreeStoreClass = + result = cast[PGtkTreeStoreClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TREE_STORE())) + +proc columns_dirty*(a: var TGtkTreeStore): guint = + result = (a.GtkTreeStoreflag0 and bm_TGtkTreeStore_columns_dirty) shr + bp_TGtkTreeStore_columns_dirty + +proc set_columns_dirty*(a: var TGtkTreeStore, `columns_dirty`: guint) = + a.GtkTreeStoreflag0 = a.GtkTreeStoreflag0 or + ((`columns_dirty` shl bp_TGtkTreeStore_columns_dirty) and + bm_TGtkTreeStore_columns_dirty) + +proc GTK_TYPE_TREE_VIEW_COLUMN*(): GType = + result = gtk_tree_view_column_get_type() + +proc GTK_TREE_VIEW_COLUMN*(obj: pointer): PGtkTreeViewColumn = + result = cast[PGtkTreeViewColumn](GTK_CHECK_CAST(obj, GTK_TYPE_TREE_VIEW_COLUMN())) + +proc GTK_TREE_VIEW_COLUMN_CLASS*(klass: pointer): PGtkTreeViewColumnClass = + result = cast[PGtkTreeViewColumnClass](GTK_CHECK_CLASS_CAST(klass, + GTK_TYPE_TREE_VIEW_COLUMN())) + +proc GTK_IS_TREE_VIEW_COLUMN*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE_VIEW_COLUMN()) + +proc GTK_IS_TREE_VIEW_COLUMN_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE_VIEW_COLUMN()) + +proc GTK_TREE_VIEW_COLUMN_GET_CLASS*(obj: pointer): PGtkTreeViewColumnClass = + result = cast[PGtkTreeViewColumnClass](GTK_CHECK_GET_CLASS(obj, + GTK_TYPE_TREE_VIEW_COLUMN())) + +proc visible*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_visible) shr + bp_TGtkTreeViewColumn_visible + +proc set_visible*(a: var TGtkTreeViewColumn, `visible`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`visible` shl bp_TGtkTreeViewColumn_visible) and + bm_TGtkTreeViewColumn_visible) + +proc resizable*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_resizable) shr + bp_TGtkTreeViewColumn_resizable + +proc set_resizable*(a: var TGtkTreeViewColumn, `resizable`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`resizable` shl bp_TGtkTreeViewColumn_resizable) and + bm_TGtkTreeViewColumn_resizable) + +proc clickable*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_clickable) shr + bp_TGtkTreeViewColumn_clickable + +proc set_clickable*(a: var TGtkTreeViewColumn, `clickable`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`clickable` shl bp_TGtkTreeViewColumn_clickable) and + bm_TGtkTreeViewColumn_clickable) + +proc dirty*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_dirty) shr + bp_TGtkTreeViewColumn_dirty + +proc set_dirty*(a: var TGtkTreeViewColumn, `dirty`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`dirty` shl bp_TGtkTreeViewColumn_dirty) and + bm_TGtkTreeViewColumn_dirty) + +proc show_sort_indicator*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_show_sort_indicator) shr + bp_TGtkTreeViewColumn_show_sort_indicator + +proc set_show_sort_indicator*(a: var TGtkTreeViewColumn, + `show_sort_indicator`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`show_sort_indicator` shl bp_TGtkTreeViewColumn_show_sort_indicator) and + bm_TGtkTreeViewColumn_show_sort_indicator) + +proc maybe_reordered*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_maybe_reordered) shr + bp_TGtkTreeViewColumn_maybe_reordered + +proc set_maybe_reordered*(a: var TGtkTreeViewColumn, `maybe_reordered`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`maybe_reordered` shl bp_TGtkTreeViewColumn_maybe_reordered) and + bm_TGtkTreeViewColumn_maybe_reordered) + +proc reorderable*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_reorderable) shr + bp_TGtkTreeViewColumn_reorderable + +proc set_reorderable*(a: var TGtkTreeViewColumn, `reorderable`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`reorderable` shl bp_TGtkTreeViewColumn_reorderable) and + bm_TGtkTreeViewColumn_reorderable) + +proc use_resized_width*(a: var TGtkTreeViewColumn): guint = + result = (a.GtkTreeViewColumnflag0 and bm_TGtkTreeViewColumn_use_resized_width) shr + bp_TGtkTreeViewColumn_use_resized_width + +proc set_use_resized_width*(a: var TGtkTreeViewColumn, + `use_resized_width`: guint) = + a.GtkTreeViewColumnflag0 = a.GtkTreeViewColumnflag0 or + ((`use_resized_width` shl bp_TGtkTreeViewColumn_use_resized_width) and + bm_TGtkTreeViewColumn_use_resized_width) + +proc flags*(a: PGtkRBNode): guint = + result = (a . flag0 and bm_TGtkRBNode_flags) shr bp_TGtkRBNode_flags + +proc set_flags*(a: PGtkRBNode, `flags`: guint) = + a . flag0 = a . + flag0 or ((`flags` shl bp_TGtkRBNode_flags) and bm_TGtkRBNode_flags) + +proc parity*(a: PGtkRBNode): guint = + result = (a . flag0 and bm_TGtkRBNode_parity) shr bp_TGtkRBNode_parity + +proc set_parity*(a: PGtkRBNode, `parity`: guint) = + a . flag0 = a . + flag0 or ((`parity` shl bp_TGtkRBNode_parity) and bm_TGtkRBNode_parity) + +proc GTK_RBNODE_GET_COLOR*(node_: PGtkRBNode): guint = + if node_ == nil: + Result = GTK_RBNODE_BLACK + elif (flags(node_) and GTK_RBNODE_RED) == GTK_RBNODE_RED: + Result = GTK_RBNODE_RED + else: + Result = GTK_RBNODE_BLACK + +proc GTK_RBNODE_SET_COLOR*(node_: PGtkRBNode, color: guint) = + if node_ == nil: + return + if ((flags(node_) and int(color)) != color): + set_flags(node_, flags(node_) xor (GTK_RBNODE_RED or GTK_RBNODE_BLACK)) + +proc GTK_RBNODE_GET_HEIGHT*(node_: PGtkRBNode): gint = + var if_local1: gint + if node_ . children != nil: + if_local1 = node_.children.root.offset + else: + if_local1 = 0 + result = node_.offset - (int(node_.left.offset) + node_.right.offset + if_local1) + +proc GTK_RBNODE_FLAG_SET*(node_: PGtkRBNode, flag: guint): bool = + result = (node_ != nil) and ((flags(node_) and int(flag)) == flag) + +proc GTK_RBNODE_SET_FLAG*(node_: PGtkRBNode, flag: guint16) = + set_flags(node_, int(flag) or flags(node_)) + +proc GTK_RBNODE_UNSET_FLAG*(node_: PGtkRBNode, flag: guint16) = + set_flags(node_, (not int(flag)) and flags(node_)) + +proc GTK_TREE_VIEW_FLAG_SET*(tree_view: PGtkTreeView, flag: guint): bool = + result = ((tree_view.priv.flags) and int(flag)) == flag + +proc TREE_VIEW_HEADER_HEIGHT*(tree_view: PGtkTreeView): int32 = + var if_local1: int32 + if GTK_TREE_VIEW_FLAG_SET(tree_view, GTK_TREE_VIEW_HEADERS_VISIBLE): + if_local1 = tree_view.priv.header_height + else: + if_local1 = 0 + result = if_local1 + +proc TREE_VIEW_COLUMN_REQUESTED_WIDTH*(column: PGtkTreeViewColumn): int32 = + var MinWidth, MaxWidth: int + if column . min_width != - 1: + MinWidth = column . min_width + else: + MinWidth = column . requested_width + if column . max_width != - 1: + MaxWidth = column . max_width + else: + MaxWidth = column . requested_width + result = CLAMP(column . requested_width, MinWidth, + MaxWidth) + +proc TREE_VIEW_DRAW_EXPANDERS*(tree_view: PGtkTreeView): bool = + result = (not (GTK_TREE_VIEW_FLAG_SET(tree_view, GTK_TREE_VIEW_IS_LIST))) and + (GTK_TREE_VIEW_FLAG_SET(tree_view, GTK_TREE_VIEW_SHOW_EXPANDERS)) + +proc TREE_VIEW_COLUMN_DRAG_DEAD_MULTIPLIER*(tree_view: PGtkTreeView): int32 = + result = 10 * (TREE_VIEW_HEADER_HEIGHT(tree_view)) + +proc scroll_to_use_align*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_scroll_to_use_align) shr + bp_TGtkTreeViewPrivate_scroll_to_use_align + +proc set_scroll_to_use_align*(a: var TGtkTreeViewPrivate, + `scroll_to_use_align`: guint) = + a.flag0 = a.flag0 or + ((`scroll_to_use_align` shl bp_TGtkTreeViewPrivate_scroll_to_use_align) and + bm_TGtkTreeViewPrivate_scroll_to_use_align) + +proc fixed_height_check*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_fixed_height_check) shr + bp_TGtkTreeViewPrivate_fixed_height_check + +proc set_fixed_height_check*(a: var TGtkTreeViewPrivate, + `fixed_height_check`: guint) = + a.flag0 = a.flag0 or + ((`fixed_height_check` shl bp_TGtkTreeViewPrivate_fixed_height_check) and + bm_TGtkTreeViewPrivate_fixed_height_check) + +proc reorderable*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_reorderable) shr + bp_TGtkTreeViewPrivate_reorderable + +proc set_reorderable*(a: var TGtkTreeViewPrivate, `reorderable`: guint) = + a.flag0 = a.flag0 or + ((`reorderable` shl bp_TGtkTreeViewPrivate_reorderable) and + bm_TGtkTreeViewPrivate_reorderable) + +proc header_has_focus*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_header_has_focus) shr + bp_TGtkTreeViewPrivate_header_has_focus + +proc set_header_has_focus*(a: var TGtkTreeViewPrivate, `header_has_focus`: guint) = + a.flag0 = a.flag0 or + ((`header_has_focus` shl bp_TGtkTreeViewPrivate_header_has_focus) and + bm_TGtkTreeViewPrivate_header_has_focus) + +proc drag_column_window_state*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_drag_column_window_state) shr + bp_TGtkTreeViewPrivate_drag_column_window_state + +proc set_drag_column_window_state*(a: var TGtkTreeViewPrivate, + `drag_column_window_state`: guint) = + a.flag0 = a.flag0 or + ((`drag_column_window_state` shl + bp_TGtkTreeViewPrivate_drag_column_window_state) and + bm_TGtkTreeViewPrivate_drag_column_window_state) + +proc has_rules*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_has_rules) shr + bp_TGtkTreeViewPrivate_has_rules + +proc set_has_rules*(a: var TGtkTreeViewPrivate, `has_rules`: guint) = + a.flag0 = a.flag0 or + ((`has_rules` shl bp_TGtkTreeViewPrivate_has_rules) and + bm_TGtkTreeViewPrivate_has_rules) + +proc mark_rows_col_dirty*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_mark_rows_col_dirty) shr + bp_TGtkTreeViewPrivate_mark_rows_col_dirty + +proc set_mark_rows_col_dirty*(a: var TGtkTreeViewPrivate, + `mark_rows_col_dirty`: guint) = + a.flag0 = a.flag0 or + ((`mark_rows_col_dirty` shl bp_TGtkTreeViewPrivate_mark_rows_col_dirty) and + bm_TGtkTreeViewPrivate_mark_rows_col_dirty) + +proc enable_search*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_enable_search) shr + bp_TGtkTreeViewPrivate_enable_search + +proc set_enable_search*(a: var TGtkTreeViewPrivate, `enable_search`: guint) = + a.flag0 = a.flag0 or + ((`enable_search` shl bp_TGtkTreeViewPrivate_enable_search) and + bm_TGtkTreeViewPrivate_enable_search) + +proc disable_popdown*(a: var TGtkTreeViewPrivate): guint = + result = (a.flag0 and bm_TGtkTreeViewPrivate_disable_popdown) shr + bp_TGtkTreeViewPrivate_disable_popdown + +proc set_disable_popdown*(a: var TGtkTreeViewPrivate, `disable_popdown`: guint) = + a.flag0 = a.flag0 or + ((`disable_popdown` shl bp_TGtkTreeViewPrivate_disable_popdown) and + bm_TGtkTreeViewPrivate_disable_popdown) + +proc GTK_TREE_VIEW_SET_FLAG*(tree_view: PGtkTreeView, flag: guint) = + tree_view . priv . flags = tree_view . priv . flags or int(flag) + +proc GTK_TREE_VIEW_UNSET_FLAG*(tree_view: PGtkTreeView, flag: guint) = + tree_view . priv . flags = tree_view . priv . flags and not int(flag) + +proc GTK_TYPE_TREE_VIEW*(): GType = + result = gtk_tree_view_get_type() + +proc GTK_TREE_VIEW*(obj: pointer): PGtkTreeView = + result = cast[PGtkTreeView](GTK_CHECK_CAST(obj, GTK_TYPE_TREE_VIEW())) + +proc GTK_TREE_VIEW_CLASS*(klass: pointer): PGtkTreeViewClass = + result = cast[PGtkTreeViewClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_TREE_VIEW())) + +proc GTK_IS_TREE_VIEW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_TREE_VIEW()) + +proc GTK_IS_TREE_VIEW_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_TREE_VIEW()) + +proc GTK_TREE_VIEW_GET_CLASS*(obj: pointer): PGtkTreeViewClass = + result = cast[PGtkTreeViewClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_TREE_VIEW())) + +proc GTK_TYPE_VBUTTON_BOX*(): GType = + result = gtk_vbutton_box_get_type() + +proc GTK_VBUTTON_BOX*(obj: pointer): PGtkVButtonBox = + result = cast[PGtkVButtonBox](GTK_CHECK_CAST(obj, GTK_TYPE_VBUTTON_BOX())) + +proc GTK_VBUTTON_BOX_CLASS*(klass: pointer): PGtkVButtonBoxClass = + result = cast[PGtkVButtonBoxClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VBUTTON_BOX())) + +proc GTK_IS_VBUTTON_BOX*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VBUTTON_BOX()) + +proc GTK_IS_VBUTTON_BOX_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VBUTTON_BOX()) + +proc GTK_VBUTTON_BOX_GET_CLASS*(obj: pointer): PGtkVButtonBoxClass = + result = cast[PGtkVButtonBoxClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VBUTTON_BOX())) + +proc GTK_TYPE_VIEWPORT*(): GType = + result = gtk_viewport_get_type() + +proc GTK_VIEWPORT*(obj: pointer): PGtkViewport = + result = cast[PGtkViewport](GTK_CHECK_CAST(obj, GTK_TYPE_VIEWPORT())) + +proc GTK_VIEWPORT_CLASS*(klass: pointer): PGtkViewportClass = + result = cast[PGtkViewportClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VIEWPORT())) + +proc GTK_IS_VIEWPORT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VIEWPORT()) + +proc GTK_IS_VIEWPORT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VIEWPORT()) + +proc GTK_VIEWPORT_GET_CLASS*(obj: pointer): PGtkViewportClass = + result = cast[PGtkViewportClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VIEWPORT())) + +proc GTK_TYPE_VPANED*(): GType = + result = gtk_vpaned_get_type() + +proc GTK_VPANED*(obj: pointer): PGtkVPaned = + result = cast[PGtkVPaned](GTK_CHECK_CAST(obj, GTK_TYPE_VPANED())) + +proc GTK_VPANED_CLASS*(klass: pointer): PGtkVPanedClass = + result = cast[PGtkVPanedClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VPANED())) + +proc GTK_IS_VPANED*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VPANED()) + +proc GTK_IS_VPANED_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VPANED()) + +proc GTK_VPANED_GET_CLASS*(obj: pointer): PGtkVPanedClass = + result = cast[PGtkVPanedClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VPANED())) + +proc GTK_TYPE_VRULER*(): GType = + result = gtk_vruler_get_type() + +proc GTK_VRULER*(obj: pointer): PGtkVRuler = + result = cast[PGtkVRuler](GTK_CHECK_CAST(obj, GTK_TYPE_VRULER())) + +proc GTK_VRULER_CLASS*(klass: pointer): PGtkVRulerClass = + result = cast[PGtkVRulerClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VRULER())) + +proc GTK_IS_VRULER*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VRULER()) + +proc GTK_IS_VRULER_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VRULER()) + +proc GTK_VRULER_GET_CLASS*(obj: pointer): PGtkVRulerClass = + result = cast[PGtkVRulerClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VRULER())) + +proc GTK_TYPE_VSCALE*(): GType = + result = gtk_vscale_get_type() + +proc GTK_VSCALE*(obj: pointer): PGtkVScale = + result = cast[PGtkVScale](GTK_CHECK_CAST(obj, GTK_TYPE_VSCALE())) + +proc GTK_VSCALE_CLASS*(klass: pointer): PGtkVScaleClass = + result = cast[PGtkVScaleClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VSCALE())) + +proc GTK_IS_VSCALE*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VSCALE()) + +proc GTK_IS_VSCALE_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VSCALE()) + +proc GTK_VSCALE_GET_CLASS*(obj: pointer): PGtkVScaleClass = + result = cast[PGtkVScaleClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VSCALE())) + +proc GTK_TYPE_VSCROLLBAR*(): GType = + result = gtk_vscrollbar_get_type() + +proc GTK_VSCROLLBAR*(obj: pointer): PGtkVScrollbar = + result = cast[PGtkVScrollbar](GTK_CHECK_CAST(obj, GTK_TYPE_VSCROLLBAR())) + +proc GTK_VSCROLLBAR_CLASS*(klass: pointer): PGtkVScrollbarClass = + result = cast[PGtkVScrollbarClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VSCROLLBAR())) + +proc GTK_IS_VSCROLLBAR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VSCROLLBAR()) + +proc GTK_IS_VSCROLLBAR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VSCROLLBAR()) + +proc GTK_VSCROLLBAR_GET_CLASS*(obj: pointer): PGtkVScrollbarClass = + result = cast[PGtkVScrollbarClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VSCROLLBAR())) + +proc GTK_TYPE_VSEPARATOR*(): GType = + result = gtk_vseparator_get_type() + +proc GTK_VSEPARATOR*(obj: pointer): PGtkVSeparator = + result = cast[PGtkVSeparator](GTK_CHECK_CAST(obj, GTK_TYPE_VSEPARATOR())) + +proc GTK_VSEPARATOR_CLASS*(klass: pointer): PGtkVSeparatorClass = + result = cast[PGtkVSeparatorClass](GTK_CHECK_CLASS_CAST(klass, GTK_TYPE_VSEPARATOR())) + +proc GTK_IS_VSEPARATOR*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_TYPE_VSEPARATOR()) + +proc GTK_IS_VSEPARATOR_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_TYPE_VSEPARATOR()) + +proc GTK_VSEPARATOR_GET_CLASS*(obj: pointer): PGtkVSeparatorClass = + result = cast[PGtkVSeparatorClass](GTK_CHECK_GET_CLASS(obj, GTK_TYPE_VSEPARATOR())) + + +# these were missing: +type + PGtkCellLayout* = pointer + PPGtkCellLayout* = ptr PGtkCellLayout + PGtkSignalRunType* = ptr TGtkSignalRunType + TGtkSignalRunType* = int32 + PGtkFileChooserAction* = ptr TGtkFileChooserAction + TGtkFileChooserAction* = enum + GTK_FILE_CHOOSER_ACTION_OPEN, + GTK_FILE_CHOOSER_ACTION_SAVE, + GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, + GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER + PGtkFileChooserError* = ptr TGtkFileChooserError + TGtkFileChooserError* = enum + GTK_FILE_CHOOSER_ERROR_NONEXISTENT, + GTK_FILE_CHOOSER_ERROR_BAD_FILENAME + + +const + GTK_ARG_READWRITE* = GTK_ARG_READABLE or GTK_ARG_WRITABLE + +proc gtk_binding_entry_add_signal*(binding_set: PGtkBindingSet, keyval: guint, + modifiers: TGdkModifierType, + signal_name: cstring, n_args: guint){.varargs, + importc, cdecl, dynlib: gtklib.} +proc gtk_clist_new_with_titles*(columns: gint): PGtkWidget{.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_clist_prepend*(clist: PGtkCList): gint{.importc, varargs, cdecl, dynlib: gtklib.} +proc gtk_clist_append*(clist: PGtkCList): gint{.importc, varargs, cdecl, dynlib: gtklib.} +proc gtk_clist_insert*(clist: PGtkCList, row: gint): gint{.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_cell_layout_set_attributes*(cell_layout: PGtkCellLayout, + cell: PGtkCellRenderer){.cdecl, varargs, + importc, dynlib: gtklib, importc: "gtk_cell_layout_set_attributes".} +proc gtk_container_add_with_properties*(container: PGtkContainer, + widget: PGtkWidget, + first_prop_name: cstring){.varargs, + importc, cdecl, dynlib: gtklib.} +proc gtk_container_child_set*(container: PGtkContainer, child: PGtkWidget, + first_prop_name: cstring){.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_container_child_get*(container: PGtkContainer, child: PGtkWidget, + first_prop_name: cstring){.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_container_child_set_valist*(container: PGtkContainer, + child: PGtkWidget, + first_property_name: cstring){.varargs, + importc, cdecl, dynlib: gtklib.} +proc gtk_container_child_get_valist*(container: PGtkContainer, + child: PGtkWidget, + first_property_name: cstring){.varargs, + importc, cdecl, dynlib: gtklib.} +proc gtk_ctree_new_with_titles*(columns: gint, tree_column: gint): PGtkWidget{. + importc, varargs, cdecl, dynlib: gtklib.} +proc gtk_curve_get_vector*(curve: PGtkCurve, veclen: int32){.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_curve_set_vector*(curve: PGtkCurve, veclen: int32){.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_dialog_add_buttons*(dialog: PGtkDialog, first_button_text: cstring){. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_dialog_new_with_buttons*(title: cstring, parent: PGtkWindow, + flags: TGtkDialogFlags, + first_button_text: cstring): PGtkWidget{. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_list_store_new*(n_columns: gint): PGtkListStore{.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_list_store_set*(list_store: PGtkListStore, iter: PGtkTreeIter){. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_list_store_set_valist*(list_store: PGtkListStore, iter: PGtkTreeIter){. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_message_dialog_new*(parent: PGtkWindow, flags: TGtkDialogFlags, + thetype: TGtkMessageType, buttons: TGtkButtonsType, + message_format: cstring): PGtkWidget{.varargs, + cdecl, importc, dynlib: gtklib.} +proc gtk_signal_new*(name: cstring, signal_flags: TGtkSignalRunType, + object_type: TGtkType, function_offset: guint, + marshaller: TGtkSignalMarshaller, return_val: TGtkType, + n_args: guint): guint{. + varargs, importc, cdecl, dynlib: gtklib.} +proc gtk_signal_emit*(anObject: PGtkObject, signal_id: guint){.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_signal_emit_by_name*(anObject: PGtkObject, name: cstring){.varargs, + cdecl, importc, dynlib: gtklib.} +proc gtk_text_buffer_insert_with_tags*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, text: cstring, + length: gint, first_tag: PGtkTextTag){. + varargs, importc, cdecl, dynlib: gtklib.} +proc gtk_text_buffer_insert_with_tags_by_name*(buffer: PGtkTextBuffer, + iter: PGtkTextIter, text: cstring, length: gint, first_tag_name: cstring){. + varargs, importc, cdecl, dynlib: gtklib.} +proc gtk_text_buffer_create_tag*(buffer: PGtkTextBuffer, tag_name: cstring, + first_property_name: cstring): PGtkTextTag{. + varargs, importc, cdecl, dynlib: gtklib.} +proc gtk_tree_model_get*(tree_model: PGtkTreeModel, iter: PGtkTreeIter){. + varargs, importc, cdecl, dynlib: gtklib.} +proc gtk_tree_model_get_valist*(tree_model: PGtkTreeModel, iter: PGtkTreeIter){. + varargs, importc, cdecl, dynlib: gtklib.} +proc gtk_tree_store_new*(n_columns: gint): PGtkTreeStore{.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_tree_store_set*(tree_store: PGtkTreeStore, iter: PGtkTreeIter){. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_tree_store_set_valist*(tree_store: PGtkTreeStore, iter: PGtkTreeIter){. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_tree_store_iter_is_valid*(tree_store: PGtkTreeStore, iter: PGtkTreeIter): gboolean{. + cdecl, importc, dynlib: gtklib.} +proc gtk_tree_store_reorder*(tree_store: PGtkTreeStore, parent: PGtkTreeIter, + new_order: pgint){.cdecl, importc, dynlib: gtklib.} +proc gtk_tree_store_swap*(tree_store: PGtkTreeStore, a: PGtkTreeIter, + b: PGtkTreeIter){.cdecl, importc, dynlib: gtklib.} +proc gtk_tree_store_move_before*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + position: PGtkTreeIter){.cdecl,importc, dynlib: gtklib.} +proc gtk_tree_store_move_after*(tree_store: PGtkTreeStore, iter: PGtkTreeIter, + position: PGtkTreeIter){.cdecl,importc, dynlib: gtklib.} +proc gtk_tree_view_insert_column_with_attributes*(tree_view: PGtkTreeView, + position: gint, title: cstring, cell: PGtkCellRenderer): gint{.varargs, + importc, cdecl, dynlib: gtklib.} +proc gtk_tree_view_column_new_with_attributes*(title: cstring, + cell: PGtkCellRenderer): PGtkTreeViewColumn{.importc, varargs, cdecl, dynlib: gtklib.} +proc gtk_tree_view_column_set_attributes*(tree_column: PGtkTreeViewColumn, + cell_renderer: PGtkCellRenderer){.importc, varargs, cdecl, dynlib: gtklib.} +proc gtk_widget_new*(thetype: TGtkType, first_property_name: cstring): PGtkWidget{. + importc, varargs, cdecl, dynlib: gtklib.} +proc gtk_widget_set*(widget: PGtkWidget, first_property_name: cstring){.varargs, + importc, cdecl, dynlib: gtklib.} +proc gtk_widget_queue_clear*(widget: PGtkWidget){.importc, cdecl, dynlib: gtklib.} +proc gtk_widget_queue_clear_area*(widget: PGtkWidget, x: gint, y: gint, + width: gint, height: gint){.cdecl, + importc, dynlib: gtklib.} +proc gtk_widget_draw*(widget: PGtkWidget, area: PGdkRectangle){.cdecl, + importc, dynlib: gtklib.} +proc gtk_widget_style_get_valist*(widget: PGtkWidget, + first_property_name: cstring){.varargs, cdecl, + importc, dynlib: gtklib.} +proc gtk_widget_style_get*(widget: PGtkWidget, first_property_name: cstring){. + varargs, cdecl, importc, dynlib: gtklib.} +proc gtk_file_chooser_dialog_new*(title: cstring, parent: PGtkWindow, + action: TGtkFileChooserAction, + first_button_text: cstring): PGtkWidget{.cdecl, + varargs, dynlib: gtklib, importc: "gtk_file_chooser_dialog_new".} +proc gtk_file_chooser_dialog_new_with_backend*(title: cstring, + parent: PGtkWindow, action: TGtkFileChooserAction, backend: cstring, + first_button_text: cstring): PGtkWidget{.varargs, cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_dialog_new_with_backend".} +proc gtk_object_ref*(anObject: PGtkObject): PGtkObject{.cdecl,importc, dynlib: gtklib.} +proc gtk_object_unref*(anObject: PGtkObject){.cdecl, importc, dynlib: gtklib.} +proc gtk_object_weakref*(anObject: PGtkObject, notify: TGtkDestroyNotify, + data: gpointer){.cdecl, importc, dynlib: gtklib.} +proc gtk_object_weakunref*(anObject: PGtkObject, notify: TGtkDestroyNotify, + data: gpointer){.cdecl, importc, dynlib: gtklib.} +proc gtk_object_set_data*(anObject: PGtkObject, key: cstring, data: gpointer){. + cdecl, importc, dynlib: gtklib.} +proc gtk_object_set_data_full*(anObject: PGtkObject, key: cstring, + data: gpointer, destroy: TGtkDestroyNotify){. + importc, cdecl, dynlib: gtklib.} +proc gtk_object_remove_data*(anObject: PGtkObject, key: cstring){.cdecl, + importc, dynlib: gtklib.} +proc gtk_object_get_data*(anObject: PGtkObject, key: cstring): gpointer{.cdecl, + importc, dynlib: gtklib.} +proc gtk_object_remove_no_notify*(anObject: PGtkObject, key: cstring){.cdecl, + importc, dynlib: gtklib.} +proc gtk_object_set_user_data*(anObject: PGtkObject, data: gpointer){.cdecl, + importc, dynlib: gtklib.} +proc gtk_object_get_user_data*(anObject: PGtkObject): gpointer{.cdecl, + importc, dynlib: gtklib.} +proc gtk_object_set_data_by_id*(anObject: PGtkObject, data_id: TGQuark, + data: gpointer){.cdecl, importc, dynlib: gtklib.} +proc gtk_object_set_data_by_id_full*(anObject: PGtkObject, data_id: TGQuark, + data: gpointer, destroy: TGtkDestroyNotify){. + cdecl, importc, dynlib: gtklib.} +proc gtk_object_get_data_by_id*(anObject: PGtkObject, data_id: TGQuark): gpointer{. + cdecl, importc, dynlib: gtklib.} +proc gtk_object_remove_data_by_id*(anObject: PGtkObject, data_id: TGQuark){. + cdecl, importc, dynlib: gtklib.} +proc gtk_object_remove_no_notify_by_id*(anObject: PGtkObject, key_id: TGQuark){. + cdecl, importc, dynlib: gtklib.} +proc gtk_object_data_try_key*(str: cstring): TGQuark{.cdecl, importc, dynlib: gtklib.} +proc gtk_object_data_force_id*(str: cstring): TGQuark{.cdecl, importc, dynlib: gtklib.} +proc gtk_object_get*(anObject: PGtkObject, first_property_name: cstring){.cdecl, + importc, varargs, dynlib: gtklib.} +proc gtk_object_set*(anObject: PGtkObject, first_property_name: cstring){.cdecl, + importc, varargs, dynlib: gtklib.} +proc gtk_object_add_arg_type*(arg_name: cstring, arg_type: TGtkType, + arg_flags: guint, arg_id: guint){.cdecl, + importc, dynlib: gtklib.} + + +type + PGtkFileChooser* = pointer + PPGtkFileChooser* = ptr PGtkFileChooser + +type + PGtkFileFilter* = pointer + PPGtkFileFilter* = ref PGtkFileFilter + PGtkFileFilterFlags* = ref TGtkFileFilterFlags + TGtkFileFilterFlags* = enum + GTK_FILE_FILTER_FILENAME = 1 shl 0, GTK_FILE_FILTER_URI = 1 shl 1, + GTK_FILE_FILTER_DISPLAY_NAME = 1 shl 2, GTK_FILE_FILTER_MIME_TYPE = 1 shl 3 + PGtkFileFilterInfo* = ref TGtkFileFilterInfo + TGtkFileFilterInfo* = record + contains*: TGtkFileFilterFlags + filename*: cstring + uri*: cstring + display_name*: cstring + mime_type*: cstring + + TGtkFileFilterFunc* = proc (filter_info: PGtkFileFilterInfo, data: gpointer): gboolean{. + cdecl.} + +proc GTK_TYPE_FILE_FILTER*(): GType +proc GTK_FILE_FILTER*(obj: pointer): PGtkFileFilter +proc GTK_IS_FILE_FILTER*(obj: pointer): gboolean +proc gtk_file_filter_get_type*(): GType{.cdecl, dynlib: gtklib, + importc: "gtk_file_filter_get_type".} +proc gtk_file_filter_new*(): PGtkFileFilter{.cdecl, dynlib: gtklib, + importc: "gtk_file_filter_new".} +proc gtk_file_filter_set_name*(filter: PGtkFileFilter, name: cstring){.cdecl, + dynlib: gtklib, importc: "gtk_file_filter_set_name".} +proc gtk_file_filter_get_name*(filter: PGtkFileFilter): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_file_filter_get_name".} +proc gtk_file_filter_add_mime_type*(filter: PGtkFileFilter, mime_type: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_file_filter_add_mime_type".} +proc gtk_file_filter_add_pattern*(filter: PGtkFileFilter, pattern: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_file_filter_add_pattern".} +proc gtk_file_filter_add_custom*(filter: PGtkFileFilter, + needed: TGtkFileFilterFlags, + func: TGtkFileFilterFunc, data: gpointer, + notify: TGDestroyNotify){.cdecl, + dynlib: gtklib, importc: "gtk_file_filter_add_custom".} +proc gtk_file_filter_get_needed*(filter: PGtkFileFilter): TGtkFileFilterFlags{. + cdecl, dynlib: gtklib, importc: "gtk_file_filter_get_needed".} +proc gtk_file_filter_filter*(filter: PGtkFileFilter, + filter_info: PGtkFileFilterInfo): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_file_filter_filter".} + +proc GTK_TYPE_FILE_FILTER(): GType = + result = gtk_file_filter_get_type() + +proc GTK_FILE_FILTER(obj: pointer): PGtkFileFilter = + result = cast[PGtkFileFilter](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_FILE_FILTER())) + +proc GTK_IS_FILE_FILTER(obj: pointer): gboolean = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_FILE_FILTER()) + + +proc gtk_file_chooser_get_type*():GType {. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_type".} + +proc gtk_file_chooser_error_quark*(): TGQuark {. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_error_quark".} + +proc GTK_TYPE_FILE_CHOOSER*(): GType = + result = gtk_file_chooser_get_type() + +proc GTK_FILE_CHOOSER*(obj: pointer): PGtkFileChooser = + result = cast[PGtkFileChooser](G_TYPE_CHECK_INSTANCE_CAST(obj, + GTK_TYPE_FILE_CHOOSER())) + +proc GTK_IS_FILE_CHOOSER*(obj: pointer): gboolean = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GTK_TYPE_FILE_CHOOSER()) + +proc gtk_file_chooser_set_action*(chooser: PGtkFileChooser, + action: TGtkFileChooserAction){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_set_action".} +proc gtk_file_chooser_get_action*(chooser: PGtkFileChooser): TGtkFileChooserAction{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_action".} +proc gtk_file_chooser_set_local_only*(chooser: PGtkFileChooser, + local_only: gboolean){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_set_local_only".} +proc gtk_file_chooser_get_local_only*(chooser: PGtkFileChooser): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_local_only".} +proc gtk_file_chooser_set_select_multiple*(chooser: PGtkFileChooser, + select_multiple: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_select_multiple".} +proc gtk_file_chooser_get_select_multiple*(chooser: PGtkFileChooser): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_select_multiple".} +proc gtk_file_chooser_set_current_name*(chooser: PGtkFileChooser, name: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_set_current_name".} +proc gtk_file_chooser_get_filename*(chooser: PGtkFileChooser): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_get_filename".} +proc gtk_file_chooser_set_filename*(chooser: PGtkFileChooser, filename: cstring): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_set_filename".} +proc gtk_file_chooser_select_filename*(chooser: PGtkFileChooser, + filename: cstring): gboolean{.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_select_filename".} +proc gtk_file_chooser_unselect_filename*(chooser: PGtkFileChooser, + filename: cstring){.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_unselect_filename".} +proc gtk_file_chooser_select_all*(chooser: PGtkFileChooser){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_select_all".} +proc gtk_file_chooser_unselect_all*(chooser: PGtkFileChooser){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_unselect_all".} +proc gtk_file_chooser_get_filenames*(chooser: PGtkFileChooser): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_get_filenames".} +proc gtk_file_chooser_set_current_folder*(chooser: PGtkFileChooser, + filename: cstring): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_current_folder".} +proc gtk_file_chooser_get_current_folder*(chooser: PGtkFileChooser): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_current_folder".} +proc gtk_file_chooser_get_uri*(chooser: PGtkFileChooser): cstring{.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_get_uri".} +proc gtk_file_chooser_set_uri*(chooser: PGtkFileChooser, uri: cstring): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_set_uri".} +proc gtk_file_chooser_select_uri*(chooser: PGtkFileChooser, uri: cstring): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_select_uri".} +proc gtk_file_chooser_unselect_uri*(chooser: PGtkFileChooser, uri: cstring){. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_unselect_uri".} +proc gtk_file_chooser_get_uris*(chooser: PGtkFileChooser): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_get_uris".} +proc gtk_file_chooser_set_current_folder_uri*(chooser: PGtkFileChooser, + uri: cstring): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_current_folder_uri".} +proc gtk_file_chooser_get_current_folder_uri*(chooser: PGtkFileChooser): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_current_folder_uri".} +proc gtk_file_chooser_set_preview_widget*(chooser: PGtkFileChooser, + preview_widget: PGtkWidget){.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_preview_widget".} +proc gtk_file_chooser_get_preview_widget*(chooser: PGtkFileChooser): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_preview_widget".} +proc gtk_file_chooser_set_preview_widget_active*(chooser: PGtkFileChooser, + active: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_preview_widget_active".} +proc gtk_file_chooser_get_preview_widget_active*(chooser: PGtkFileChooser): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_preview_widget_active".} +proc gtk_file_chooser_set_use_preview_label*(chooser: PGtkFileChooser, + use_label: gboolean){.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_use_preview_label".} +proc gtk_file_chooser_get_use_preview_label*(chooser: PGtkFileChooser): gboolean{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_use_preview_label".} +proc gtk_file_chooser_get_preview_filename*(chooser: PGtkFileChooser): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_preview_filename".} +proc gtk_file_chooser_get_preview_uri*(chooser: PGtkFileChooser): cstring{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_preview_uri".} +proc gtk_file_chooser_set_extra_widget*(chooser: PGtkFileChooser, + extra_widget: PGtkWidget){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_set_extra_widget".} +proc gtk_file_chooser_get_extra_widget*(chooser: PGtkFileChooser): PGtkWidget{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_extra_widget".} +proc gtk_file_chooser_add_filter*(chooser: PGtkFileChooser, + filter: PGtkFileFilter){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_add_filter".} +proc gtk_file_chooser_remove_filter*(chooser: PGtkFileChooser, + filter: PGtkFileFilter){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_remove_filter".} +proc gtk_file_chooser_list_filters*(chooser: PGtkFileChooser): PGSList{.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_list_filters".} +proc gtk_file_chooser_set_filter*(chooser: PGtkFileChooser, + filter: PGtkFileFilter){.cdecl, + dynlib: gtklib, importc: "gtk_file_chooser_set_filter".} +proc gtk_file_chooser_get_filter*(chooser: PGtkFileChooser): PGtkFileFilter{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_get_filter".} +proc gtk_file_chooser_add_shortcut_folder*(chooser: PGtkFileChooser, + folder: cstring, error: pointer): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_add_shortcut_folder".} +proc gtk_file_chooser_remove_shortcut_folder*(chooser: PGtkFileChooser, + folder: cstring, error: pointer): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_remove_shortcut_folder".} +proc gtk_file_chooser_list_shortcut_folders*(chooser: PGtkFileChooser): PGSList{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_list_shortcut_folders".} +proc gtk_file_chooser_add_shortcut_folder_uri*(chooser: PGtkFileChooser, + uri: cstring, error: pointer): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_add_shortcut_folder_uri".} +proc gtk_file_chooser_remove_shortcut_folder_uri*(chooser: PGtkFileChooser, + uri: cstring, error: pointer): gboolean{.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_remove_shortcut_folder_uri".} +proc gtk_file_chooser_list_shortcut_folder_uris*(chooser: PGtkFileChooser): PGSList{. + cdecl, dynlib: gtklib, importc: "gtk_file_chooser_list_shortcut_folder_uris".} + +proc gtk_file_chooser_set_do_overwrite_confirmation*(chooser: PGtkFileChooser, + do_overwrite_confirmation: gboolean) {.cdecl, dynlib: gtklib, + importc: "gtk_file_chooser_set_do_overwrite_confirmation".} + +proc gtk_nimrod_init*() = + var + cmdLine {.importc: "cmdLine".}: array [0..255, cstring] + cmdCount {.importc: "cmdCount".}: int + gtk_init(addr(cmdLine), addr(cmdCount)) diff --git a/lib/base/gtk/gtkglext.nim b/lib/base/gtk/gtkglext.nim new file mode 100755 index 000000000..7d9e35b13 --- /dev/null +++ b/lib/base/gtk/gtkglext.nim @@ -0,0 +1,48 @@ +import + Glib2, Gdk2, Gtk2, GdkGLExt + +const + GtkGLExtLib* = if defined(WIN32): "libgtkglext-win32-1.0-0.dll" else: "libgtkglext-x11-1.0.so" + +const + HEADER_GTKGLEXT_MAJOR_VERSION* = 1 + HEADER_GTKGLEXT_MINOR_VERSION* = 0 + HEADER_GTKGLEXT_MICRO_VERSION* = 6 + HEADER_GTKGLEXT_INTERFACE_AGE* = 4 + HEADER_GTKGLEXT_BINARY_AGE* = 6 + +proc gtk_gl_parse_args*(argc: Plongint, argv: PPPChar): gboolean{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_gl_parse_args".} +proc gtk_gl_init_check*(argc: Plongint, argv: PPPChar): gboolean{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_gl_init_check".} +proc gtk_gl_init*(argc: Plongint, argv: PPPChar){.cdecl, dynlib: GtkGLExtLib, + importc: "gtk_gl_init".} +proc gtk_widget_set_gl_capability*(widget: PGtkWidget, glconfig: PGdkGLConfig, + share_list: PGdkGLContext, direct: gboolean, + render_type: int): gboolean{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_widget_set_gl_capability".} +proc gtk_widget_is_gl_capable*(widget: PGtkWidget): gboolean{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_widget_is_gl_capable".} +proc gtk_widget_get_gl_config*(widget: PGtkWidget): PGdkGLConfig{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_widget_get_gl_config".} +proc gtk_widget_create_gl_context*(widget: PGtkWidget, + share_list: PGdkGLContext, direct: gboolean, + render_type: int): PGdkGLContext{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_widget_create_gl_context".} +proc gtk_widget_get_gl_context*(widget: PGtkWidget): PGdkGLContext{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_widget_get_gl_context".} +proc gtk_widget_get_gl_window*(widget: PGtkWidget): PGdkGLWindow{.cdecl, + dynlib: GtkGLExtLib, importc: "gtk_widget_get_gl_window".} +proc gtk_widget_get_gl_drawable*(widget: PGtkWidget): PGdkGLDrawable = + nil + +proc HEADER_GTKGLEXT_CHECK_VERSION*(major, minor, micro: guint): bool = + result = (HEADER_GTKGLEXT_MAJOR_VERSION > major) or + ((HEADER_GTKGLEXT_MAJOR_VERSION == major) and + (HEADER_GTKGLEXT_MINOR_VERSION > minor)) or + ((HEADER_GTKGLEXT_MAJOR_VERSION == major) and + (HEADER_GTKGLEXT_MINOR_VERSION == minor) and + (HEADER_GTKGLEXT_MICRO_VERSION >= micro)) + +proc gtk_widget_get_gl_drawable*(widget: PGtkWidget): PGdkGLDrawable = + result = GDK_GL_DRAWABLE(gtk_widget_get_gl_window(widget)) diff --git a/lib/base/gtk/gtkhtml.nim b/lib/base/gtk/gtkhtml.nim new file mode 100755 index 000000000..5599eec2b --- /dev/null +++ b/lib/base/gtk/gtkhtml.nim @@ -0,0 +1,497 @@ +import + gtk2, glib2, atk, pango, gdk2pixbuf, gdk2 + +when defined(windows): + {.define: GTK_WINDOWING_WIN32.} + const + gtkhtmllib = "libgtkhtml-win32-2.0-0.dll" +else: + const + gtkhtmllib = "libgtkhtml-2.so" +const + DOM_UNSPECIFIED_EVENT_TYPE_ERR* = 0 + DOM_INDEX_SIZE_ERR* = 1 + DOM_DOMSTRING_SIZE_ERR* = 2 + DOM_HIERARCHY_REQUEST_ERR* = 3 + DOM_WRONG_DOCUMENT_ERR* = 4 + DOM_INVALID_CHARACTER_ERR* = 5 + DOM_NO_DATA_ALLOWED_ERR* = 6 + DOM_NO_MODIFICATION_ALLOWED_ERR* = 7 + DOM_NOT_FOUND_ERR* = 8 + DOM_NOT_SUPPORTED_ERR* = 9 + DOM_INUSE_ATTRIBUTE_ERR* = 10 + DOM_INVALID_STATE_ERR* = 11 + DOM_SYNTAX_ERR* = 12 + DOM_INVALID_MODIFICATION_ERR* = 13 + DOM_NAMESPACE_ERR* = 14 + DOM_INVALID_ACCESS_ERR* = 15 + DOM_NO_EXCEPTION* = 255 + DOM_ELEMENT_NODE* = 1 + DOM_ATTRIBUTE_NODE* = 2 + DOM_TEXT_NODE* = 3 + DOM_CDATA_SECTION_NODE* = 4 + DOM_ENTITY_REFERENCE_NODE* = 5 + DOM_ENTITY_NODE* = 6 + DOM_PROCESSING_INSTRUCTION_NODE* = 7 + DOM_COMMENT_NODE* = 8 + DOM_DOCUMENT_NODE* = 9 + DOM_DOCUMENT_TYPE_NODE* = 10 + DOM_DOCUMENT_FRAGMENT_NODE* = 11 + DOM_NOTATION_NODE* = 12 + bm__HtmlFontSpecification_weight* = 0x0000000F + bp__HtmlFontSpecification_weight* = 0 + bm__HtmlFontSpecification_style* = 0x00000030 + bp__HtmlFontSpecification_style* = 4 + bm__HtmlFontSpecification_variant* = 0x000000C0 + bp__HtmlFontSpecification_variant* = 6 + bm__HtmlFontSpecification_stretch* = 0x00000F00 + bp__HtmlFontSpecification_stretch* = 8 + bm__HtmlFontSpecification_decoration* = 0x00007000 + bp__HtmlFontSpecification_decoration* = 12 + +type + TDomString* = gchar + TDomBoolean* = gboolean + TDomException* = gushort + TDomTimeStamp* = guint64 + PDomNode* = ptr TDomNode + TDomNode* = object of TGObject + xmlnode*: pointer + style*: pointer + + PDomNodeClass* = ptr TDomNodeClass + TDomNodeClass* = object of TGObjectClass + `get_nodeName`*: proc (node: PDomNode): PDomString{.cdecl.} + `get_nodeValue`*: proc (node: PDomNode, exc: PDomException): PDomString {. + cdecl.} + `set_nodeValue`*: proc (node: PDomNode, value: PDomString, + exc: PDomException): PDomString{.cdecl.} + + PDomDocument* = ptr TDomDocument + TDomDocument* = record + parent*: PDomNode + iterators*: PGSList + + PDomDocumentClass* = ptr TDomDocumentClass + TDomDocumentClass* = record + parent_class*: PDomNodeClass + + PHtmlFocusIterator* = ptr THtmlFocusIterator + THtmlFocusIterator* = object of TGObject + document*: PDomDocument + current_node*: PDomNode + + PHtmlFocusIteratorClass* = ptr THtmlFocusIteratorClass + THtmlFocusIteratorClass* = object of TGObjectClass + + THtmlParserType* = enum + HTML_PARSER_TYPE_HTML, HTML_PARSER_TYPE_XML + PHtmlParser* = ptr THtmlParser + THtmlParser* = object of TGObject + parser_type*: THtmlParserType + document*: PHtmlDocument + stream*: PHtmlStream + xmlctxt*: xmlParserCtxtPtr + res*: int32 + chars*: array[0..9, char] + blocking*: gboolean + blocking_node*: PDomNode + + PHtmlParserClass* = ptr THtmlParserClass + THtmlParserClass* = object of TGtkObjectClass + done_parsing*: proc (parser: PHtmlParser){.cdecl.} + new_node*: proc (parser: PHtmlParser, node: PDomNode) + parsed_document_node*: proc (parser: PHtmlParser, document: PDomDocument) + + PHtmlStream* = ptr THtmlStream + THtmlStreamCloseFunc* = proc (stream: PHtmlStream, user_data: gpointer){.cdecl.} + THtmlStreamWriteFunc* = proc (stream: PHtmlStream, buffer: Pgchar, + size: guint, user_data: gpointer){.cdecl.} + THtmlStreamCancelFunc* = proc (stream: PHtmlStream, user_data: gpointer, + cancel_data: gpointer){.cdecl.} + THtmlStream* = object of TGObject + write_func*: THtmlStreamWriteFunc + close_func*: THtmlStreamCloseFunc + cancel_func*: THtmlStreamCancelFunc + user_data*: gpointer + cancel_data*: gpointer + written*: gint + mime_type*: cstring + + PHtmlStreamClass* = ptr THtmlStreamClass + THtmlStreamClass* = object of TGObjectClass + + THtmlStreamBufferCloseFunc* = proc (str: Pgchar, len: gint, + user_data: gpointer){.cdecl.} + PGtkHtmlContext* = ptr TGtkHtmlContext + TGtkHtmlContext* = object of TGObject + documents*: PGSList + standard_font*: PHtmlFontSpecification + fixed_font*: PHtmlFontSpecification + debug_painting*: gboolean + + PGtkHtmlContextClass* = ptr TGtkHtmlContextClass + TGtkHtmlContextClass* = object of TGObjectClass + + THtmlDocumentState* = enum + HTML_DOCUMENT_STATE_DONE, HTML_DOCUMENT_STATE_PARSING + PHtmlDocument* = ptr THtmlDocument + THtmlDocument* = object of TGObject + stylesheets*: PGSList + current_stream*: PHtmlStream + state*: THtmlDocumentState + + PHtmlDocumentClass* = ptr THtmlDocumentClass + THtmlDocumentClass* = object of TGObjectClass + request_url*: proc (document: PHtmlDocument, url: Pgchar, + stream: PHtmlStream){.cdecl.} + link_clicked*: proc (document: PHtmlDocument, url: Pgchar){.cdecl.} + set_base*: proc (document: PHtmlDocument, url: Pgchar){.cdecl.} + title_changed*: proc (document: PHtmlDocument, new_title: Pgchar){.cdecl.} + submit*: proc (document: PHtmlDocument, `method`: Pgchar, url: Pgchar, + encoding: Pgchar){.cdecl.} + + PHtmlView* = ptr THtmlView + THtmlView* = object of TGtkLayout + document*: PHtmlDocument + node_table*: PGHashTable + relayout_idle_id*: guint + relayout_timeout_id*: guint + mouse_down_x*: gint + mouse_down_y*: gint + mouse_detail*: gint + sel_start_ypos*: gint + sel_start_index*: gint + sel_end_ypos*: gint + sel_end_index*: gint + sel_flag*: gboolean + sel_backwards*: gboolean + sel_start_found*: gboolean + sel_list*: PGSList + jump_to_anchor*: pgchar + magnification*: gdouble + magnification_modified*: gboolean + on_url*: gboolean + + PHtmlViewClass* = ptr THtmlViewClass + THtmlViewClass* = object of TGtkLayoutClass + move_cursor*: proc (html_view: PHtmlView, step: TGtkMovementStep, + count: gint, extend_selection: gboolean){.cdecl.} + on_url*: proc (html_view: PHtmlView, url: Pgchar) + activate*: proc (html_view: PHtmlView) + move_focus_out*: proc (html_view: PHtmlView, direction: TGtkDirectionType) + + +proc DOM_TYPE_NODE*(): GType +proc DOM_NODE*(theobject: pointer): PDomNode +proc DOM_NODE_CLASS*(klass: pointer): PDomNodeClass +proc DOM_IS_NODE*(theobject: pointer): bool +proc DOM_IS_NODE_CLASS*(klass: pointer): bool +proc DOM_NODE_GET_CLASS*(obj: pointer): int32 +proc dom_node_get_type*(): GType{.cdecl, dynlib: gtkhtmllib, + importc: "dom_node_get_type".} +proc dom_Node_mkref*(node: pointer): PDomNode{.cdecl, dynlib: gtkhtmllib, + importc: "dom_Node_mkref".} +proc dom_Node__get_childNodes*(node: PDomNode): PDomNodeList{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_childNodes".} +proc dom_Node_removeChild*(node: PDomNode, oldChild: PDomNode, + exc: PDomException): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node_removeChild".} +proc dom_Node__get_nodeValue*(node: PDomNode, exc: PDomException): PDomString{. + cdecl, dynlib: gtkhtmllib, importc: "dom_Node__get_nodeValue".} +proc dom_Node__get_firstChild*(node: PDomNode): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_firstChild".} +proc dom_Node__get_nodeName*(node: PDomNode): PDomString{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_nodeName".} +proc dom_Node__get_attributes*(node: PDomNode): PDomNamedNodeMap{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_attributes".} +proc dom_Document__get_doctype*(doc: PDomDocument): PDomDocumentType{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Document__get_doctype".} +proc dom_Node_hasChildNodes*(node: PDomNode): DomBoolean{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node_hasChildNodes".} +proc dom_Node__get_parentNode*(node: PDomNode): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_parentNode".} +proc dom_Node__get_nextSibling*(node: PDomNode): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_nextSibling".} +proc dom_Node__get_nodeType*(node: PDomNode): gushort{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_nodeType".} +proc dom_Node_hasAttributes*(node: PDomNode): DomBoolean{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node_hasAttributes".} +proc dom_Node_cloneNode*(node: PDomNode, deep: DomBoolean): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node_cloneNode".} +proc dom_Node_appendChild*(node: PDomNode, newChild: PDomNode, + exc: PDomException): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node_appendChild".} +proc dom_Node__get_localName*(node: PDomNode): PDomString{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_localName".} +proc dom_Node__get_namespaceURI*(node: PDomNode): PDomString{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_namespaceURI".} +proc dom_Node__get_previousSibling*(node: PDomNode): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_previousSibling".} +proc dom_Node__get_lastChild*(node: PDomNode): PDomNode{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_lastChild".} +proc dom_Node__set_nodeValue*(node: PDomNode, value: PDomString, + exc: PDomException){.cdecl, dynlib: gtkhtmllib, + importc: "dom_Node__set_nodeValue".} +proc dom_Node__get_ownerDocument*(node: PDomNode): PDomDocument{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node__get_ownerDocument".} +proc dom_Node_hasAttributes*(node: PDomNode): gboolean{.cdecl, + dynlib: gtkhtmllib, importc: "dom_Node_hasAttributes".} +proc DOM_TYPE_DOCUMENT*(): GType +proc DOM_DOCUMENT*(theobject: pointer): PDomDocument +proc DOM_DOCUMENT_CLASS*(klass: pointer): PDomDocumentClass +proc DOM_IS_DOCUMENT*(theobject: pointer): bool +proc DOM_IS_DOCUMENT_CLASS*(klass: pointer): bool +proc DOM_DOCUMENT_GET_CLASS*(obj: pointer): PDomDocumentClass +proc dom_document_get_type*(): GType +proc dom_Document__get_documentElement*(doc: PDomDocument): PDomElement +proc dom_Document_createElement*(doc: PDomDocument, tagName: PDomString): PDomElement +proc dom_Document_createTextNode*(doc: PDomDocument, data: PDomString): PDomText +proc dom_Document_createComment*(doc: PDomDocument, data: PDomString): PDomComment +proc dom_Document_importNode*(doc: PDomDocument, importedNode: PDomNode, + deep: DomBoolean, exc: PDomException): PDomNode +proc HTML_TYPE_FOCUS_ITERATOR*(): GType +proc HTML_FOCUS_ITERATOR*(theobject: pointer): PHtmlFocusIterator +proc HTML_FOCUS_ITERATOR_CLASS*(klass: pointer): PHtmlFocusIteratorClass +proc HTML_IS_FOCUS_ITERATOR*(theobject: pointer): bool +proc HTML_IS_FOCUS_ITERATOR_CLASS*(klass: pointer): bool +proc HTML_FOCUS_ITERATOR_GET_CLASS*(obj: pointer): PHtmlFocusIteratorClass +proc html_focus_iterator_next_element*(document: PDomDocument, + element: PDomElement): PDomElement{. + cdecl, dynlib: gtkhtmllib, importc: "html_focus_iterator_next_element".} +proc html_focus_iterator_prev_element*(document: PDomDocument, + element: PDomElement): PDomElement{. + cdecl, dynlib: gtkhtmllib, importc: "html_focus_iterator_prev_element".} +proc HTML_PARSER_TYPE*(): GType +proc HTML_PARSER*(obj: pointer): PHtmlParser +proc HTML_PARSER_CLASS*(klass: pointer): PHtmlParserClass +proc HTML_IS_PARSER*(obj: pointer): bool +proc html_parser_get_type*(): GType +proc html_parser_new*(document: PHtmlDocument, parser_type: THtmlParserType): PHtmlParser +proc HTML_TYPE_STREAM*(): GType +proc HTML_STREAM*(obj: pointer): PHtmlStream +proc HTML_STREAM_CLASS*(klass: pointer): PHtmlStreamClass +proc HTML_IS_STREAM*(obj: pointer): bool +proc HTML_IS_STREAM_CLASS*(klass: pointer): bool +proc HTML_STREAM_GET_CLASS*(obj: pointer): PHtmlStreamClass +proc html_stream_get_type*(): GType{.cdecl, dynlib: gtkhtmllib, + importc: "html_stream_get_type".} +proc html_stream_new*(write_func: THtmlStreamWriteFunc, + close_func: THtmlStreamCloseFunc, user_data: gpointer): PHtmlStream{. + cdecl, dynlib: gtkhtmllib, importc: "html_stream_new".} +proc html_stream_write*(stream: PHtmlStream, buffer: Pgchar, size: guint){. + cdecl, dynlib: gtkhtmllib, importc: "html_stream_write".} +proc html_stream_close*(stream: PHtmlStream){.cdecl, dynlib: gtkhtmllib, + importc: "html_stream_close".} +proc html_stream_destroy*(stream: PHtmlStream){.cdecl, dynlib: gtkhtmllib, + importc: "html_stream_destroy".} +proc html_stream_get_written*(stream: PHtmlStream): gint{.cdecl, + dynlib: gtkhtmllib, importc: "html_stream_get_written".} +proc html_stream_cancel*(stream: PHtmlStream){.cdecl, dynlib: gtkhtmllib, + importc: "html_stream_cancel".} +proc html_stream_set_cancel_func*(stream: PHtmlStream, + abort_func: THtmlStreamCancelFunc, + cancel_data: gpointer){.cdecl, + dynlib: gtkhtmllib, importc: "html_stream_set_cancel_func".} +proc html_stream_get_mime_type*(stream: PHtmlStream): cstring{.cdecl, + dynlib: gtkhtmllib, importc: "html_stream_get_mime_type".} +proc html_stream_set_mime_type*(stream: PHtmlStream, mime_type: cstring){.cdecl, + dynlib: gtkhtmllib, importc: "html_stream_set_mime_type".} +proc html_stream_buffer_new*(close_func: THtmlStreamBufferCloseFunc, + user_data: gpointer): PHtmlStream{.cdecl, + dynlib: gtkhtmllib, importc: "html_stream_buffer_new".} +proc html_event_mouse_move*(view: PHtmlView, event: PGdkEventMotion){.cdecl, + dynlib: gtkhtmllib, importc: "html_event_mouse_move".} +proc html_event_button_press*(view: PHtmlView, button: PGdkEventButton){.cdecl, + dynlib: gtkhtmllib, importc: "html_event_button_press".} +proc html_event_button_release*(view: PHtmlView, event: PGdkEventButton){.cdecl, + dynlib: gtkhtmllib, importc: "html_event_button_release".} +proc html_event_activate*(view: PHtmlView){.cdecl, dynlib: gtkhtmllib, + importc: "html_event_activate".} +proc html_event_key_press*(view: PHtmlView, event: PGdkEventKey): gboolean{. + cdecl, dynlib: gtkhtmllib, importc: "html_event_key_press".} +proc html_event_find_root_box*(self: PHtmlBox, x: gint, y: gint): PHtmlBox{. + cdecl, dynlib: gtkhtmllib, importc: "html_event_find_root_box".} +proc html_selection_start*(view: PHtmlView, event: PGdkEventButton){.cdecl, + dynlib: gtkhtmllib, importc: "html_selection_start".} +proc html_selection_end*(view: PHtmlView, event: PGdkEventButton){.cdecl, + dynlib: gtkhtmllib, importc: "html_selection_end".} +proc html_selection_update*(view: PHtmlView, event: PGdkEventMotion){.cdecl, + dynlib: gtkhtmllib, importc: "html_selection_update".} +proc html_selection_clear*(view: PHtmlView){.cdecl, dynlib: gtkhtmllib, + importc: "html_selection_clear".} +proc html_selection_set*(view: PHtmlView, start: PDomNode, offset: int32, + len: int32){.cdecl, dynlib: gtkhtmllib, + importc: "html_selection_set".} +proc GTK_HTML_CONTEXT_TYPE*(): GType +proc GTK_HTML_CONTEXT*(obj: pointer): PGtkHtmlContext +proc GTK_HTML_CONTEXT_CLASS*(klass: pointer): PGtkHtmlContextClass +proc GTK_HTML_IS_CONTEXT*(obj: pointer): bool +proc GTK_HTML_IS_CONTEXT_CLASS*(klass: pointer): bool +proc gtk_html_context_get_type*(): GType +proc gtk_html_context_get*(): PGtkHtmlContext +proc HTML_TYPE_DOCUMENT*(): GType +proc HTML_DOCUMENT*(obj: pointer): PHtmlDocument +proc HTML_DOCUMENT_CLASS*(klass: pointer): PHtmlDocumentClass +proc HTML_IS_DOCUMENT*(obj: pointer): bool +proc html_document_get_type*(): GType{.cdecl, dynlib: gtkhtmllib, + importc: "html_document_get_type".} +proc html_document_new*(): PHtmlDocument{.cdecl, dynlib: gtkhtmllib, + importc: "html_document_new".} +proc html_document_open_stream*(document: PHtmlDocument, mime_type: Pgchar): gboolean{. + cdecl, dynlib: gtkhtmllib, importc: "html_document_open_stream".} +proc html_document_write_stream*(document: PHtmlDocument, buffer: Pgchar, + len: gint){.cdecl, dynlib: gtkhtmllib, + importc: "html_document_write_stream".} +proc html_document_close_stream*(document: PHtmlDocument){.cdecl, + dynlib: gtkhtmllib, importc: "html_document_close_stream".} +proc html_document_clear*(document: PHtmlDocument){.cdecl, dynlib: gtkhtmllib, + importc: "html_document_clear".} +proc HTML_TYPE_VIEW*(): GType +proc HTML_VIEW*(obj: pointer): PHtmlView +proc HTML_VIEW_CLASS*(klass: pointer): PHtmlViewClass +proc HTML_IS_VIEW*(obj: pointer): bool +proc html_view_get_type*(): GType{.cdecl, dynlib: gtkhtmllib, + importc: "html_view_get_type".} +proc html_view_new*(): PGtkWidget{.cdecl, dynlib: gtkhtmllib, + importc: "html_view_new".} +proc html_view_set_document*(view: PHtmlView, document: PHtmlDocument){.cdecl, + dynlib: gtkhtmllib, importc: "html_view_set_document".} +proc html_view_jump_to_anchor*(view: PHtmlView, anchor: Pgchar){.cdecl, + dynlib: gtkhtmllib, importc: "html_view_jump_to_anchor".} +proc html_view_get_magnification*(view: PHtmlView): gdouble{.cdecl, + dynlib: gtkhtmllib, importc: "html_view_get_magnification".} +proc html_view_set_magnification*(view: PHtmlView, magnification: gdouble){. + cdecl, dynlib: gtkhtmllib, importc: "html_view_set_magnification".} +proc html_view_zoom_in*(view: PHtmlView){.cdecl, dynlib: gtkhtmllib, + importc: "html_view_zoom_in".} +proc html_view_zoom_out*(view: PHtmlView){.cdecl, dynlib: gtkhtmllib, + importc: "html_view_zoom_out".} +proc html_view_zoom_reset*(view: PHtmlView){.cdecl, dynlib: gtkhtmllib, + importc: "html_view_zoom_reset".} +proc DOM_TYPE_NODE*(): GType = + result = dom_node_get_type() + +proc DOM_NODE*(theobject: pointer): PDomNode = + result = G_TYPE_CHECK_INSTANCE_CAST(theobject, DOM_TYPE_NODE(), TDomNode) + +proc DOM_NODE_CLASS*(klass: pointer): PDomNodeClass = + result = G_TYPE_CHECK_CLASS_CAST(klass, DOM_TYPE_NODE(), TDomNodeClass) + +proc DOM_IS_NODE*(theobject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(theobject, DOM_TYPE_NODE()) + +proc DOM_IS_NODE_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, DOM_TYPE_NODE()) + +proc DOM_NODE_GET_CLASS*(obj: pointer): PDomNodeClass = + result = G_TYPE_INSTANCE_GET_CLASS(obj, DOM_TYPE_NODE(), TDomNodeClass) + +proc DOM_TYPE_DOCUMENT*(): GType = + result = dom_document_get_type() + +proc DOM_DOCUMENT*(theobject: pointer): PDomDocument = + result = G_TYPE_CHECK_INSTANCE_CAST(theobject, DOM_TYPE_DOCUMENT(), TDomDocument) + +proc DOM_DOCUMENT_CLASS*(klass: pointer): PDomDocumentClass = + result = G_TYPE_CHECK_CLASS_CAST(klass, DOM_TYPE_DOCUMENT(), TDomDocumentClass) + +proc DOM_IS_DOCUMENT*(theobject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(theobject, DOM_TYPE_DOCUMENT()) + +proc DOM_IS_DOCUMENT_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, DOM_TYPE_DOCUMENT()) + +proc DOM_DOCUMENT_GET_CLASS*(obj: pointer): PDomDocumentClass = + result = G_TYPE_INSTANCE_GET_CLASS(obj, DOM_TYPE_DOCUMENT(), TDomDocumentClass) + +proc HTML_TYPE_FOCUS_ITERATOR*(): GType = + result = html_focus_iterator_get_type() + +proc HTML_FOCUS_ITERATOR*(theobject: pointer): PHtmlFocusIterator = + result = G_TYPE_CHECK_INSTANCE_CAST(theobject, HTML_TYPE_FOCUS_ITERATOR(), + HtmlFocusIterator) + +proc HTML_FOCUS_ITERATOR_CLASS*(klass: pointer): PHtmlFocusIteratorClass = + result = G_TYPE_CHECK_CLASS_CAST(klass, HTML_TYPE_FOCUS_ITERATOR(), + HtmlFocusIteratorClass) + +proc HTML_IS_FOCUS_ITERATOR*(theobject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(theobject, HTML_TYPE_FOCUS_ITERATOR()) + +proc HTML_IS_FOCUS_ITERATOR_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, HTML_TYPE_FOCUS_ITERATOR()) + +proc HTML_FOCUS_ITERATOR_GET_CLASS*(obj: pointer): PHtmlFocusIteratorClass = + result = G_TYPE_INSTANCE_GET_CLASS(obj, HTML_TYPE_FOCUS_ITERATOR(), + HtmlFocusIteratorClass) + +proc HTML_PARSER_TYPE*(): GType = + result = html_parser_get_type() + +proc HTML_PARSER*(obj: pointer): PHtmlParser = + result = GTK_CHECK_CAST(obj, HTML_PARSER_TYPE(), THtmlParser) + +proc HTML_PARSER_CLASS*(klass: pointer): PHtmlParserClass = + result = GTK_CHECK_CLASS_CAST(klass, HTML_PARSER_TYPE(), THtmlParserClass) + +proc HTML_IS_PARSER*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, HTML_PARSER_TYPE()) + +proc HTML_TYPE_STREAM*(): GType = + result = html_stream_get_type() + +proc HTML_STREAM*(obj: pointer): PHtmlStream = + result = PHtmlStream(G_TYPE_CHECK_INSTANCE_CAST(obj, HTML_TYPE_STREAM())) + +proc HTML_STREAM_CLASS*(klass: pointer): PHtmlStreamClass = + result = G_TYPE_CHECK_CLASS_CAST(klass, HTML_TYPE_STREAM()) + +proc HTML_IS_STREAM*(obj: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, HTML_TYPE_STREAM()) + +proc HTML_IS_STREAM_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, HTML_TYPE_STREAM()) + +proc HTML_STREAM_GET_CLASS*(obj: pointer): PHtmlStreamClass = + result = PHtmlStreamClass(G_TYPE_INSTANCE_GET_CLASS(obj, HTML_TYPE_STREAM())) + +proc GTK_HTML_CONTEXT_TYPE*(): GType = + result = gtk_html_context_get_type() + +proc GTK_HTML_CONTEXT*(obj: pointer): PGtkHtmlContext = + result = GTK_CHECK_CAST(obj, GTK_HTML_CONTEXT_TYPE(), TGtkHtmlContext) + +proc GTK_HTML_CONTEXT_CLASS*(klass: pointer): PGtkHtmlContextClass = + result = GTK_CHECK_CLASS_CAST(klass, GTK_HTML_CONTEXT_TYPE(), + TGtkHtmlContextClass) + +proc GTK_HTML_IS_CONTEXT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, GTK_HTML_CONTEXT_TYPE()) + +proc GTK_HTML_IS_CONTEXT_CLASS*(klass: pointer): bool = + result = GTK_CHECK_CLASS_TYPE(klass, GTK_HTML_CONTEXT_TYPE()) + +proc HTML_TYPE_DOCUMENT*(): GType = + result = html_document_get_type() + +proc HTML_DOCUMENT*(obj: pointer): PHtmlDocument = + result = PHtmlDocument(GTK_CHECK_CAST(obj, HTML_TYPE_DOCUMENT())) + +proc HTML_DOCUMENT_CLASS*(klass: pointer): PHtmlDocumentClass = + result = GTK_CHECK_CLASS_CAST(klass, HTML_TYPE_DOCUMENT()) + +proc HTML_IS_DOCUMENT*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, HTML_TYPE_DOCUMENT()) + +proc HTML_TYPE_VIEW*(): GType = + result = html_view_get_type() + +proc HTML_VIEW*(obj: pointer): PHtmlView = + result = PHtmlView(GTK_CHECK_CAST(obj, HTML_TYPE_VIEW())) + +proc HTML_VIEW_CLASS*(klass: pointer): PHtmlViewClass = + result = PHtmlViewClass(GTK_CHECK_CLASS_CAST(klass, HTML_TYPE_VIEW())) + +proc HTML_IS_VIEW*(obj: pointer): bool = + result = GTK_CHECK_TYPE(obj, HTML_TYPE_VIEW()) diff --git a/lib/base/gtk/libglade2.nim b/lib/base/gtk/libglade2.nim new file mode 100755 index 000000000..18e76584b --- /dev/null +++ b/lib/base/gtk/libglade2.nim @@ -0,0 +1,117 @@ +import + glib2, gtk2 + +when defined(win32): + {.define: gtkwin.} + const + LibGladeLib = "libglade-2.0-0.dll" +else: + const + LibGladeLib = "libglade-2.0.so" +type + PLongint* = ptr int32 + PSmallInt* = ptr int16 + PByte* = ptr int8 + PWord* = ptr int16 + PDWord* = ptr int32 + PDouble* = ptr float64 + +proc glade_init*(){.cdecl, dynlib: LibGladeLib, importc: "glade_init".} +proc glade_require*(TheLibrary: cstring){.cdecl, dynlib: LibGladeLib, + importc: "glade_require".} +proc glade_provide*(TheLibrary: cstring){.cdecl, dynlib: LibGladeLib, + importc: "glade_provide".} +type + PGladeXMLPrivate* = pointer + PGladeXML* = ptr TGladeXML + TGladeXML* = object of TGObject + filename*: cstring + priv*: PGladeXMLPrivate + + PGladeXMLClass* = ptr TGladeXMLClass + TGladeXMLClass* = object of TGObjectClass + + TGladeXMLConnectFunc* = proc (handler_name: cstring, anObject: PGObject, + signal_name: cstring, signal_data: cstring, + connect_object: PGObject, after: gboolean, + user_data: gpointer){.cdecl.} + +proc GLADE_TYPE_XML*(): GType +proc GLADE_XML*(obj: pointer): PGladeXML +proc GLADE_XML_CLASS*(klass: pointer): PGladeXMLClass +proc GLADE_IS_XML*(obj: pointer): gboolean +proc GLADE_IS_XML_CLASS*(klass: pointer): gboolean +proc GLADE_XML_GET_CLASS*(obj: pointer): PGladeXMLClass +proc glade_xml_get_type*(): GType{.cdecl, dynlib: LibGladeLib, + importc: "glade_xml_get_type".} +proc glade_xml_new*(fname: cstring, root: cstring, domain: cstring): PGladeXML{. + cdecl, dynlib: LibGladeLib, importc: "glade_xml_new".} +proc glade_xml_new_from_buffer*(buffer: cstring, size: int32, root: cstring, + domain: cstring): PGladeXML{.cdecl, + dynlib: LibGladeLib, importc: "glade_xml_new_from_buffer".} +proc glade_xml_construct*(self: PGladeXML, fname: cstring, root: cstring, + domain: cstring): gboolean{.cdecl, + dynlib: LibGladeLib, importc: "glade_xml_construct".} +proc glade_xml_signal_connect*(self: PGladeXML, handlername: cstring, + func: TGCallback){.cdecl, dynlib: LibGladeLib, + importc: "glade_xml_signal_connect".} +proc glade_xml_signal_connect_data*(self: PGladeXML, handlername: cstring, + func: TGCallback, user_data: gpointer){. + cdecl, dynlib: LibGladeLib, importc: "glade_xml_signal_connect_data".} +proc glade_xml_signal_autoconnect*(self: PGladeXML){.cdecl, dynlib: LibGladeLib, + importc: "glade_xml_signal_autoconnect".} +proc glade_xml_signal_connect_full*(self: PGladeXML, handler_name: cstring, + func: TGladeXMLConnectFunc, + user_data: gpointer){.cdecl, + dynlib: LibGladeLib, importc: "glade_xml_signal_connect_full".} +proc glade_xml_signal_autoconnect_full*(self: PGladeXML, + func: TGladeXMLConnectFunc, + user_data: gpointer){.cdecl, + dynlib: LibGladeLib, importc: "glade_xml_signal_autoconnect_full".} +proc glade_xml_get_widget*(self: PGladeXML, name: cstring): PGtkWidget{.cdecl, + dynlib: LibGladeLib, importc: "glade_xml_get_widget".} +proc glade_xml_get_widget_prefix*(self: PGladeXML, name: cstring): PGList{. + cdecl, dynlib: LibGladeLib, importc: "glade_xml_get_widget_prefix".} +proc glade_xml_relative_file*(self: PGladeXML, filename: cstring): cstring{.cdecl, + dynlib: LibGladeLib, importc: "glade_xml_relative_file".} +proc glade_get_widget_name*(widget: PGtkWidget): cstring{.cdecl, + dynlib: LibGladeLib, importc: "glade_get_widget_name".} +proc glade_get_widget_tree*(widget: PGtkWidget): PGladeXML{.cdecl, + dynlib: LibGladeLib, importc: "glade_get_widget_tree".} +type + PGladeXMLCustomWidgetHandler* = ptr TGladeXMLCustomWidgetHandler + TGladeXMLCustomWidgetHandler* = TGtkWidget + +proc glade_set_custom_handler*(handler: TGladeXMLCustomWidgetHandler, + user_data: gpointer){.cdecl, dynlib: LibGladeLib, + importc: "glade_set_custom_handler".} +proc glade_gnome_init*() = + glade_init() + +proc glade_bonobo_init*() = + glade_init() + +proc glade_xml_new_with_domain*(fname: cstring, root: cstring, domain: cstring): PGladeXML = + result = glade_xml_new(fname, root, domain) + +proc glade_xml_new_from_memory*(buffer: cstring, size: int32, root: cstring, + domain: cstring): PGladeXML = + result = glade_xml_new_from_buffer(buffer, size, root, domain) + +proc GLADE_TYPE_XML*(): GType = + result = glade_xml_get_type() + +proc GLADE_XML*(obj: pointer): PGladeXML = + result = cast[PGladeXML](G_TYPE_CHECK_INSTANCE_CAST(obj, GLADE_TYPE_XML())) + +proc GLADE_XML_CLASS*(klass: pointer): PGladeXMLClass = + result = cast[PGladeXMLClass](G_TYPE_CHECK_CLASS_CAST(klass, GLADE_TYPE_XML())) + +proc GLADE_IS_XML*(obj: pointer): gboolean = + result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GLADE_TYPE_XML()) + +proc GLADE_IS_XML_CLASS*(klass: pointer): gboolean = + result = G_TYPE_CHECK_CLASS_TYPE(klass, GLADE_TYPE_XML()) + +proc GLADE_XML_GET_CLASS*(obj: pointer): PGladeXMLClass = + result = cast[PGladeXMLClass](G_TYPE_INSTANCE_GET_CLASS(obj, GLADE_TYPE_XML())) diff --git a/lib/base/gtk/pango.nim b/lib/base/gtk/pango.nim new file mode 100755 index 000000000..4c6c48bf8 --- /dev/null +++ b/lib/base/gtk/pango.nim @@ -0,0 +1,1209 @@ +import + glib2 + +{.define: PANGO_ENABLE_ENGINE.} +{.define: PANGO_ENABLE_BACKEND.} +when defined(win32): + {.define: pangowin.} + const + pangolib* = "libpango-1.0-0.dll" +else: + const + pangolib* = "libpango-1.0.so.0" +type + PPangoFont* = pointer + PPangoFontFamily* = pointer + PPangoFontset* = pointer + PPangoFontMetrics* = pointer + PPangoFontFace* = pointer + PPangoFontMap* = pointer + PPangoFontsetClass* = pointer + PPangoFontFamilyClass* = pointer + PPangoFontFaceClass* = pointer + PPangoFontClass* = pointer + PPangoFontMapClass* = pointer + PPangoFontDescription* = ptr TPangoFontDescription + TPangoFontDescription* = pointer + PPangoAttrList* = ptr TPangoAttrList + TPangoAttrList* = pointer + PPangoAttrIterator* = ptr TPangoAttrIterator + TPangoAttrIterator* = pointer + PPangoLayout* = ptr TPangoLayout + TPangoLayout* = pointer + PPangoLayoutClass* = ptr TPangoLayoutClass + TPangoLayoutClass* = pointer + PPangoLayoutIter* = ptr TPangoLayoutIter + TPangoLayoutIter* = pointer + PPangoContext* = ptr TPangoContext + TPangoContext* = pointer + PPangoContextClass* = ptr TPangoContextClass + TPangoContextClass* = pointer + PPangoFontsetSimple* = ptr TPangoFontsetSimple + TPangoFontsetSimple* = pointer + PPangoTabArray* = ptr TPangoTabArray + TPangoTabArray* = pointer + PPangoGlyphString* = ptr TPangoGlyphString + PPangoAnalysis* = ptr TPangoAnalysis + PPangoItem* = ptr TPangoItem + PPangoLanguage* = ptr TPangoLanguage + TPangoLanguage* = pointer + PPangoGlyph* = ptr TPangoGlyph + TPangoGlyph* = guint32 + PPangoRectangle* = ptr TPangoRectangle + TPangoRectangle* = record + x*: int32 + y*: int32 + width*: int32 + height*: int32 + + PPangoDirection* = ptr TPangoDirection + TPangoDirection* = enum + PANGO_DIRECTION_LTR, PANGO_DIRECTION_RTL, PANGO_DIRECTION_TTB_LTR, + PANGO_DIRECTION_TTB_RTL + PPangoColor* = ptr TPangoColor + TPangoColor* = record + red*: guint16 + green*: guint16 + blue*: guint16 + + PPangoAttrType* = ptr TPangoAttrType + TPangoAttrType* = int32 + PPangoUnderline* = ptr TPangoUnderline + TPangoUnderline* = int32 + PPangoAttribute* = ptr TPangoAttribute + PPangoAttrClass* = ptr TPangoAttrClass + TPangoAttribute* = record + klass*: PPangoAttrClass + start_index*: int + end_index*: int + + TPangoAttrClass* = record + `type`*: TPangoAttrType + copy*: proc (attr: PPangoAttribute): PPangoAttribute{.cdecl.} + destroy*: proc (attr: PPangoAttribute){.cdecl.} + equal*: proc (attr1: PPangoAttribute, attr2: PPangoAttribute): gboolean{. + cdecl.} + + PPangoAttrString* = ptr TPangoAttrString + TPangoAttrString* = record + attr*: TPangoAttribute + value*: cstring + + PPangoAttrLanguage* = ptr TPangoAttrLanguage + TPangoAttrLanguage* = record + attr*: TPangoAttribute + value*: PPangoLanguage + + PPangoAttrInt* = ptr TPangoAttrInt + TPangoAttrInt* = record + attr*: TPangoAttribute + value*: int32 + + PPangoAttrFloat* = ptr TPangoAttrFloat + TPangoAttrFloat* = record + attr*: TPangoAttribute + value*: gdouble + + PPangoAttrColor* = ptr TPangoAttrColor + TPangoAttrColor* = record + attr*: TPangoAttribute + color*: TPangoColor + + PPangoAttrShape* = ptr TPangoAttrShape + TPangoAttrShape* = record + attr*: TPangoAttribute + ink_rect*: TPangoRectangle + logical_rect*: TPangoRectangle + + PPangoAttrFontDesc* = ptr TPangoAttrFontDesc + TPangoAttrFontDesc* = record + attr*: TPangoAttribute + desc*: PPangoFontDescription + + PPangoLogAttr* = ptr TPangoLogAttr + TPangoLogAttr* = record + flag0*: guint16 + + PPangoCoverageLevel* = ptr TPangoCoverageLevel + TPangoCoverageLevel* = enum + PANGO_COVERAGE_NONE, PANGO_COVERAGE_FALLBACK, PANGO_COVERAGE_APPROXIMATE, + PANGO_COVERAGE_EXACT + PPangoBlockInfo* = ptr TPangoBlockInfo + TPangoBlockInfo* = record + data*: Pguchar + level*: TPangoCoverageLevel + + PPangoCoverage* = ptr TPangoCoverage + TPangoCoverage* = record + ref_count*: int + n_blocks*: int32 + data_size*: int32 + blocks*: PPangoBlockInfo + + PPangoEngineRange* = ptr TPangoEngineRange + TPangoEngineRange* = record + start*: int32 + theEnd*: int32 + langs*: cstring + + PPangoEngineInfo* = ptr TPangoEngineInfo + TPangoEngineInfo* = record + id*: cstring + engine_type*: cstring + render_type*: cstring + ranges*: PPangoEngineRange + n_ranges*: gint + + PPangoEngine* = ptr TPangoEngine + TPangoEngine* = record + id*: cstring + `type`*: cstring + length*: gint + + TPangoEngineLangScriptBreak* = proc (text: cstring, len: int32, + analysis: PPangoAnalysis, + attrs: PPangoLogAttr, attrs_len: int32){. + cdecl.} + PPangoEngineLang* = ptr TPangoEngineLang + TPangoEngineLang* = record + engine*: TPangoEngine + script_break*: TPangoEngineLangScriptBreak + + TPangoEngineShapeScript* = proc (font: PPangoFont, text: cstring, + length: int32, analysis: PPangoAnalysis, + glyphs: PPangoGlyphString){.cdecl.} + TPangoEngineShapeGetCoverage* = proc (font: PPangoFont, + language: PPangoLanguage): PPangoCoverage{. + cdecl.} + PPangoEngineShape* = ptr TPangoEngineShape + TPangoEngineShape* = record + engine*: TPangoEngine + script_shape*: TPangoEngineShapeScript + get_coverage*: TPangoEngineShapeGetCoverage + + PPangoStyle* = ptr TPangoStyle + TPangoStyle* = gint + PPangoVariant* = ptr TPangoVariant + TPangoVariant* = gint + PPangoWeight* = ptr TPangoWeight + TPangoWeight* = gint + PPangoStretch* = ptr TPangoStretch + TPangoStretch* = gint + PPangoFontMask* = ptr TPangoFontMask + TPangoFontMask* = int32 + PPangoGlyphUnit* = ptr TPangoGlyphUnit + TPangoGlyphUnit* = gint32 + PPangoGlyphGeometry* = ptr TPangoGlyphGeometry + TPangoGlyphGeometry* = record + width*: TPangoGlyphUnit + x_offset*: TPangoGlyphUnit + y_offset*: TPangoGlyphUnit + + PPangoGlyphVisAttr* = ptr TPangoGlyphVisAttr + TPangoGlyphVisAttr* = record + flag0*: int16 + + PPangoGlyphInfo* = ptr TPangoGlyphInfo + TPangoGlyphInfo* = record + glyph*: TPangoGlyph + geometry*: TPangoGlyphGeometry + attr*: TPangoGlyphVisAttr + + TPangoGlyphString* = record + num_glyphs*: gint + glyphs*: PPangoGlyphInfo + log_clusters*: Pgint + space*: gint + + TPangoAnalysis* = record + shape_engine*: PPangoEngineShape + lang_engine*: PPangoEngineLang + font*: PPangoFont + level*: guint8 + language*: PPangoLanguage + extra_attrs*: PGSList + + TPangoItem* = record + offset*: gint + length*: gint + num_chars*: gint + analysis*: TPangoAnalysis + + PPangoAlignment* = ptr TPangoAlignment + TPangoAlignment* = enum + PANGO_ALIGN_LEFT, PANGO_ALIGN_CENTER, PANGO_ALIGN_RIGHT + PPangoWrapMode* = ptr TPangoWrapMode + TPangoWrapMode* = enum + PANGO_WRAP_WORD, PANGO_WRAP_CHAR + PPangoLayoutLine* = ptr TPangoLayoutLine + TPangoLayoutLine* = record + layout*: PPangoLayout + start_index*: gint + length*: gint + runs*: PGSList + + PPangoLayoutRun* = ptr TPangoLayoutRun + TPangoLayoutRun* = record + item*: PPangoItem + glyphs*: PPangoGlyphString + + PPangoTabAlign* = ptr TPangoTabAlign + TPangoTabAlign* = enum + PANGO_TAB_LEFT + +const + PANGO_SCALE* = 1024 + +proc PANGO_PIXELS*(d: int): int +proc PANGO_ASCENT*(rect: TPangoRectangle): int32 +proc PANGO_DESCENT*(rect: TPangoRectangle): int32 +proc PANGO_LBEARING*(rect: TPangoRectangle): int32 +proc PANGO_RBEARING*(rect: TPangoRectangle): int32 +proc PANGO_TYPE_LANGUAGE*(): GType +proc pango_language_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_language_get_type".} +proc pango_language_from_string*(language: cstring): PPangoLanguage{.cdecl, + dynlib: pangolib, importc: "pango_language_from_string".} +proc pango_language_to_string*(language: PPangoLanguage): cstring +proc pango_language_matches*(language: PPangoLanguage, range_list: cstring): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_language_matches".} +const + PANGO_ATTR_INVALID* = 0 + PANGO_ATTR_LANGUAGE* = 1 + PANGO_ATTR_FAMILY* = 2 + PANGO_ATTR_STYLE* = 3 + PANGO_ATTR_WEIGHT* = 4 + PANGO_ATTR_VARIANT* = 5 + PANGO_ATTR_STRETCH* = 6 + PANGO_ATTR_SIZE* = 7 + PANGO_ATTR_FONT_DESC* = 8 + PANGO_ATTR_FOREGROUND* = 9 + PANGO_ATTR_BACKGROUND* = 10 + PANGO_ATTR_UNDERLINE* = 11 + PANGO_ATTR_STRIKETHROUGH* = 12 + PANGO_ATTR_RISE* = 13 + PANGO_ATTR_SHAPE* = 14 + PANGO_ATTR_SCALE* = 15 + PANGO_UNDERLINE_NONE* = 0 + PANGO_UNDERLINE_SINGLE* = 1 + PANGO_UNDERLINE_DOUBLE* = 2 + PANGO_UNDERLINE_LOW* = 3 + +proc PANGO_TYPE_COLOR*(): GType +proc pango_color_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_color_get_type".} +proc pango_color_copy*(src: PPangoColor): PPangoColor{.cdecl, dynlib: pangolib, + importc: "pango_color_copy".} +proc pango_color_free*(color: PPangoColor){.cdecl, dynlib: pangolib, + importc: "pango_color_free".} +proc pango_color_parse*(color: PPangoColor, spec: cstring): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_color_parse".} +proc PANGO_TYPE_ATTR_LIST*(): GType +proc pango_attr_type_register*(name: cstring): TPangoAttrType{.cdecl, + dynlib: pangolib, importc: "pango_attr_type_register".} +proc pango_attribute_copy*(attr: PPangoAttribute): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attribute_copy".} +proc pango_attribute_destroy*(attr: PPangoAttribute){.cdecl, dynlib: pangolib, + importc: "pango_attribute_destroy".} +proc pango_attribute_equal*(attr1: PPangoAttribute, attr2: PPangoAttribute): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_attribute_equal".} +proc pango_attr_language_new*(language: PPangoLanguage): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_language_new".} +proc pango_attr_family_new*(family: cstring): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_family_new".} +proc pango_attr_foreground_new*(red: guint16, green: guint16, blue: guint16): PPangoAttribute{. + cdecl, dynlib: pangolib, importc: "pango_attr_foreground_new".} +proc pango_attr_background_new*(red: guint16, green: guint16, blue: guint16): PPangoAttribute{. + cdecl, dynlib: pangolib, importc: "pango_attr_background_new".} +proc pango_attr_size_new*(size: int32): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_size_new".} +proc pango_attr_style_new*(style: TPangoStyle): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_style_new".} +proc pango_attr_weight_new*(weight: TPangoWeight): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_weight_new".} +proc pango_attr_variant_new*(variant: TPangoVariant): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_variant_new".} +proc pango_attr_stretch_new*(stretch: TPangoStretch): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_stretch_new".} +proc pango_attr_font_desc_new*(desc: PPangoFontDescription): PPangoAttribute{. + cdecl, dynlib: pangolib, importc: "pango_attr_font_desc_new".} +proc pango_attr_underline_new*(underline: TPangoUnderline): PPangoAttribute{. + cdecl, dynlib: pangolib, importc: "pango_attr_underline_new".} +proc pango_attr_strikethrough_new*(strikethrough: gboolean): PPangoAttribute{. + cdecl, dynlib: pangolib, importc: "pango_attr_strikethrough_new".} +proc pango_attr_rise_new*(rise: int32): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_rise_new".} +proc pango_attr_shape_new*(ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle): PPangoAttribute{. + cdecl, dynlib: pangolib, importc: "pango_attr_shape_new".} +proc pango_attr_scale_new*(scale_factor: gdouble): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_scale_new".} +proc pango_attr_list_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_attr_list_get_type".} +proc pango_attr_list_new*(): PPangoAttrList{.cdecl, dynlib: pangolib, + importc: "pango_attr_list_new".} +proc pango_attr_list_ref*(list: PPangoAttrList){.cdecl, dynlib: pangolib, + importc: "pango_attr_list_ref".} +proc pango_attr_list_unref*(list: PPangoAttrList){.cdecl, dynlib: pangolib, + importc: "pango_attr_list_unref".} +proc pango_attr_list_copy*(list: PPangoAttrList): PPangoAttrList{.cdecl, + dynlib: pangolib, importc: "pango_attr_list_copy".} +proc pango_attr_list_insert*(list: PPangoAttrList, attr: PPangoAttribute){. + cdecl, dynlib: pangolib, importc: "pango_attr_list_insert".} +proc pango_attr_list_insert_before*(list: PPangoAttrList, attr: PPangoAttribute){. + cdecl, dynlib: pangolib, importc: "pango_attr_list_insert_before".} +proc pango_attr_list_change*(list: PPangoAttrList, attr: PPangoAttribute){. + cdecl, dynlib: pangolib, importc: "pango_attr_list_change".} +proc pango_attr_list_splice*(list: PPangoAttrList, other: PPangoAttrList, + pos: gint, len: gint){.cdecl, dynlib: pangolib, + importc: "pango_attr_list_splice".} +proc pango_attr_list_get_iterator*(list: PPangoAttrList): PPangoAttrIterator{. + cdecl, dynlib: pangolib, importc: "pango_attr_list_get_iterator".} +proc pango_attr_iterator_range*(`iterator`: PPangoAttrIterator, start: Pgint, + theEnd: Pgint){.cdecl, dynlib: pangolib, + importc: "pango_attr_iterator_range".} +proc pango_attr_iterator_next*(`iterator`: PPangoAttrIterator): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_attr_iterator_next".} +proc pango_attr_iterator_copy*(`iterator`: PPangoAttrIterator): PPangoAttrIterator{. + cdecl, dynlib: pangolib, importc: "pango_attr_iterator_copy".} +proc pango_attr_iterator_destroy*(`iterator`: PPangoAttrIterator){.cdecl, + dynlib: pangolib, importc: "pango_attr_iterator_destroy".} +proc pango_attr_iterator_get*(`iterator`: PPangoAttrIterator, + `type`: TPangoAttrType): PPangoAttribute{.cdecl, + dynlib: pangolib, importc: "pango_attr_iterator_get".} +proc pango_attr_iterator_get_font*(`iterator`: PPangoAttrIterator, + desc: PPangoFontDescription, + language: var PPangoLanguage, + extra_attrs: PPGSList){.cdecl, + dynlib: pangolib, importc: "pango_attr_iterator_get_font".} +proc pango_parse_markup*(markup_text: cstring, length: int32, + accel_marker: gunichar, attr_list: var PPangoAttrList, + text: PPchar, accel_char: Pgunichar, error: pointer): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_parse_markup".} +const + bm_TPangoLogAttr_is_line_break* = 0x00000001 + bp_TPangoLogAttr_is_line_break* = 0 + bm_TPangoLogAttr_is_mandatory_break* = 0x00000002 + bp_TPangoLogAttr_is_mandatory_break* = 1 + bm_TPangoLogAttr_is_char_break* = 0x00000004 + bp_TPangoLogAttr_is_char_break* = 2 + bm_TPangoLogAttr_is_white* = 0x00000008 + bp_TPangoLogAttr_is_white* = 3 + bm_TPangoLogAttr_is_cursor_position* = 0x00000010 + bp_TPangoLogAttr_is_cursor_position* = 4 + bm_TPangoLogAttr_is_word_start* = 0x00000020 + bp_TPangoLogAttr_is_word_start* = 5 + bm_TPangoLogAttr_is_word_end* = 0x00000040 + bp_TPangoLogAttr_is_word_end* = 6 + bm_TPangoLogAttr_is_sentence_boundary* = 0x00000080 + bp_TPangoLogAttr_is_sentence_boundary* = 7 + bm_TPangoLogAttr_is_sentence_start* = 0x00000100 + bp_TPangoLogAttr_is_sentence_start* = 8 + bm_TPangoLogAttr_is_sentence_end* = 0x00000200 + bp_TPangoLogAttr_is_sentence_end* = 9 + +proc is_line_break*(a: var TPangoLogAttr): guint +proc set_is_line_break*(a: var TPangoLogAttr, `is_line_break`: guint) +proc is_mandatory_break*(a: var TPangoLogAttr): guint +proc set_is_mandatory_break*(a: var TPangoLogAttr, `is_mandatory_break`: guint) +proc is_char_break*(a: var TPangoLogAttr): guint +proc set_is_char_break*(a: var TPangoLogAttr, `is_char_break`: guint) +proc is_white*(a: var TPangoLogAttr): guint +proc set_is_white*(a: var TPangoLogAttr, `is_white`: guint) +proc is_cursor_position*(a: var TPangoLogAttr): guint +proc set_is_cursor_position*(a: var TPangoLogAttr, `is_cursor_position`: guint) +proc is_word_start*(a: var TPangoLogAttr): guint +proc set_is_word_start*(a: var TPangoLogAttr, `is_word_start`: guint) +proc is_word_end*(a: var TPangoLogAttr): guint +proc set_is_word_end*(a: var TPangoLogAttr, `is_word_end`: guint) +proc is_sentence_boundary*(a: var TPangoLogAttr): guint +proc set_is_sentence_boundary*(a: var TPangoLogAttr, + `is_sentence_boundary`: guint) +proc is_sentence_start*(a: var TPangoLogAttr): guint +proc set_is_sentence_start*(a: var TPangoLogAttr, `is_sentence_start`: guint) +proc is_sentence_end*(a: var TPangoLogAttr): guint +proc set_is_sentence_end*(a: var TPangoLogAttr, `is_sentence_end`: guint) +proc pango_break*(text: cstring, length: int32, analysis: PPangoAnalysis, + attrs: PPangoLogAttr, attrs_len: int32){.cdecl, + dynlib: pangolib, importc: "pango_break".} +proc pango_find_paragraph_boundary*(text: cstring, length: gint, + paragraph_delimiter_index: Pgint, + next_paragraph_start: Pgint){.cdecl, + dynlib: pangolib, importc: "pango_find_paragraph_boundary".} +proc pango_get_log_attrs*(text: cstring, length: int32, level: int32, + language: PPangoLanguage, log_attrs: PPangoLogAttr, + attrs_len: int32){.cdecl, dynlib: pangolib, + importc: "pango_get_log_attrs".} +proc PANGO_TYPE_CONTEXT*(): GType +proc PANGO_CONTEXT*(anObject: pointer): PPangoContext +proc PANGO_CONTEXT_CLASS*(klass: pointer): PPangoContextClass +proc PANGO_IS_CONTEXT*(anObject: pointer): bool +proc PANGO_IS_CONTEXT_CLASS*(klass: pointer): bool +proc PANGO_CONTEXT_GET_CLASS*(obj: PPangoContext): PPangoContextClass +proc pango_context_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_context_get_type".} +proc pango_context_list_families*(context: PPangoContext, + families: openarray[ptr PPangoFontFamily]){.cdecl, + dynlib: pangolib, importc: "pango_context_list_families".} +proc pango_context_load_font*(context: PPangoContext, + desc: PPangoFontDescription): PPangoFont{.cdecl, + dynlib: pangolib, importc: "pango_context_load_font".} +proc pango_context_load_fontset*(context: PPangoContext, + desc: PPangoFontDescription, + language: PPangoLanguage): PPangoFontset{. + cdecl, dynlib: pangolib, importc: "pango_context_load_fontset".} +proc pango_context_get_metrics*(context: PPangoContext, + desc: PPangoFontDescription, + language: PPangoLanguage): PPangoFontMetrics{. + cdecl, dynlib: pangolib, importc: "pango_context_get_metrics".} +proc pango_context_set_font_description*(context: PPangoContext, + desc: PPangoFontDescription){.cdecl, dynlib: pangolib, + importc: "pango_context_set_font_description".} +proc pango_context_get_font_description*(context: PPangoContext): PPangoFontDescription{. + cdecl, dynlib: pangolib, importc: "pango_context_get_font_description".} +proc pango_context_get_language*(context: PPangoContext): PPangoLanguage{.cdecl, + dynlib: pangolib, importc: "pango_context_get_language".} +proc pango_context_set_language*(context: PPangoContext, + language: PPangoLanguage){.cdecl, + dynlib: pangolib, importc: "pango_context_set_language".} +proc pango_context_set_base_dir*(context: PPangoContext, + direction: TPangoDirection){.cdecl, + dynlib: pangolib, importc: "pango_context_set_base_dir".} +proc pango_context_get_base_dir*(context: PPangoContext): TPangoDirection{. + cdecl, dynlib: pangolib, importc: "pango_context_get_base_dir".} +proc pango_itemize*(context: PPangoContext, text: cstring, start_index: int32, + length: int32, attrs: PPangoAttrList, + cached_iter: PPangoAttrIterator): PGList{.cdecl, + dynlib: pangolib, importc: "pango_itemize".} +proc pango_coverage_new*(): PPangoCoverage{.cdecl, dynlib: pangolib, + importc: "pango_coverage_new".} +proc pango_coverage_ref*(coverage: PPangoCoverage): PPangoCoverage{.cdecl, + dynlib: pangolib, importc: "pango_coverage_ref".} +proc pango_coverage_unref*(coverage: PPangoCoverage){.cdecl, dynlib: pangolib, + importc: "pango_coverage_unref".} +proc pango_coverage_copy*(coverage: PPangoCoverage): PPangoCoverage{.cdecl, + dynlib: pangolib, importc: "pango_coverage_copy".} +proc pango_coverage_get*(coverage: PPangoCoverage, index: int32): TPangoCoverageLevel{. + cdecl, dynlib: pangolib, importc: "pango_coverage_get".} +proc pango_coverage_set*(coverage: PPangoCoverage, index: int32, + level: TPangoCoverageLevel){.cdecl, dynlib: pangolib, + importc: "pango_coverage_set".} +proc pango_coverage_max*(coverage: PPangoCoverage, other: PPangoCoverage){. + cdecl, dynlib: pangolib, importc: "pango_coverage_max".} +proc pango_coverage_to_bytes*(coverage: PPangoCoverage, bytes: PPguchar, + n_bytes: var int32){.cdecl, dynlib: pangolib, + importc: "pango_coverage_to_bytes".} +proc pango_coverage_from_bytes*(bytes: Pguchar, n_bytes: int32): PPangoCoverage{. + cdecl, dynlib: pangolib, importc: "pango_coverage_from_bytes".} +proc PANGO_TYPE_FONTSET*(): GType +proc PANGO_FONTSET*(anObject: pointer): PPangoFontset +proc PANGO_IS_FONTSET*(anObject: pointer): bool +proc pango_fontset_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_fontset_get_type".} +proc pango_fontset_get_font*(fontset: PPangoFontset, wc: guint): PPangoFont{. + cdecl, dynlib: pangolib, importc: "pango_fontset_get_font".} +proc pango_fontset_get_metrics*(fontset: PPangoFontset): PPangoFontMetrics{. + cdecl, dynlib: pangolib, importc: "pango_fontset_get_metrics".} +const + PANGO_STYLE_NORMAL* = 0 + PANGO_STYLE_OBLIQUE* = 1 + PANGO_STYLE_ITALIC* = 2 + PANGO_VARIANT_NORMAL* = 0 + PANGO_VARIANT_SMALL_CAPS* = 1 + PANGO_WEIGHT_ULTRALIGHT* = 200 + PANGO_WEIGHT_LIGHT* = 300 + PANGO_WEIGHT_NORMAL* = 400 + PANGO_WEIGHT_BOLD* = 700 + PANGO_WEIGHT_ULTRABOLD* = 800 + PANGO_WEIGHT_HEAVY* = 900 + PANGO_STRETCH_ULTRA_CONDENSED* = 0 + PANGO_STRETCH_EXTRA_CONDENSED* = 1 + PANGO_STRETCH_CONDENSED* = 2 + PANGO_STRETCH_SEMI_CONDENSED* = 3 + PANGO_STRETCH_NORMAL* = 4 + PANGO_STRETCH_SEMI_EXPANDED* = 5 + PANGO_STRETCH_EXPANDED* = 6 + PANGO_STRETCH_EXTRA_EXPANDED* = 7 + PANGO_STRETCH_ULTRA_EXPANDED* = 8 + PANGO_FONT_MASK_FAMILY* = 1 shl 0 + PANGO_FONT_MASK_STYLE* = 1 shl 1 + PANGO_FONT_MASK_VARIANT* = 1 shl 2 + PANGO_FONT_MASK_WEIGHT* = 1 shl 3 + PANGO_FONT_MASK_STRETCH* = 1 shl 4 + PANGO_FONT_MASK_SIZE* = 1 shl 5 + PANGO_SCALE_XX_SMALL* = 0.5787037037036999 + PANGO_SCALE_X_SMALL* = 0.6444444444443999 + PANGO_SCALE_SMALL* = 0.8333333333332999 + PANGO_SCALE_MEDIUM* = 1.0 + PANGO_SCALE_LARGE* = 1.2 + PANGO_SCALE_X_LARGE* = 1.4399999999999 + PANGO_SCALE_XX_LARGE* = 1.728 + +proc PANGO_TYPE_FONT_DESCRIPTION*(): GType +proc pango_font_description_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_font_description_get_type".} +proc pango_font_description_new*(): PPangoFontDescription{.cdecl, + dynlib: pangolib, importc: "pango_font_description_new".} +proc pango_font_description_copy*(desc: PPangoFontDescription): PPangoFontDescription{. + cdecl, dynlib: pangolib, importc: "pango_font_description_copy".} +proc pango_font_description_copy_static*(desc: PPangoFontDescription): PPangoFontDescription{. + cdecl, dynlib: pangolib, importc: "pango_font_description_copy_static".} +proc pango_font_description_hash*(desc: PPangoFontDescription): guint{.cdecl, + dynlib: pangolib, importc: "pango_font_description_hash".} +proc pango_font_description_equal*(desc1: PPangoFontDescription, + desc2: PPangoFontDescription): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_font_description_equal".} +proc pango_font_description_free*(desc: PPangoFontDescription){.cdecl, + dynlib: pangolib, importc: "pango_font_description_free".} +proc pango_font_descriptions_free*(descs: var PPangoFontDescription, + n_descs: int32){.cdecl, dynlib: pangolib, + importc: "pango_font_descriptions_free".} +proc pango_font_description_set_family*(desc: PPangoFontDescription, + family: cstring){.cdecl, + dynlib: pangolib, importc: "pango_font_description_set_family".} +proc pango_font_description_set_family_static*(desc: PPangoFontDescription, + family: cstring){.cdecl, dynlib: pangolib, + importc: "pango_font_description_set_family_static".} +proc pango_font_description_get_family*(desc: PPangoFontDescription): cstring{. + cdecl, dynlib: pangolib, importc: "pango_font_description_get_family".} +proc pango_font_description_set_style*(desc: PPangoFontDescription, + style: TPangoStyle){.cdecl, + dynlib: pangolib, importc: "pango_font_description_set_style".} +proc pango_font_description_get_style*(desc: PPangoFontDescription): TPangoStyle{. + cdecl, dynlib: pangolib, importc: "pango_font_description_get_style".} +proc pango_font_description_set_variant*(desc: PPangoFontDescription, + variant: TPangoVariant){.cdecl, dynlib: pangolib, + importc: "pango_font_description_set_variant".} +proc pango_font_description_get_variant*(desc: PPangoFontDescription): TPangoVariant{. + cdecl, dynlib: pangolib, importc: "pango_font_description_get_variant".} +proc pango_font_description_set_weight*(desc: PPangoFontDescription, + weight: TPangoWeight){.cdecl, + dynlib: pangolib, importc: "pango_font_description_set_weight".} +proc pango_font_description_get_weight*(desc: PPangoFontDescription): TPangoWeight{. + cdecl, dynlib: pangolib, importc: "pango_font_description_get_weight".} +proc pango_font_description_set_stretch*(desc: PPangoFontDescription, + stretch: TPangoStretch){.cdecl, dynlib: pangolib, + importc: "pango_font_description_set_stretch".} +proc pango_font_description_get_stretch*(desc: PPangoFontDescription): TPangoStretch{. + cdecl, dynlib: pangolib, importc: "pango_font_description_get_stretch".} +proc pango_font_description_set_size*(desc: PPangoFontDescription, size: gint){. + cdecl, dynlib: pangolib, importc: "pango_font_description_set_size".} +proc pango_font_description_get_size*(desc: PPangoFontDescription): gint{.cdecl, + dynlib: pangolib, importc: "pango_font_description_get_size".} +proc pango_font_description_set_absolute_size*(desc: PPangoFontDescription, + size: float64){.cdecl, dynlib: pangolib, + importc: "pango_font_description_set_absolute_size".} +proc pango_font_description_get_size_is_absolute*(desc: PPangoFontDescription, + size: float64): gboolean{.cdecl, dynlib: pangolib, importc: "pango_font_description_get_size_is_absolute".} +proc pango_font_description_get_set_fields*(desc: PPangoFontDescription): TPangoFontMask{. + cdecl, dynlib: pangolib, importc: "pango_font_description_get_set_fields".} +proc pango_font_description_unset_fields*(desc: PPangoFontDescription, + to_unset: TPangoFontMask){.cdecl, dynlib: pangolib, + importc: "pango_font_description_unset_fields".} +proc pango_font_description_merge*(desc: PPangoFontDescription, + desc_to_merge: PPangoFontDescription, + replace_existing: gboolean){.cdecl, + dynlib: pangolib, importc: "pango_font_description_merge".} +proc pango_font_description_merge_static*(desc: PPangoFontDescription, + desc_to_merge: PPangoFontDescription, replace_existing: gboolean){.cdecl, + dynlib: pangolib, importc: "pango_font_description_merge_static".} +proc pango_font_description_better_match*(desc: PPangoFontDescription, + old_match: PPangoFontDescription, new_match: PPangoFontDescription): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_font_description_better_match".} +proc pango_font_description_from_string*(str: cstring): PPangoFontDescription{. + cdecl, dynlib: pangolib, importc: "pango_font_description_from_string".} +proc pango_font_description_to_string*(desc: PPangoFontDescription): cstring{. + cdecl, dynlib: pangolib, importc: "pango_font_description_to_string".} +proc pango_font_description_to_filename*(desc: PPangoFontDescription): cstring{. + cdecl, dynlib: pangolib, importc: "pango_font_description_to_filename".} +proc PANGO_TYPE_FONT_METRICS*(): GType +proc pango_font_metrics_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_font_metrics_get_type".} +proc pango_font_metrics_ref*(metrics: PPangoFontMetrics): PPangoFontMetrics{. + cdecl, dynlib: pangolib, importc: "pango_font_metrics_ref".} +proc pango_font_metrics_unref*(metrics: PPangoFontMetrics){.cdecl, + dynlib: pangolib, importc: "pango_font_metrics_unref".} +proc pango_font_metrics_get_ascent*(metrics: PPangoFontMetrics): int32{.cdecl, + dynlib: pangolib, importc: "pango_font_metrics_get_ascent".} +proc pango_font_metrics_get_descent*(metrics: PPangoFontMetrics): int32{.cdecl, + dynlib: pangolib, importc: "pango_font_metrics_get_descent".} +proc pango_font_metrics_get_approximate_char_width*(metrics: PPangoFontMetrics): int32{. + cdecl, dynlib: pangolib, + importc: "pango_font_metrics_get_approximate_char_width".} +proc pango_font_metrics_get_approximate_digit_width*(metrics: PPangoFontMetrics): int32{. + cdecl, dynlib: pangolib, + importc: "pango_font_metrics_get_approximate_digit_width".} +proc PANGO_TYPE_FONT_FAMILY*(): GType +proc PANGO_FONT_FAMILY*(anObject: Pointer): PPangoFontFamily +proc PANGO_IS_FONT_FAMILY*(anObject: Pointer): bool +proc pango_font_family_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_font_family_get_type".} +proc pango_font_family_list_faces*(family: PPangoFontFamily, + faces: var openarray[ptr PPangoFontFace]){. + cdecl, dynlib: pangolib, importc: "pango_font_family_list_faces".} +proc pango_font_family_get_name*(family: PPangoFontFamily): cstring{.cdecl, + dynlib: pangolib, importc: "pango_font_family_get_name".} +proc PANGO_TYPE_FONT_FACE*(): GType +proc PANGO_FONT_FACE*(anObject: pointer): PPangoFontFace +proc PANGO_IS_FONT_FACE*(anObject: pointer): bool +proc pango_font_face_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_font_face_get_type".} +proc pango_font_face_describe*(face: PPangoFontFace): PPangoFontDescription{. + cdecl, dynlib: pangolib, importc: "pango_font_face_describe".} +proc pango_font_face_get_face_name*(face: PPangoFontFace): cstring{.cdecl, + dynlib: pangolib, importc: "pango_font_face_get_face_name".} +proc PANGO_TYPE_FONT*(): GType +proc PANGO_FONT*(anObject: pointer): PPangoFont +proc PANGO_IS_FONT*(anObject: pointer): bool +proc pango_font_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_font_get_type".} +proc pango_font_describe*(font: PPangoFont): PPangoFontDescription{.cdecl, + dynlib: pangolib, importc: "pango_font_describe".} +proc pango_font_get_coverage*(font: PPangoFont, language: PPangoLanguage): PPangoCoverage{. + cdecl, dynlib: pangolib, importc: "pango_font_get_coverage".} +proc pango_font_find_shaper*(font: PPangoFont, language: PPangoLanguage, + ch: guint32): PPangoEngineShape{.cdecl, + dynlib: pangolib, importc: "pango_font_find_shaper".} +proc pango_font_get_metrics*(font: PPangoFont, language: PPangoLanguage): PPangoFontMetrics{. + cdecl, dynlib: pangolib, importc: "pango_font_get_metrics".} +proc pango_font_get_glyph_extents*(font: PPangoFont, glyph: TPangoGlyph, + ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_font_get_glyph_extents".} +proc PANGO_TYPE_FONT_MAP*(): GType +proc PANGO_FONT_MAP*(anObject: pointer): PPangoFontMap +proc PANGO_IS_FONT_MAP*(anObject: pointer): bool +proc pango_font_map_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_font_map_get_type".} +proc pango_font_map_load_font*(fontmap: PPangoFontMap, context: PPangoContext, + desc: PPangoFontDescription): PPangoFont{.cdecl, + dynlib: pangolib, importc: "pango_font_map_load_font".} +proc pango_font_map_load_fontset*(fontmap: PPangoFontMap, + context: PPangoContext, + desc: PPangoFontDescription, + language: PPangoLanguage): PPangoFontset{. + cdecl, dynlib: pangolib, importc: "pango_font_map_load_fontset".} +proc pango_font_map_list_families*(fontmap: PPangoFontMap, + families: var openarray[ptr PPangoFontFamily]){.cdecl, + dynlib: pangolib, importc: "pango_font_map_list_families".} +const + bm_TPangoGlyphVisAttr_is_cluster_start* = 0x00000001 + bp_TPangoGlyphVisAttr_is_cluster_start* = 0 + +proc is_cluster_start*(a: var TPangoGlyphVisAttr): guint +proc set_is_cluster_start*(a: var TPangoGlyphVisAttr, `is_cluster_start`: guint) +proc PANGO_TYPE_GLYPH_STRING*(): GType +proc pango_glyph_string_new*(): PPangoGlyphString{.cdecl, dynlib: pangolib, + importc: "pango_glyph_string_new".} +proc pango_glyph_string_set_size*(`string`: PPangoGlyphString, new_len: gint){. + cdecl, dynlib: pangolib, importc: "pango_glyph_string_set_size".} +proc pango_glyph_string_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_glyph_string_get_type".} +proc pango_glyph_string_copy*(`string`: PPangoGlyphString): PPangoGlyphString{. + cdecl, dynlib: pangolib, importc: "pango_glyph_string_copy".} +proc pango_glyph_string_free*(`string`: PPangoGlyphString){.cdecl, + dynlib: pangolib, importc: "pango_glyph_string_free".} +proc pango_glyph_string_extents*(glyphs: PPangoGlyphString, font: PPangoFont, + ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_glyph_string_extents".} +proc pango_glyph_string_extents_range*(glyphs: PPangoGlyphString, start: int32, + theEnd: int32, font: PPangoFont, + ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_glyph_string_extents_range".} +proc pango_glyph_string_get_logical_widths*(glyphs: PPangoGlyphString, + text: cstring, length: int32, embedding_level: int32, + logical_widths: var int32){.cdecl, dynlib: pangolib, + importc: "pango_glyph_string_get_logical_widths".} +proc pango_glyph_string_index_to_x*(glyphs: PPangoGlyphString, text: cstring, + length: int32, analysis: PPangoAnalysis, + index: int32, trailing: gboolean, + x_pos: var int32){.cdecl, dynlib: pangolib, + importc: "pango_glyph_string_index_to_x".} +proc pango_glyph_string_x_to_index*(glyphs: PPangoGlyphString, text: cstring, + length: int32, analysis: PPangoAnalysis, + x_pos: int32, index, + trailing: var int32){.cdecl, + dynlib: pangolib, importc: "pango_glyph_string_x_to_index".} +proc pango_shape*(text: cstring, length: gint, analysis: PPangoAnalysis, + glyphs: PPangoGlyphString){.cdecl, dynlib: pangolib, + importc: "pango_shape".} +proc pango_reorder_items*(logical_items: PGList): PGList{.cdecl, + dynlib: pangolib, importc: "pango_reorder_items".} +proc pango_item_new*(): PPangoItem{.cdecl, dynlib: pangolib, + importc: "pango_item_new".} +proc pango_item_copy*(item: PPangoItem): PPangoItem{.cdecl, dynlib: pangolib, + importc: "pango_item_copy".} +proc pango_item_free*(item: PPangoItem){.cdecl, dynlib: pangolib, + importc: "pango_item_free".} +proc pango_item_split*(orig: PPangoItem, split_index: int32, split_offset: int32): PPangoItem{. + cdecl, dynlib: pangolib, importc: "pango_item_split".} +proc PANGO_TYPE_LAYOUT*(): GType +proc PANGO_LAYOUT*(anObject: pointer): PPangoLayout +proc PANGO_LAYOUT_CLASS*(klass: pointer): PPangoLayoutClass +proc PANGO_IS_LAYOUT*(anObject: pointer): bool +proc PANGO_IS_LAYOUT_CLASS*(klass: pointer): bool +proc PANGO_LAYOUT_GET_CLASS*(obj: PPangoLayout): PPangoLayoutClass +proc pango_layout_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_layout_get_type".} +proc pango_layout_new*(context: PPangoContext): PPangoLayout{.cdecl, + dynlib: pangolib, importc: "pango_layout_new".} +proc pango_layout_copy*(src: PPangoLayout): PPangoLayout{.cdecl, + dynlib: pangolib, importc: "pango_layout_copy".} +proc pango_layout_get_context*(layout: PPangoLayout): PPangoContext{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_context".} +proc pango_layout_set_attributes*(layout: PPangoLayout, attrs: PPangoAttrList){. + cdecl, dynlib: pangolib, importc: "pango_layout_set_attributes".} +proc pango_layout_get_attributes*(layout: PPangoLayout): PPangoAttrList{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_attributes".} +proc pango_layout_set_text*(layout: PPangoLayout, text: cstring, length: int32){. + cdecl, dynlib: pangolib, importc: "pango_layout_set_text".} +proc pango_layout_get_text*(layout: PPangoLayout): cstring{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_text".} +proc pango_layout_set_markup*(layout: PPangoLayout, markup: cstring, + length: int32){.cdecl, dynlib: pangolib, + importc: "pango_layout_set_markup".} +proc pango_layout_set_markup_with_accel*(layout: PPangoLayout, markup: cstring, + length: int32, accel_marker: gunichar, accel_char: Pgunichar){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_markup_with_accel".} +proc pango_layout_set_font_description*(layout: PPangoLayout, + desc: PPangoFontDescription){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_font_description".} +proc pango_layout_set_width*(layout: PPangoLayout, width: int32){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_width".} +proc pango_layout_get_width*(layout: PPangoLayout): int32{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_width".} +proc pango_layout_set_wrap*(layout: PPangoLayout, wrap: TPangoWrapMode){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_wrap".} +proc pango_layout_get_wrap*(layout: PPangoLayout): TPangoWrapMode{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_wrap".} +proc pango_layout_set_indent*(layout: PPangoLayout, indent: int32){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_indent".} +proc pango_layout_get_indent*(layout: PPangoLayout): int32{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_indent".} +proc pango_layout_set_spacing*(layout: PPangoLayout, spacing: int32){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_spacing".} +proc pango_layout_get_spacing*(layout: PPangoLayout): int32{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_spacing".} +proc pango_layout_set_justify*(layout: PPangoLayout, justify: gboolean){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_justify".} +proc pango_layout_get_justify*(layout: PPangoLayout): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_justify".} +proc pango_layout_set_alignment*(layout: PPangoLayout, + alignment: TPangoAlignment){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_alignment".} +proc pango_layout_get_alignment*(layout: PPangoLayout): TPangoAlignment{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_alignment".} +proc pango_layout_set_tabs*(layout: PPangoLayout, tabs: PPangoTabArray){.cdecl, + dynlib: pangolib, importc: "pango_layout_set_tabs".} +proc pango_layout_get_tabs*(layout: PPangoLayout): PPangoTabArray{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_tabs".} +proc pango_layout_set_single_paragraph_mode*(layout: PPangoLayout, + setting: gboolean){.cdecl, dynlib: pangolib, + importc: "pango_layout_set_single_paragraph_mode".} +proc pango_layout_get_single_paragraph_mode*(layout: PPangoLayout): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_layout_get_single_paragraph_mode".} +proc pango_layout_context_changed*(layout: PPangoLayout){.cdecl, + dynlib: pangolib, importc: "pango_layout_context_changed".} +proc pango_layout_get_log_attrs*(layout: PPangoLayout, attrs: var PPangoLogAttr, + n_attrs: Pgint){.cdecl, dynlib: pangolib, + importc: "pango_layout_get_log_attrs".} +proc pango_layout_index_to_pos*(layout: PPangoLayout, index: int32, + pos: PPangoRectangle){.cdecl, dynlib: pangolib, + importc: "pango_layout_index_to_pos".} +proc pango_layout_get_cursor_pos*(layout: PPangoLayout, index: int32, + strong_pos: PPangoRectangle, + weak_pos: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_get_cursor_pos".} +proc pango_layout_move_cursor_visually*(layout: PPangoLayout, strong: gboolean, + old_index: int32, old_trailing: int32, + direction: int32, new_index, + new_trailing: var int32){.cdecl, + dynlib: pangolib, importc: "pango_layout_move_cursor_visually".} +proc pango_layout_xy_to_index*(layout: PPangoLayout, x: int32, y: int32, + index, trailing: var int32): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_layout_xy_to_index".} +proc pango_layout_get_extents*(layout: PPangoLayout, ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_get_extents".} +proc pango_layout_get_pixel_extents*(layout: PPangoLayout, + ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_get_pixel_extents".} +proc pango_layout_get_size*(layout: PPangoLayout, width: var int32, + height: var int32){.cdecl, dynlib: pangolib, + importc: "pango_layout_get_size".} +proc pango_layout_get_pixel_size*(layout: PPangoLayout, width: var int32, + height: var int32){.cdecl, dynlib: pangolib, + importc: "pango_layout_get_pixel_size".} +proc pango_layout_get_line_count*(layout: PPangoLayout): int32{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_line_count".} +proc pango_layout_get_line*(layout: PPangoLayout, line: int32): PPangoLayoutLine{. + cdecl, dynlib: pangolib, importc: "pango_layout_get_line".} +proc pango_layout_get_lines*(layout: PPangoLayout): PGSList{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_lines".} +proc pango_layout_line_ref*(line: PPangoLayoutLine){.cdecl, dynlib: pangolib, + importc: "pango_layout_line_ref".} +proc pango_layout_line_unref*(line: PPangoLayoutLine){.cdecl, dynlib: pangolib, + importc: "pango_layout_line_unref".} +proc pango_layout_line_x_to_index*(line: PPangoLayoutLine, x_pos: int32, + index: var int32, trailing: var int32): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_layout_line_x_to_index".} +proc pango_layout_line_index_to_x*(line: PPangoLayoutLine, index: int32, + trailing: gboolean, x_pos: var int32){.cdecl, + dynlib: pangolib, importc: "pango_layout_line_index_to_x".} +proc pango_layout_line_get_extents*(line: PPangoLayoutLine, + ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_line_get_extents".} +proc pango_layout_line_get_pixel_extents*(layout_line: PPangoLayoutLine, + ink_rect: PPangoRectangle, logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_line_get_pixel_extents".} +proc pango_layout_get_iter*(layout: PPangoLayout): PPangoLayoutIter{.cdecl, + dynlib: pangolib, importc: "pango_layout_get_iter".} +proc pango_layout_iter_free*(iter: PPangoLayoutIter){.cdecl, dynlib: pangolib, + importc: "pango_layout_iter_free".} +proc pango_layout_iter_get_index*(iter: PPangoLayoutIter): int32{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_index".} +proc pango_layout_iter_get_run*(iter: PPangoLayoutIter): PPangoLayoutRun{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_run".} +proc pango_layout_iter_get_line*(iter: PPangoLayoutIter): PPangoLayoutLine{. + cdecl, dynlib: pangolib, importc: "pango_layout_iter_get_line".} +proc pango_layout_iter_at_last_line*(iter: PPangoLayoutIter): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_at_last_line".} +proc pango_layout_iter_next_char*(iter: PPangoLayoutIter): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_next_char".} +proc pango_layout_iter_next_cluster*(iter: PPangoLayoutIter): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_next_cluster".} +proc pango_layout_iter_next_run*(iter: PPangoLayoutIter): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_next_run".} +proc pango_layout_iter_next_line*(iter: PPangoLayoutIter): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_next_line".} +proc pango_layout_iter_get_char_extents*(iter: PPangoLayoutIter, + logical_rect: PPangoRectangle){.cdecl, dynlib: pangolib, importc: "pango_layout_iter_get_char_extents".} +proc pango_layout_iter_get_cluster_extents*(iter: PPangoLayoutIter, + ink_rect: PPangoRectangle, logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_cluster_extents".} +proc pango_layout_iter_get_run_extents*(iter: PPangoLayoutIter, + ink_rect: PPangoRectangle, + logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_run_extents".} +proc pango_layout_iter_get_line_extents*(iter: PPangoLayoutIter, + ink_rect: PPangoRectangle, logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_line_extents".} +proc pango_layout_iter_get_line_yrange*(iter: PPangoLayoutIter, y0: var int32, + y1: var int32){.cdecl, dynlib: pangolib, + importc: "pango_layout_iter_get_line_yrange".} +proc pango_layout_iter_get_layout_extents*(iter: PPangoLayoutIter, + ink_rect: PPangoRectangle, logical_rect: PPangoRectangle){.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_layout_extents".} +proc pango_layout_iter_get_baseline*(iter: PPangoLayoutIter): int32{.cdecl, + dynlib: pangolib, importc: "pango_layout_iter_get_baseline".} +proc PANGO_TYPE_TAB_ARRAY*(): GType +proc pango_tab_array_new*(initial_size: gint, positions_in_pixels: gboolean): PPangoTabArray{. + cdecl, dynlib: pangolib, importc: "pango_tab_array_new".} +proc pango_tab_array_get_type*(): GType{.cdecl, dynlib: pangolib, + importc: "pango_tab_array_get_type".} +proc pango_tab_array_copy*(src: PPangoTabArray): PPangoTabArray{.cdecl, + dynlib: pangolib, importc: "pango_tab_array_copy".} +proc pango_tab_array_free*(tab_array: PPangoTabArray){.cdecl, dynlib: pangolib, + importc: "pango_tab_array_free".} +proc pango_tab_array_get_size*(tab_array: PPangoTabArray): gint{.cdecl, + dynlib: pangolib, importc: "pango_tab_array_get_size".} +proc pango_tab_array_resize*(tab_array: PPangoTabArray, new_size: gint){.cdecl, + dynlib: pangolib, importc: "pango_tab_array_resize".} +proc pango_tab_array_set_tab*(tab_array: PPangoTabArray, tab_index: gint, + alignment: TPangoTabAlign, location: gint){.cdecl, + dynlib: pangolib, importc: "pango_tab_array_set_tab".} +proc pango_tab_array_get_tab*(tab_array: PPangoTabArray, tab_index: gint, + alignment: PPangoTabAlign, location: Pgint){. + cdecl, dynlib: pangolib, importc: "pango_tab_array_get_tab".} +proc pango_tab_array_get_positions_in_pixels*(tab_array: PPangoTabArray): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_tab_array_get_positions_in_pixels".} +proc PANGO_ASCENT*(rect: TPangoRectangle): int32 = + result = - int(rect.y) + +proc PANGO_DESCENT*(rect: TPangoRectangle): int32 = + result = int(rect.y) + int(rect.height) + +proc PANGO_LBEARING*(rect: TPangoRectangle): int32 = + result = rect.x + +proc PANGO_RBEARING*(rect: TPangoRectangle): int32 = + result = int(rect.x) + (rect.width) + +proc PANGO_TYPE_LANGUAGE*(): GType = + result = pango_language_get_type() + +proc pango_language_to_string*(language: PPangoLanguage): cstring = + result = cast[cstring](language) + +proc PANGO_PIXELS*(d: int): int = + if d >= 0: + result = (d + (PANGO_SCALE div 2)) div PANGO_SCALE + else: + result = (d - (PANGO_SCALE div 2)) div PANGO_SCALE + +proc PANGO_TYPE_COLOR*(): GType = + result = pango_color_get_type() + +proc PANGO_TYPE_ATTR_LIST*(): GType = + result = pango_attr_list_get_type() + +proc is_line_break*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_line_break) shr + bp_TPangoLogAttr_is_line_break + +proc set_is_line_break*(a: var TPangoLogAttr, `is_line_break`: guint) = + a.flag0 = a.flag0 or + ((`is_line_break` shl bp_TPangoLogAttr_is_line_break) and + bm_TPangoLogAttr_is_line_break) + +proc is_mandatory_break*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_mandatory_break) shr + bp_TPangoLogAttr_is_mandatory_break + +proc set_is_mandatory_break*(a: var TPangoLogAttr, `is_mandatory_break`: guint) = + a.flag0 = a.flag0 or + ((`is_mandatory_break` shl bp_TPangoLogAttr_is_mandatory_break) and + bm_TPangoLogAttr_is_mandatory_break) + +proc is_char_break*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_char_break) shr + bp_TPangoLogAttr_is_char_break + +proc set_is_char_break*(a: var TPangoLogAttr, `is_char_break`: guint) = + a.flag0 = a.flag0 or + ((`is_char_break` shl bp_TPangoLogAttr_is_char_break) and + bm_TPangoLogAttr_is_char_break) + +proc is_white*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_white) shr + bp_TPangoLogAttr_is_white + +proc set_is_white*(a: var TPangoLogAttr, `is_white`: guint) = + a.flag0 = a.flag0 or + ((`is_white` shl bp_TPangoLogAttr_is_white) and + bm_TPangoLogAttr_is_white) + +proc is_cursor_position*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_cursor_position) shr + bp_TPangoLogAttr_is_cursor_position + +proc set_is_cursor_position*(a: var TPangoLogAttr, `is_cursor_position`: guint) = + a.flag0 = a.flag0 or + ((`is_cursor_position` shl bp_TPangoLogAttr_is_cursor_position) and + bm_TPangoLogAttr_is_cursor_position) + +proc is_word_start*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_word_start) shr + bp_TPangoLogAttr_is_word_start + +proc set_is_word_start*(a: var TPangoLogAttr, `is_word_start`: guint) = + a.flag0 = a.flag0 or + ((`is_word_start` shl bp_TPangoLogAttr_is_word_start) and + bm_TPangoLogAttr_is_word_start) + +proc is_word_end*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_word_end) shr + bp_TPangoLogAttr_is_word_end + +proc set_is_word_end*(a: var TPangoLogAttr, `is_word_end`: guint) = + a.flag0 = a.flag0 or + ((`is_word_end` shl bp_TPangoLogAttr_is_word_end) and + bm_TPangoLogAttr_is_word_end) + +proc is_sentence_boundary*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_sentence_boundary) shr + bp_TPangoLogAttr_is_sentence_boundary + +proc set_is_sentence_boundary*(a: var TPangoLogAttr, + `is_sentence_boundary`: guint) = + a.flag0 = a.flag0 or + ((`is_sentence_boundary` shl bp_TPangoLogAttr_is_sentence_boundary) and + bm_TPangoLogAttr_is_sentence_boundary) + +proc is_sentence_start*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_sentence_start) shr + bp_TPangoLogAttr_is_sentence_start + +proc set_is_sentence_start*(a: var TPangoLogAttr, `is_sentence_start`: guint) = + a.flag0 = a.flag0 or + ((`is_sentence_start` shl bp_TPangoLogAttr_is_sentence_start) and + bm_TPangoLogAttr_is_sentence_start) + +proc is_sentence_end*(a: var TPangoLogAttr): guint = + result = (a.flag0 and bm_TPangoLogAttr_is_sentence_end) shr + bp_TPangoLogAttr_is_sentence_end + +proc set_is_sentence_end*(a: var TPangoLogAttr, `is_sentence_end`: guint) = + a.flag0 = a.flag0 or + ((`is_sentence_end` shl bp_TPangoLogAttr_is_sentence_end) and + bm_TPangoLogAttr_is_sentence_end) + +proc PANGO_TYPE_CONTEXT*(): GType = + result = pango_context_get_type() + +proc PANGO_CONTEXT*(anObject: pointer): PPangoContext = + result = cast[PPangoContext](G_TYPE_CHECK_INSTANCE_CAST(anObject, PANGO_TYPE_CONTEXT())) + +proc PANGO_CONTEXT_CLASS*(klass: pointer): PPangoContextClass = + result = cast[PPangoContextClass](G_TYPE_CHECK_CLASS_CAST(klass, PANGO_TYPE_CONTEXT())) + +proc PANGO_IS_CONTEXT*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_CONTEXT()) + +proc PANGO_IS_CONTEXT_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_CONTEXT()) + +proc PANGO_CONTEXT_GET_CLASS*(obj: PPangoContext): PPangoContextClass = + result = cast[PPangoContextClass](G_TYPE_INSTANCE_GET_CLASS(obj, PANGO_TYPE_CONTEXT())) + +proc PANGO_TYPE_FONTSET*(): GType = + result = pango_fontset_get_type() + +proc PANGO_FONTSET*(anObject: pointer): PPangoFontset = + result = cast[PPangoFontset](G_TYPE_CHECK_INSTANCE_CAST(anObject, PANGO_TYPE_FONTSET())) + +proc PANGO_IS_FONTSET*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_FONTSET()) + +proc PANGO_FONTSET_CLASS*(klass: pointer): PPangoFontsetClass = + result = cast[PPangoFontsetClass](G_TYPE_CHECK_CLASS_CAST(klass, PANGO_TYPE_FONTSET())) + +proc PANGO_IS_FONTSET_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_FONTSET()) + +proc PANGO_FONTSET_GET_CLASS*(obj: PPangoFontset): PPangoFontsetClass = + result = cast[PPangoFontsetClass](G_TYPE_INSTANCE_GET_CLASS(obj, PANGO_TYPE_FONTSET())) + +proc pango_fontset_simple_get_type(): GType {.importc, cdecl, dynlib: pangolib.} + +proc PANGO_TYPE_FONTSET_SIMPLE*(): GType = + result = pango_fontset_simple_get_type() + +proc PANGO_FONTSET_SIMPLE*(anObject: pointer): PPangoFontsetSimple = + result = cast[PPangoFontsetSimple](G_TYPE_CHECK_INSTANCE_CAST(anObject, + PANGO_TYPE_FONTSET_SIMPLE())) + +proc PANGO_IS_FONTSET_SIMPLE*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_FONTSET_SIMPLE()) + +proc PANGO_TYPE_FONT_DESCRIPTION*(): GType = + result = pango_font_description_get_type() + +proc PANGO_TYPE_FONT_METRICS*(): GType = + result = pango_font_metrics_get_type() + +proc PANGO_TYPE_FONT_FAMILY*(): GType = + result = pango_font_family_get_type() + +proc PANGO_FONT_FAMILY*(anObject: pointer): PPangoFontFamily = + result = cast[PPangoFontFamily](G_TYPE_CHECK_INSTANCE_CAST(anObject, + PANGO_TYPE_FONT_FAMILY())) + +proc PANGO_IS_FONT_FAMILY*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_FONT_FAMILY()) + +proc PANGO_FONT_FAMILY_CLASS*(klass: Pointer): PPangoFontFamilyClass = + result = cast[PPangoFontFamilyClass](G_TYPE_CHECK_CLASS_CAST(klass, + PANGO_TYPE_FONT_FAMILY())) + +proc PANGO_IS_FONT_FAMILY_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_FONT_FAMILY()) + +proc PANGO_FONT_FAMILY_GET_CLASS*(obj: PPangoFontFamily): PPangoFontFamilyClass = + result = cast[PPangoFontFamilyClass](G_TYPE_INSTANCE_GET_CLASS(obj, + PANGO_TYPE_FONT_FAMILY())) + +proc PANGO_TYPE_FONT_FACE*(): GType = + result = pango_font_face_get_type() + +proc PANGO_FONT_FACE*(anObject: Pointer): PPangoFontFace = + result = cast[PPangoFontFace](G_TYPE_CHECK_INSTANCE_CAST(anObject, + PANGO_TYPE_FONT_FACE())) + +proc PANGO_IS_FONT_FACE*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_FONT_FACE()) + +proc PANGO_FONT_FACE_CLASS*(klass: Pointer): PPangoFontFaceClass = + result = cast[PPangoFontFaceClass](G_TYPE_CHECK_CLASS_CAST(klass, + PANGO_TYPE_FONT_FACE())) + +proc PANGO_IS_FONT_FACE_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_FONT_FACE()) + +proc PANGO_FONT_FACE_GET_CLASS*(obj: Pointer): PPangoFontFaceClass = + result = cast[PPangoFontFaceClass](G_TYPE_INSTANCE_GET_CLASS(obj, + PANGO_TYPE_FONT_FACE())) + +proc PANGO_TYPE_FONT*(): GType = + result = pango_font_get_type() + +proc PANGO_FONT*(anObject: Pointer): PPangoFont = + result = cast[PPangoFont](G_TYPE_CHECK_INSTANCE_CAST(anObject, PANGO_TYPE_FONT())) + +proc PANGO_IS_FONT*(anObject: Pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_FONT()) + +proc PANGO_FONT_CLASS*(klass: Pointer): PPangoFontClass = + result = cast[PPangoFontClass](G_TYPE_CHECK_CLASS_CAST(klass, PANGO_TYPE_FONT())) + +proc PANGO_IS_FONT_CLASS*(klass: Pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_FONT()) + +proc PANGO_FONT_GET_CLASS*(obj: PPangoFont): PPangoFontClass = + result = cast[PPangoFontClass](G_TYPE_INSTANCE_GET_CLASS(obj, PANGO_TYPE_FONT())) + +proc PANGO_TYPE_FONT_MAP*(): GType = + result = pango_font_map_get_type() + +proc PANGO_FONT_MAP*(anObject: pointer): PPangoFontmap = + result = cast[PPangoFontmap](G_TYPE_CHECK_INSTANCE_CAST(anObject, + PANGO_TYPE_FONT_MAP())) + +proc PANGO_IS_FONT_MAP*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_FONT_MAP()) + +proc PANGO_FONT_MAP_CLASS*(klass: pointer): PPangoFontMapClass = + result = cast[PPangoFontMapClass](G_TYPE_CHECK_CLASS_CAST(klass, PANGO_TYPE_FONT_MAP())) + +proc PANGO_IS_FONT_MAP_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_FONT_MAP()) + +proc PANGO_FONT_MAP_GET_CLASS*(obj: PPangoFontMap): PPangoFontMapClass = + result = cast[PPangoFontMapClass](G_TYPE_INSTANCE_GET_CLASS(obj, PANGO_TYPE_FONT_MAP())) + +proc is_cluster_start*(a: var TPangoGlyphVisAttr): guint = + result = (a.flag0 and bm_TPangoGlyphVisAttr_is_cluster_start) shr + bp_TPangoGlyphVisAttr_is_cluster_start + +proc set_is_cluster_start*(a: var TPangoGlyphVisAttr, `is_cluster_start`: guint) = + a.flag0 = a.flag0 or + ((`is_cluster_start` shl bp_TPangoGlyphVisAttr_is_cluster_start) and + bm_TPangoGlyphVisAttr_is_cluster_start) + +proc PANGO_TYPE_GLYPH_STRING*(): GType = + result = pango_glyph_string_get_type() + +proc PANGO_TYPE_LAYOUT*(): GType = + result = pango_layout_get_type() + +proc PANGO_LAYOUT*(anObject: pointer): PPangoLayout = + result = cast[PPangoLayout](G_TYPE_CHECK_INSTANCE_CAST(anObject, PANGO_TYPE_LAYOUT())) + +proc PANGO_LAYOUT_CLASS*(klass: pointer): PPangoLayoutClass = + result = cast[PPangoLayoutClass](G_TYPE_CHECK_CLASS_CAST(klass, PANGO_TYPE_LAYOUT())) + +proc PANGO_IS_LAYOUT*(anObject: pointer): bool = + result = G_TYPE_CHECK_INSTANCE_TYPE(anObject, PANGO_TYPE_LAYOUT()) + +proc PANGO_IS_LAYOUT_CLASS*(klass: pointer): bool = + result = G_TYPE_CHECK_CLASS_TYPE(klass, PANGO_TYPE_LAYOUT()) + +proc PANGO_LAYOUT_GET_CLASS*(obj: PPangoLayout): PPangoLayoutClass = + result = cast[PPangoLayoutClass](G_TYPE_INSTANCE_GET_CLASS(obj, PANGO_TYPE_LAYOUT())) + +proc PANGO_TYPE_TAB_ARRAY*(): GType = + result = pango_tab_array_get_type() diff --git a/lib/base/gtk/pangoutils.nim b/lib/base/gtk/pangoutils.nim new file mode 100755 index 000000000..2c328b59a --- /dev/null +++ b/lib/base/gtk/pangoutils.nim @@ -0,0 +1,46 @@ +import + glib2, pango + +type + pint32* = ptr int32 + +proc pango_split_file_list*(str: cstring): PPchar{.cdecl, dynlib: pangolib, + importc: "pango_split_file_list".} +proc pango_trim_string*(str: cstring): cstring{.cdecl, dynlib: pangolib, + importc: "pango_trim_string".} +proc pango_read_line*(stream: TFile, str: PGString): gint{.cdecl, + dynlib: pangolib, importc: "pango_read_line".} +proc pango_skip_space*(pos: PPchar): gboolean{.cdecl, dynlib: pangolib, + importc: "pango_skip_space".} +proc pango_scan_word*(pos: PPchar, OutStr: PGString): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_scan_word".} +proc pango_scan_string*(pos: PPchar, OutStr: PGString): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_scan_string".} +proc pango_scan_int*(pos: PPchar, OutInt: pint32): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_scan_int".} +when defined(PANGO_ENABLE_BACKEND): + proc pango_config_key_get(key: cstring): cstring{.cdecl, dynlib: pangolib, + importc: "pango_config_key_get".} + proc pango_lookup_aliases(fontname: cstring, families: PPPchar, + n_families: pint32){.cdecl, dynlib: pangolib, + importc: "pango_lookup_aliases".} +proc pango_parse_style*(str: cstring, style: PPangoStyle, warn: gboolean): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_parse_style".} +proc pango_parse_variant*(str: cstring, variant: PPangoVariant, warn: gboolean): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_parse_variant".} +proc pango_parse_weight*(str: cstring, weight: PPangoWeight, warn: gboolean): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_parse_weight".} +proc pango_parse_stretch*(str: cstring, stretch: PPangoStretch, warn: gboolean): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_parse_stretch".} +when defined(PANGO_ENABLE_BACKEND): + proc pango_get_sysconf_subdirectory(): cstring{.cdecl, dynlib: pangolib, + importc: "pango_get_sysconf_subdirectory".} + proc pango_get_lib_subdirectory(): cstring{.cdecl, dynlib: pangolib, + importc: "pango_get_lib_subdirectory".} +proc pango_log2vis_get_embedding_levels*(str: Pgunichar, len: int32, + pbase_dir: PPangoDirection, embedding_level_list: Pguint8): gboolean{.cdecl, + dynlib: pangolib, importc: "pango_log2vis_get_embedding_levels".} +proc pango_get_mirror_char*(ch: gunichar, mirrored_ch: Pgunichar): gboolean{. + cdecl, dynlib: pangolib, importc: "pango_get_mirror_char".} +proc pango_language_get_sample_string*(language: PPangoLanguage): cstring{. + cdecl, dynlib: pangolib, importc: "pango_language_get_sample_string".} \ No newline at end of file |