diff --git a/ChangeLog b/ChangeLog index 3ea9d025e..09250a572 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2001-10-05 Mike Kestner + + * defs-parse.pl : A little automation for the binding. The enums and + flags can be painlessly generated from defs files. + * gtk/makefile : use defs-parse.pl to produce generated.cs. + * gtk/.cvsignore : hush generated.cs + * gtk/gtk.defs : unceremoniously ripped from gtk+ HEAD. + * gtk/Window.cs : Killed the WindowType enum which is now generated. + 2001-10-04 Mike Kestner * glib/SimpleSignal.cs : Reworked to parallel SimpleEvent. diff --git a/defs-parse.pl b/defs-parse.pl new file mode 100755 index 000000000..81718058e --- /dev/null +++ b/defs-parse.pl @@ -0,0 +1,54 @@ +#!/usr/bin/perl + +while ($line = ) { + + if ($line =~ /^\(define-(enum|flags) (Gtk|G|Gdk)(\w+)/) { + if (!defined ($namespace)) { + print "// Generated file: Do not modify\n\n"; + print "namespace $2 {\n\n\tusing System;\n\n"; + } elsif ($2 ne $namespace) { + print "}\n\nnamespace $2 {\n\n"; + } + + $type = $1; + $namespace = $2; + $typename = $3; + + foreach $paren ($line =~ /[\(\)]/g) { + ($paren eq "(") ? $nest++ : $nest--; + } + + if ($type eq "flags") { + print "\t[Flags]\n"; + } + print "\tpublic enum $typename {\n"; + + $val = 1; + while ($nest > 0) { + $line = ; + if ($line =~ /\((.*) .*\)/) { + $name = $1; + $name =~ s/^([a-z])/\u\1/; + $name =~ s/\-([a-z])/\u\1/g; + $name =~ s/\-(\d)/\1/g; + if ($type eq "enum") { + print "\t\t$name,\n"; + } else { + print "\t\t$name = $val,\n"; + $val *= 2; + } + } + + foreach $paren ($line =~ /[\(\)]/g) { + ($paren eq "(") ? $nest++ : $nest--; + } + } + + print "\t}\n\n"; + } + +} + +if (defined ($namespace)) { + print "}\n"; +} diff --git a/gtk/.cvsignore b/gtk/.cvsignore index 4e8ac1c1b..d28995576 100755 --- a/gtk/.cvsignore +++ b/gtk/.cvsignore @@ -1,3 +1,4 @@ *.dll *.exe +generated.cs diff --git a/gtk/Window.cs b/gtk/Window.cs index 1c0ca6f09..a382ab6a3 100755 --- a/gtk/Window.cs +++ b/gtk/Window.cs @@ -11,11 +11,6 @@ namespace Gtk { using System.Drawing; using System.Runtime.InteropServices; - public enum WindowType { - TopLevel, - Popup, - } - public class Window : Widget { /// @@ -44,7 +39,7 @@ namespace Gtk { public Window () { - RawObject = gtk_window_new (WindowType.TopLevel); + RawObject = gtk_window_new (WindowType.Toplevel); } /// diff --git a/gtk/gtk.defs b/gtk/gtk.defs new file mode 100644 index 000000000..872e8738b --- /dev/null +++ b/gtk/gtk.defs @@ -0,0 +1,2153 @@ + +;; Generated data (by glib-mkenums) + +; enumerations from "gtkaccelgroup.h" + +(define-flags GtkAccelFlags + (visible GTK_ACCEL_VISIBLE) + (signal-visible GTK_ACCEL_SIGNAL_VISIBLE) + (locked GTK_ACCEL_LOCKED) + (mask GTK_ACCEL_MASK) +) +; enumerations from "gtkcalendar.h" + +(define-flags GtkCalendarDisplayOptions + (show-heading GTK_CALENDAR_SHOW_HEADING) + (show-day-names GTK_CALENDAR_SHOW_DAY_NAMES) + (no-month-change GTK_CALENDAR_NO_MONTH_CHANGE) + (show-week-numbers GTK_CALENDAR_SHOW_WEEK_NUMBERS) + (week-start-monday GTK_CALENDAR_WEEK_START_MONDAY) +) +; enumerations from "gtkclist.h" + +(define-enum GtkCellType + (empty GTK_CELL_EMPTY) + (text GTK_CELL_TEXT) + (pixmap GTK_CELL_PIXMAP) + (pixtext GTK_CELL_PIXTEXT) + (widget GTK_CELL_WIDGET) +) +(define-enum GtkCListDragPos + (none GTK_CLIST_DRAG_NONE) + (before GTK_CLIST_DRAG_BEFORE) + (into GTK_CLIST_DRAG_INTO) + (after GTK_CLIST_DRAG_AFTER) +) +(define-flags GtkButtonAction + (ignored GTK_BUTTON_IGNORED) + (selects GTK_BUTTON_SELECTS) + (drags GTK_BUTTON_DRAGS) + (expands GTK_BUTTON_EXPANDS) +) +; enumerations from "gtkctree.h" + +(define-enum GtkCTreePos + (before GTK_CTREE_POS_BEFORE) + (as-child GTK_CTREE_POS_AS_CHILD) + (after GTK_CTREE_POS_AFTER) +) +(define-enum GtkCTreeLineStyle + (none GTK_CTREE_LINES_NONE) + (solid GTK_CTREE_LINES_SOLID) + (dotted GTK_CTREE_LINES_DOTTED) + (tabbed GTK_CTREE_LINES_TABBED) +) +(define-enum GtkCTreeExpanderStyle + (none GTK_CTREE_EXPANDER_NONE) + (square GTK_CTREE_EXPANDER_SQUARE) + (triangle GTK_CTREE_EXPANDER_TRIANGLE) + (circular GTK_CTREE_EXPANDER_CIRCULAR) +) +(define-enum GtkCTreeExpansionType + (expand GTK_CTREE_EXPANSION_EXPAND) + (expand-recursive GTK_CTREE_EXPANSION_EXPAND_RECURSIVE) + (collapse GTK_CTREE_EXPANSION_COLLAPSE) + (collapse-recursive GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE) + (toggle GTK_CTREE_EXPANSION_TOGGLE) + (toggle-recursive GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE) +) +; enumerations from "gtkcellrenderer.h" + +(define-flags GtkCellRendererState + (selected GTK_CELL_RENDERER_SELECTED) + (prelit GTK_CELL_RENDERER_PRELIT) + (insensitive GTK_CELL_RENDERER_INSENSITIVE) + (sorted GTK_CELL_RENDERER_SORTED) +) +; enumerations from "gtkdebug.h" + +(define-flags GtkDebugFlag + (misc GTK_DEBUG_MISC) + (dnd GTK_DEBUG_DND) + (plugsocket GTK_DEBUG_PLUGSOCKET) + (text GTK_DEBUG_TEXT) + (tree GTK_DEBUG_TREE) + (updates GTK_DEBUG_UPDATES) +) +; enumerations from "gtkdialog.h" + +(define-enum GtkDialogFlags + (modal GTK_DIALOG_MODAL) + (destroy-with-parent GTK_DIALOG_DESTROY_WITH_PARENT) + (no-separator GTK_DIALOG_NO_SEPARATOR) +) +(define-enum GtkResponseType + (none GTK_RESPONSE_NONE) + (reject GTK_RESPONSE_REJECT) + (accept GTK_RESPONSE_ACCEPT) + (delete-event GTK_RESPONSE_DELETE_EVENT) + (ok GTK_RESPONSE_OK) + (cancel GTK_RESPONSE_CANCEL) + (close GTK_RESPONSE_CLOSE) + (yes GTK_RESPONSE_YES) + (no GTK_RESPONSE_NO) + (apply GTK_RESPONSE_APPLY) + (help GTK_RESPONSE_HELP) +) +; enumerations from "gtkdnd.h" + +(define-flags GtkDestDefaults + (motion GTK_DEST_DEFAULT_MOTION) + (highlight GTK_DEST_DEFAULT_HIGHLIGHT) + (drop GTK_DEST_DEFAULT_DROP) + (all GTK_DEST_DEFAULT_ALL) +) +(define-flags GtkTargetFlags + (same-app GTK_TARGET_SAME_APP) + (same-widget GTK_TARGET_SAME_WIDGET) +) +; enumerations from "gtkenums.h" + +(define-enum GtkAnchorType + (center GTK_ANCHOR_CENTER) + (north GTK_ANCHOR_NORTH) + (north-west GTK_ANCHOR_NORTH_WEST) + (north-east GTK_ANCHOR_NORTH_EAST) + (south GTK_ANCHOR_SOUTH) + (south-west GTK_ANCHOR_SOUTH_WEST) + (south-east GTK_ANCHOR_SOUTH_EAST) + (west GTK_ANCHOR_WEST) + (east GTK_ANCHOR_EAST) + (n GTK_ANCHOR_N) + (nw GTK_ANCHOR_NW) + (ne GTK_ANCHOR_NE) + (s GTK_ANCHOR_S) + (sw GTK_ANCHOR_SW) + (se GTK_ANCHOR_SE) + (w GTK_ANCHOR_W) + (e GTK_ANCHOR_E) +) +(define-enum GtkArrowType + (up GTK_ARROW_UP) + (down GTK_ARROW_DOWN) + (left GTK_ARROW_LEFT) + (right GTK_ARROW_RIGHT) +) +(define-flags GtkAttachOptions + (expand GTK_EXPAND) + (shrink GTK_SHRINK) + (fill GTK_FILL) +) +(define-enum GtkButtonBoxStyle + (default-style GTK_BUTTONBOX_DEFAULT_STYLE) + (spread GTK_BUTTONBOX_SPREAD) + (edge GTK_BUTTONBOX_EDGE) + (start GTK_BUTTONBOX_START) + (end GTK_BUTTONBOX_END) +) +(define-enum GtkCurveType + (linear GTK_CURVE_TYPE_LINEAR) + (spline GTK_CURVE_TYPE_SPLINE) + (free GTK_CURVE_TYPE_FREE) +) +(define-enum GtkDeleteType + (chars GTK_DELETE_CHARS) + (word-ends GTK_DELETE_WORD_ENDS) + (words GTK_DELETE_WORDS) + (display-lines GTK_DELETE_DISPLAY_LINES) + (display-line-ends GTK_DELETE_DISPLAY_LINE_ENDS) + (paragraph-ends GTK_DELETE_PARAGRAPH_ENDS) + (paragraphs GTK_DELETE_PARAGRAPHS) + (whitespace GTK_DELETE_WHITESPACE) +) +(define-enum GtkDirectionType + (tab-forward GTK_DIR_TAB_FORWARD) + (tab-backward GTK_DIR_TAB_BACKWARD) + (up GTK_DIR_UP) + (down GTK_DIR_DOWN) + (left GTK_DIR_LEFT) + (right GTK_DIR_RIGHT) +) +(define-enum GtkIconSize + (invalid GTK_ICON_SIZE_INVALID) + (menu GTK_ICON_SIZE_MENU) + (small-toolbar GTK_ICON_SIZE_SMALL_TOOLBAR) + (large-toolbar GTK_ICON_SIZE_LARGE_TOOLBAR) + (button GTK_ICON_SIZE_BUTTON) + (dnd GTK_ICON_SIZE_DND) + (dialog GTK_ICON_SIZE_DIALOG) +) +(define-enum GtkSideType + (top GTK_SIDE_TOP) + (bottom GTK_SIDE_BOTTOM) + (left GTK_SIDE_LEFT) + (right GTK_SIDE_RIGHT) +) +(define-enum GtkTextDirection + (none GTK_TEXT_DIR_NONE) + (ltr GTK_TEXT_DIR_LTR) + (rtl GTK_TEXT_DIR_RTL) +) +(define-enum GtkJustification + (left GTK_JUSTIFY_LEFT) + (right GTK_JUSTIFY_RIGHT) + (center GTK_JUSTIFY_CENTER) + (fill GTK_JUSTIFY_FILL) +) +(define-enum GtkMatchType + (all GTK_MATCH_ALL) + (all-tail GTK_MATCH_ALL_TAIL) + (head GTK_MATCH_HEAD) + (tail GTK_MATCH_TAIL) + (exact GTK_MATCH_EXACT) + (last GTK_MATCH_LAST) +) +(define-enum GtkMenuDirectionType + (parent GTK_MENU_DIR_PARENT) + (child GTK_MENU_DIR_CHILD) + (next GTK_MENU_DIR_NEXT) + (prev GTK_MENU_DIR_PREV) +) +(define-enum GtkMetricType + (pixels GTK_PIXELS) + (inches GTK_INCHES) + (centimeters GTK_CENTIMETERS) +) +(define-enum GtkMovementStep + (logical-positions GTK_MOVEMENT_LOGICAL_POSITIONS) + (visual-positions GTK_MOVEMENT_VISUAL_POSITIONS) + (words GTK_MOVEMENT_WORDS) + (display-lines GTK_MOVEMENT_DISPLAY_LINES) + (display-line-ends GTK_MOVEMENT_DISPLAY_LINE_ENDS) + (paragraphs GTK_MOVEMENT_PARAGRAPHS) + (paragraph-ends GTK_MOVEMENT_PARAGRAPH_ENDS) + (pages GTK_MOVEMENT_PAGES) + (buffer-ends GTK_MOVEMENT_BUFFER_ENDS) +) +(define-enum GtkOrientation + (horizontal GTK_ORIENTATION_HORIZONTAL) + (vertical GTK_ORIENTATION_VERTICAL) +) +(define-enum GtkCornerType + (top-left GTK_CORNER_TOP_LEFT) + (bottom-left GTK_CORNER_BOTTOM_LEFT) + (top-right GTK_CORNER_TOP_RIGHT) + (bottom-right GTK_CORNER_BOTTOM_RIGHT) +) +(define-enum GtkPackType + (start GTK_PACK_START) + (end GTK_PACK_END) +) +(define-enum GtkPathPriorityType + (lowest GTK_PATH_PRIO_LOWEST) + (gtk GTK_PATH_PRIO_GTK) + (application GTK_PATH_PRIO_APPLICATION) + (theme GTK_PATH_PRIO_THEME) + (rc GTK_PATH_PRIO_RC) + (highest GTK_PATH_PRIO_HIGHEST) + (mask GTK_PATH_PRIO_MASK) +) +(define-enum GtkPathType + (widget GTK_PATH_WIDGET) + (widget-class GTK_PATH_WIDGET_CLASS) + (class GTK_PATH_CLASS) +) +(define-enum GtkPolicyType + (always GTK_POLICY_ALWAYS) + (automatic GTK_POLICY_AUTOMATIC) + (never GTK_POLICY_NEVER) +) +(define-enum GtkPositionType + (left GTK_POS_LEFT) + (right GTK_POS_RIGHT) + (top GTK_POS_TOP) + (bottom GTK_POS_BOTTOM) +) +(define-enum GtkPreviewType + (color GTK_PREVIEW_COLOR) + (grayscale GTK_PREVIEW_GRAYSCALE) +) +(define-enum GtkReliefStyle + (normal GTK_RELIEF_NORMAL) + (half GTK_RELIEF_HALF) + (none GTK_RELIEF_NONE) +) +(define-enum GtkResizeMode + (parent GTK_RESIZE_PARENT) + (queue GTK_RESIZE_QUEUE) + (immediate GTK_RESIZE_IMMEDIATE) +) +(define-flags GtkSignalRunType + (first GTK_RUN_FIRST) + (last GTK_RUN_LAST) + (both GTK_RUN_BOTH) + (no-recurse GTK_RUN_NO_RECURSE) + (action GTK_RUN_ACTION) + (no-hooks GTK_RUN_NO_HOOKS) +) +(define-enum GtkScrollType + (none GTK_SCROLL_NONE) + (jump GTK_SCROLL_JUMP) + (step-backward GTK_SCROLL_STEP_BACKWARD) + (step-forward GTK_SCROLL_STEP_FORWARD) + (page-backward GTK_SCROLL_PAGE_BACKWARD) + (page-forward GTK_SCROLL_PAGE_FORWARD) + (step-up GTK_SCROLL_STEP_UP) + (step-down GTK_SCROLL_STEP_DOWN) + (page-up GTK_SCROLL_PAGE_UP) + (page-down GTK_SCROLL_PAGE_DOWN) + (step-left GTK_SCROLL_STEP_LEFT) + (step-right GTK_SCROLL_STEP_RIGHT) + (page-left GTK_SCROLL_PAGE_LEFT) + (page-right GTK_SCROLL_PAGE_RIGHT) + (start GTK_SCROLL_START) + (end GTK_SCROLL_END) +) +(define-enum GtkSelectionMode + (single GTK_SELECTION_SINGLE) + (browse GTK_SELECTION_BROWSE) + (multiple GTK_SELECTION_MULTIPLE) + (extended GTK_SELECTION_EXTENDED) +) +(define-enum GtkShadowType + (none GTK_SHADOW_NONE) + (in GTK_SHADOW_IN) + (out GTK_SHADOW_OUT) + (etched-in GTK_SHADOW_ETCHED_IN) + (etched-out GTK_SHADOW_ETCHED_OUT) +) +(define-enum GtkStateType + (normal GTK_STATE_NORMAL) + (active GTK_STATE_ACTIVE) + (prelight GTK_STATE_PRELIGHT) + (selected GTK_STATE_SELECTED) + (insensitive GTK_STATE_INSENSITIVE) +) +(define-enum GtkSubmenuDirection + (left GTK_DIRECTION_LEFT) + (right GTK_DIRECTION_RIGHT) +) +(define-enum GtkSubmenuPlacement + (top-bottom GTK_TOP_BOTTOM) + (left-right GTK_LEFT_RIGHT) +) +(define-enum GtkToolbarStyle + (icons GTK_TOOLBAR_ICONS) + (text GTK_TOOLBAR_TEXT) + (both GTK_TOOLBAR_BOTH) + (both-horiz GTK_TOOLBAR_BOTH_HORIZ) +) +(define-enum GtkUpdateType + (continuous GTK_UPDATE_CONTINUOUS) + (discontinuous GTK_UPDATE_DISCONTINUOUS) + (delayed GTK_UPDATE_DELAYED) +) +(define-enum GtkVisibility + (none GTK_VISIBILITY_NONE) + (partial GTK_VISIBILITY_PARTIAL) + (full GTK_VISIBILITY_FULL) +) +(define-enum GtkWindowPosition + (none GTK_WIN_POS_NONE) + (center GTK_WIN_POS_CENTER) + (mouse GTK_WIN_POS_MOUSE) + (center-always GTK_WIN_POS_CENTER_ALWAYS) + (center-on-parent GTK_WIN_POS_CENTER_ON_PARENT) +) +(define-enum GtkWindowType + (toplevel GTK_WINDOW_TOPLEVEL) + (popup GTK_WINDOW_POPUP) +) +(define-enum GtkWrapMode + (none GTK_WRAP_NONE) + (char GTK_WRAP_CHAR) + (word GTK_WRAP_WORD) +) +(define-enum GtkSortType + (ascending GTK_SORT_ASCENDING) + (descending GTK_SORT_DESCENDING) +) +; enumerations from "gtkimage.h" + +(define-enum GtkImageType + (empty GTK_IMAGE_EMPTY) + (pixmap GTK_IMAGE_PIXMAP) + (image GTK_IMAGE_IMAGE) + (pixbuf GTK_IMAGE_PIXBUF) + (stock GTK_IMAGE_STOCK) + (icon-set GTK_IMAGE_ICON_SET) + (animation GTK_IMAGE_ANIMATION) +) +; enumerations from "gtkmessagedialog.h" + +(define-enum GtkMessageType + (info GTK_MESSAGE_INFO) + (warning GTK_MESSAGE_WARNING) + (question GTK_MESSAGE_QUESTION) + (error GTK_MESSAGE_ERROR) +) +(define-enum GtkButtonsType + (none GTK_BUTTONS_NONE) + (ok GTK_BUTTONS_OK) + (close GTK_BUTTONS_CLOSE) + (cancel GTK_BUTTONS_CANCEL) + (yes-no GTK_BUTTONS_YES_NO) + (ok-cancel GTK_BUTTONS_OK_CANCEL) +) +; enumerations from "gtknotebook.h" + +(define-enum GtkNotebookTab + (first GTK_NOTEBOOK_TAB_FIRST) + (last GTK_NOTEBOOK_TAB_LAST) +) +; enumerations from "gtkobject.h" + +(define-flags GtkObjectFlags + (destroyed GTK_DESTROYED) + (floating GTK_FLOATING) + (reserved-1 GTK_RESERVED_1) + (reserved-2 GTK_RESERVED_2) +) +(define-flags GtkArgFlags + (readable GTK_ARG_READABLE) + (writable GTK_ARG_WRITABLE) + (construct GTK_ARG_CONSTRUCT) + (construct-only GTK_ARG_CONSTRUCT_ONLY) + (child-arg GTK_ARG_CHILD_ARG) +) +; enumerations from "gtkprivate.h" + +(define-flags GtkPrivateFlags + (user-style PRIVATE_GTK_USER_STYLE) + (resize-pending PRIVATE_GTK_RESIZE_PENDING) + (resize-needed PRIVATE_GTK_RESIZE_NEEDED) + (leave-pending PRIVATE_GTK_LEAVE_PENDING) + (has-shape-mask PRIVATE_GTK_HAS_SHAPE_MASK) + (in-reparent PRIVATE_GTK_IN_REPARENT) + (direction-set PRIVATE_GTK_DIRECTION_SET) + (direction-ltr PRIVATE_GTK_DIRECTION_LTR) + (anchored PRIVATE_GTK_ANCHORED) + (child-visible PRIVATE_GTK_CHILD_VISIBLE) +) +; enumerations from "gtkprogressbar.h" + +(define-enum GtkProgressBarStyle + (continuous GTK_PROGRESS_CONTINUOUS) + (discrete GTK_PROGRESS_DISCRETE) +) +(define-enum GtkProgressBarOrientation + (left-to-right GTK_PROGRESS_LEFT_TO_RIGHT) + (right-to-left GTK_PROGRESS_RIGHT_TO_LEFT) + (bottom-to-top GTK_PROGRESS_BOTTOM_TO_TOP) + (top-to-bottom GTK_PROGRESS_TOP_TO_BOTTOM) +) +; enumerations from "gtkrc.h" + +(define-flags GtkRcFlags + (fg GTK_RC_FG) + (bg GTK_RC_BG) + (text GTK_RC_TEXT) + (base GTK_RC_BASE) +) +(define-enum GtkRcTokenType + (invalid GTK_RC_TOKEN_INVALID) + (include GTK_RC_TOKEN_INCLUDE) + (normal GTK_RC_TOKEN_NORMAL) + (active GTK_RC_TOKEN_ACTIVE) + (prelight GTK_RC_TOKEN_PRELIGHT) + (selected GTK_RC_TOKEN_SELECTED) + (insensitive GTK_RC_TOKEN_INSENSITIVE) + (fg GTK_RC_TOKEN_FG) + (bg GTK_RC_TOKEN_BG) + (text GTK_RC_TOKEN_TEXT) + (base GTK_RC_TOKEN_BASE) + (xthickness GTK_RC_TOKEN_XTHICKNESS) + (ythickness GTK_RC_TOKEN_YTHICKNESS) + (font GTK_RC_TOKEN_FONT) + (fontset GTK_RC_TOKEN_FONTSET) + (font-name GTK_RC_TOKEN_FONT_NAME) + (bg-pixmap GTK_RC_TOKEN_BG_PIXMAP) + (pixmap-path GTK_RC_TOKEN_PIXMAP_PATH) + (style GTK_RC_TOKEN_STYLE) + (binding GTK_RC_TOKEN_BINDING) + (bind GTK_RC_TOKEN_BIND) + (widget GTK_RC_TOKEN_WIDGET) + (widget-class GTK_RC_TOKEN_WIDGET_CLASS) + (class GTK_RC_TOKEN_CLASS) + (lowest GTK_RC_TOKEN_LOWEST) + (gtk GTK_RC_TOKEN_GTK) + (application GTK_RC_TOKEN_APPLICATION) + (theme GTK_RC_TOKEN_THEME) + (rc GTK_RC_TOKEN_RC) + (highest GTK_RC_TOKEN_HIGHEST) + (engine GTK_RC_TOKEN_ENGINE) + (module-path GTK_RC_TOKEN_MODULE_PATH) + (im-module-path GTK_RC_TOKEN_IM_MODULE_PATH) + (im-module-file GTK_RC_TOKEN_IM_MODULE_FILE) + (stock GTK_RC_TOKEN_STOCK) + (ltr GTK_RC_TOKEN_LTR) + (rtl GTK_RC_TOKEN_RTL) + (last GTK_RC_TOKEN_LAST) +) +; enumerations from "gtksizegroup.h" + +(define-enum GtkSizeGroupMode + (none GTK_SIZE_GROUP_NONE) + (horizontal GTK_SIZE_GROUP_HORIZONTAL) + (vertical GTK_SIZE_GROUP_VERTICAL) + (both GTK_SIZE_GROUP_BOTH) +) +; enumerations from "gtkspinbutton.h" + +(define-enum GtkSpinButtonUpdatePolicy + (always GTK_UPDATE_ALWAYS) + (if-valid GTK_UPDATE_IF_VALID) +) +(define-enum GtkSpinType + (step-forward GTK_SPIN_STEP_FORWARD) + (step-backward GTK_SPIN_STEP_BACKWARD) + (page-forward GTK_SPIN_PAGE_FORWARD) + (page-backward GTK_SPIN_PAGE_BACKWARD) + (home GTK_SPIN_HOME) + (end GTK_SPIN_END) + (user-defined GTK_SPIN_USER_DEFINED) +) +; enumerations from "gtktextview.h" + +(define-enum GtkTextWindowType + (private GTK_TEXT_WINDOW_PRIVATE) + (widget GTK_TEXT_WINDOW_WIDGET) + (text GTK_TEXT_WINDOW_TEXT) + (left GTK_TEXT_WINDOW_LEFT) + (right GTK_TEXT_WINDOW_RIGHT) + (top GTK_TEXT_WINDOW_TOP) + (bottom GTK_TEXT_WINDOW_BOTTOM) +) +; enumerations from "gtktoolbar.h" + +(define-enum GtkToolbarChildType + (space GTK_TOOLBAR_CHILD_SPACE) + (button GTK_TOOLBAR_CHILD_BUTTON) + (togglebutton GTK_TOOLBAR_CHILD_TOGGLEBUTTON) + (radiobutton GTK_TOOLBAR_CHILD_RADIOBUTTON) + (widget GTK_TOOLBAR_CHILD_WIDGET) +) +(define-enum GtkToolbarSpaceStyle + (empty GTK_TOOLBAR_SPACE_EMPTY) + (line GTK_TOOLBAR_SPACE_LINE) +) +; enumerations from "gtktree.h" + +(define-enum GtkTreeViewMode + (line GTK_TREE_VIEW_LINE) + (item GTK_TREE_VIEW_ITEM) +) +; enumerations from "gtktreemodel.h" + +(define-flags GtkTreeModelFlags + (iters-persist GTK_TREE_MODEL_ITERS_PERSIST) + (list-only GTK_TREE_MODEL_LIST_ONLY) +) +; enumerations from "gtktreeselection.h" + +(define-enum GtkTreeSelectionMode + (single GTK_TREE_SELECTION_SINGLE) + (multi GTK_TREE_SELECTION_MULTI) +) +; enumerations from "gtktreesortable.h" + +(define-enum GtkTreeSortOrder + (ascending GTK_TREE_SORT_ASCENDING) + (descending GTK_TREE_SORT_DESCENDING) +) +; enumerations from "gtktreeview.h" + +(define-enum GtkTreeViewDropPosition + (before GTK_TREE_VIEW_DROP_BEFORE) + (after GTK_TREE_VIEW_DROP_AFTER) + (into-or-before GTK_TREE_VIEW_DROP_INTO_OR_BEFORE) + (into-or-after GTK_TREE_VIEW_DROP_INTO_OR_AFTER) +) +; enumerations from "gtktreeviewcolumn.h" + +(define-enum GtkTreeViewColumnSizing + (resizable GTK_TREE_VIEW_COLUMN_RESIZABLE) + (autosize GTK_TREE_VIEW_COLUMN_AUTOSIZE) + (fixed GTK_TREE_VIEW_COLUMN_FIXED) +) +; enumerations from "gtkwidget.h" + +(define-flags GtkWidgetFlags + (toplevel GTK_TOPLEVEL) + (no-window GTK_NO_WINDOW) + (realized GTK_REALIZED) + (mapped GTK_MAPPED) + (visible GTK_VISIBLE) + (sensitive GTK_SENSITIVE) + (parent-sensitive GTK_PARENT_SENSITIVE) + (can-focus GTK_CAN_FOCUS) + (has-focus GTK_HAS_FOCUS) + (can-default GTK_CAN_DEFAULT) + (has-default GTK_HAS_DEFAULT) + (has-grab GTK_HAS_GRAB) + (rc-style GTK_RC_STYLE) + (composite-child GTK_COMPOSITE_CHILD) + (no-reparent GTK_NO_REPARENT) + (app-paintable GTK_APP_PAINTABLE) + (receives-default GTK_RECEIVES_DEFAULT) + (double-buffered GTK_DOUBLE_BUFFERED) +) +(define-enum GtkWidgetHelpType + (tooltip GTK_WIDGET_HELP_TOOLTIP) + (whats-this GTK_WIDGET_HELP_WHATS_THIS) +) + +;; Generated data ends here + +;; -*- scheme -*- + + +;;; +;;; manual portion from gtk-boxed.defs +;;; + + + +;;; Gtk boxed types + +(define-boxed GtkAccelGroup + gtk_accel_group_ref + gtk_accel_group_unref) + +(define-boxed GtkBorder + gtk_border_copy + gtk_border_free + "sizeof(GtkBorder)") + +(define-boxed GtkSelectionData + gtk_selection_data_copy + gtk_selection_data_free) + +(define-boxed GtkRequisition + gtk_requisition_copy + gtk_requisition_free + "sizeof(GtkRequisition)") + +;; TextView + +(define-boxed GtkTextIter + gtk_text_iter_copy + gtk_text_iter_free) + +(define-boxed GtkTextAttributes + gtk_text_attributes_ref + gtk_text_attributes_unref) + +;; TreeView +(define-boxed GtkTreeIter + gtk_tree_iter_copy + gtk_tree_iter_free) + +(define-boxed GtkTreePath + gtk_tree_path_copy + gtk_tree_path_free) + +;;; Gdk boxed types + + ;(define-boxed GdkPoint + ; gdk_point_copy + ; gdk_point_destroy) + +;(define-boxed GdkVisual +; gdk_visual_ref +; gdk_visual_unref) + +;(define-boxed GdkFont +; gdk_font_ref +; gdk_font_unref) + +;(define-boxed GdkEvent +; gdk_event_copy +; gdk_event_free +; "sizeof(GdkEvent)") + +;(define-boxed GdkColor +; gdk_color_copy +; gdk_color_free +; "sizeof(GdkColor)") + +(define-func gtk_style_get_white_interp + GdkColor + ((GtkStyle style))) + +;;; Functions + +;; Gdk + +(define-func gdk_font_load + GdkFont + ((string name))) + +;; main + +(define-func gtk_exit + none + ((int code (= "0")))) + +(define-func gtk_main + none + ()) + +(define-func gtk_main_quit + none + ()) + +(define-func gtk_main_iteration + bool + ()) + +(define-func gtk_timeout_add_interp + int + ((int interval) + (callback function))) + +(define-func gtk_timeout_remove + none + ((int tag))) + +(define-func gtk_idle_add_interp + int + ((callback function))) + +(define-func gtk_idle_remove + none + ((int tag))) + +(define-func gtk_input_add_interp + int + ((int source) + (GdkInputCondition condition) + (callback callback))) + +(define-func gtk_input_remove + none + ((int tag))) + +(define-func gtk_rc_parse + none + ((string file))) + +(define-func g_mem_chunk_info + none + ()) + +;; GtkObject + +(define-func gtk_object_destroy + none + ((GtkObject object))) + +;; Signals + +(define-func gtk_signal_connect_interp + int + ((GtkObject object) + (string name) + (callback func) + (bool after (= "0")))) + +;; GtkWidget + +(define-object GtkWidget (GtkObject) + (fields + (GtkStyle style))) + +(define-func gtk_grab_add + none + ((GtkWidget widget))) + +(define-func gtk_grab_remove + none + ((GtkWidget widget))) + +(define-func GTK_WIDGET_STATE + GtkStateType + ((GtkWidget widget))) + +(define-func GTK_WIDGET_FLAGS + GtkWidgetFlags + ((GtkWidget widget))) + +(define-func GTK_WIDGET_SET_FLAGS + none + ((GtkWidget widget) + (GtkWidgetFlags flags))) + +(define-func GTK_WIDGET_UNSET_FLAGS + none + ((GtkWidget widget) + (GtkWidgetFlags flags))) + +(define-func gtk_widget_destroy + none + ((GtkWidget widget))) + +(define-func gtk_widget_unparent + none + ((GtkWidget widget))) + +(define-func gtk_widget_show + none + ((GtkWidget widget))) + +(define-func gtk_widget_hide + none + ((GtkWidget widget))) + +(define-func gtk_widget_map + none + ((GtkWidget widget))) + +(define-func gtk_widget_unmap + none + ((GtkWidget widget))) + +(define-func gtk_widget_realize + none + ((GtkWidget widget))) + +(define-func gtk_widget_unrealize + none + ((GtkWidget widget))) + +(define-func gtk_widget_add_accelerator + none + ((GtkWidget widget) + (string accel_signal) + (GtkAccelGroup accel_group) + (guint accel_key) + (guint accel_mods) + (GtkAccelFlags accel_flags))) + +(define-func gtk_widget_remove_accelerator + none + ((GtkWidget widget) + (GtkAccelGroup accel_group) + (guint accel_key) + (guint accel_mods))) + +(define-func gtk_widget_event + bool + ((GtkWidget widget) + (GdkEvent event))) + +(define-func gtk_widget_activate + none + ((GtkWidget widget))) + +(define-func gtk_widget_reparent + none + ((GtkWidget widget) + (GtkWidget new_parent))) + +(define-func gtk_widget_popup + none + ((GtkWidget widget) + (int x) + (int y))) + +(define-func gtk_widget_basic + bool + ((GtkWidget widget))) + +(define-func gtk_widget_grab_focus + none + ((GtkWidget widget))) + +(define-func gtk_widget_grab_default + none + ((GtkWidget widget))) + +(define-func gtk_widget_restore_state + none + ((GtkWidget widget))) + +(define-func gtk_widget_set_name + none + ((GtkWidget widget) + (string name))) + +(define-func gtk_widget_get_name + static_string + ((GtkWidget widget))) + +(define-func gtk_widget_set_state + none + ((GtkWidget widget) + (GtkStateType state))) + +(define-func gtk_widget_set_sensitive + none + ((GtkWidget widget) + (bool sensitive))) + +(define-func gtk_widget_set_style + none + ((GtkWidget widget) + (GtkStyle style))) + +(define-func gtk_widget_set_uposition + none + ((GtkWidget widget) + (int x) + (int y))) + +(define-func gtk_widget_set_usize + none + ((GtkWidget widget) + (int height) + (int width))) + +(define-func gtk_widget_set_events + none + ((GtkWidget widget) + (GdkEventMask events))) + +(define-func gtk_widget_set_extension_events + none + ((GtkWidget widget) + (GdkEventMask events))) + +(define-func gtk_widget_get_toplevel + GtkWidget + ((GtkWidget widget))) + + ;(define-func gtk_widget_get_ancestor + ; GtkWidget + ; ((GtkWidget widget) + ; (GtkType type))) + +(define-func gtk_widget_get_colormap + GdkColormap + ((GtkWidget widget))) + +(define-func gtk_widget_get_visual + GdkVisual + ((GtkWidget widget))) + +(define-func gtk_widget_get_style + GtkStyle + ((GtkWidget widget))) + +(define-func gtk_widget_get_events + GdkEventMask + ((GtkWidget widget))) + +(define-func gtk_widget_get_extension_events + GdkEventMask + ((GtkWidget widget))) + +(define-func gtk_widget_push_colormap + none + ((GdkColormap cmap))) + +(define-func gtk_widget_push_visual + none + ((GdkVisual visual))) + +(define-func gtk_widget_push_style + none + ((GtkStyle style))) + +(define-func gtk_widget_pop_colormap + none + ()) + +(define-func gtk_widget_pop_visual + none + ()) + +(define-func gtk_widget_pop_style + none + ()) + +(define-func gtk_widget_set_default_colormap + none + ((GdkColormap cmap))) + +(define-func gtk_widget_set_default_visual + none + ((GdkVisual visual))) + +(define-func gtk_widget_set_default_style + none + ((GtkStyle style))) + +(define-func gtk_widget_get_default_colormap + GdkColormap + ()) + +(define-func gtk_widget_get_default_visual + GdkVisual + ()) + +(define-func gtk_widget_get_default_style + GtkStyle + ()) + +;;; Container + +(define-object GtkContainer (GtkWidget)) + +(define-func gtk_container_border_width + none + ((GtkContainer container) + (int border_width))) + +(define-func gtk_container_add + none + ((GtkContainer container) + (GtkWidget widget))) + +(define-func gtk_container_remove + none + ((GtkContainer container) + (GtkWidget widget))) + +(define-func gtk_container_disable_resize + none + ((GtkContainer container))) + +(define-func gtk_container_enable_resize + none + ((GtkContainer container))) + +(define-func gtk_container_block_resize + none + ((GtkContainer container))) + +(define-func gtk_container_unblock_resize + none + ((GtkContainer container))) + +(define-func gtk_container_need_resize + bool + ((GtkContainer container))) + +(define-func gtk_container_focus + GtkDirectionType + ((GtkContainer container) + (GtkDirectionType direction))) + +;;; Bin + +(define-object GtkBin (GtkContainer)) + +;;; Window + +(define-object GtkWindow (GtkBin)) + +(define-func gtk_window_new + GtkWidget + ((GtkWindowType type))) + +(define-func gtk_window_set_title + none + ((GtkWindow window) + (string title))) + +(define-func gtk_window_set_focus + none + ((GtkWindow window) + (GtkWidget focus))) + +(define-func gtk_window_set_default + none + ((GtkWindow window) + (GtkWidget default))) + +(define-func gtk_window_set_policy + none + ((GtkWindow window) + (bool allow_shrink) + (bool allow_grow) + (bool auto_shrink))) + +(define-func gtk_window_add_accel_group + none + ((GtkWindow window) + (GtkAccelGroup accel_group))) + +(define-func gtk_window_remove_accel_group + none + ((GtkWindow window) + (GtkAccelGroup accel_group))) + +(define-func gtk_window_position + none + ((GtkWindow window) + (GtkWindowPosition position))) + +;;; Box + +(define-object GtkBox (GtkContainer)) + +(define-func gtk_box_pack_start + none + ((GtkBox box) + (GtkWidget child) + (bool expand (= "TRUE")) + (bool fill (= "TRUE")) + (int padding (= "0")))) + +(define-func gtk_box_pack_end + none + ((GtkBox box) + (GtkWidget child) + (bool expand (= "TRUE")) + (bool fill (= "TRUE")) + (int padding (= "0")))) + +(define-func gtk_box_pack_start_defaults + none + ((GtkBox box) + (GtkWidget child))) + +(define-func gtk_box_pack_end_defaults + none + ((GtkBox box) + (GtkWidget child))) + +(define-func gtk_box_set_homogeneous + none + ((GtkBox box) + (bool homogenous))) + +(define-func gtk_box_set_spacing + none + ((GtkBox box) + (int spacing))) + +;;; Table + +(define-object GtkTable (GtkContainer)) + +(define-func gtk_table_new + GtkWidget + ((int rows) + (int columns) + (bool homogenous))) + +(define-func gtk_table_attach + none + ((GtkTable table) + (GtkWidget child) + (int left_attach) + (int right_attach) + (int top_attach) + (int bottom_attach) + (GtkAttachOptions xoptions (= "GTK_EXPAND|GTK_FILL")) + (GtkAttachOptions yoptions (= "GTK_EXPAND|GTK_FILL")) + (int xpadding (= "0")) + (int ypadding (= "0")))) + +(define-func gtk_table_attach_defaults + none + ((GtkTable table) + (GtkWidget child) + (int left_attach) + (int right_attach) + (int top_attach) + (int bottom_attach))) + +(define-func gtk_table_set_row_spacing + none + ((GtkTable table) + (int row) + (int spacing))) + +(define-func gtk_table_set_col_spacing + none + ((GtkTable table) + (int column) + (int spacing))) + +(define-func gtk_table_set_row_spacings + none + ((GtkTable table) + (int spacing))) + +(define-func gtk_table_set_col_spacings + none + ((GtkTable table) + (int spacing))) + +;;; Button + +(define-object GtkButton (GtkContainer)) + +(define-func gtk_button_new + GtkWidget + ()) + +(define-func gtk_button_new_with_label + GtkWidget + ((string label))) + +(define-func gtk_button_pressed + none + ((GtkButton button))) + +(define-func gtk_button_released + none + ((GtkButton button))) + +(define-func gtk_button_clicked + none + ((GtkButton button))) + +(define-func gtk_button_enter + none + ((GtkButton button))) + +(define-func gtk_button_leave + none + ((GtkButton button))) + +;;; ToggleButton + +(define-object GtkToggleButton (GtkButton)) + +(define-func gtk_toggle_button_new + GtkWidget + ()) + +(define-func gtk_toggle_button_new_with_label + GtkWidget + ((string label))) + +(define-func gtk_toggle_button_set_mode + none + ((GtkToggleButton toggle_button) + (bool draw_indicator))) + +(define-func gtk_toggle_button_set_state + none + ((GtkToggleButton toggle_button) + (bool state))) + +(define-func gtk_toggle_button_toggled + none + ((GtkToggleButton toggle_button))) + +;;; CheckButton + +(define-object GtkCheckButton (GtkToggleButton)) + +(define-func gtk_check_button_new + GtkWidget + ()) + +(define-func gtk_check_button_new_with_label + GtkWidget + ((string label))) + +;;; RadioButton + +(define-object GtkRadioButton (GtkCheckButton)) + +(define-func gtk_radio_button_new_interp + GtkWidget + ((GtkRadioButton group (null-ok)))) + +(define-func gtk_radio_button_new_with_label_interp + GtkWidget + ((GtkRadioButton group (null-ok)) + (string label))) + +;;; Misc + +(define-object GtkMisc (GtkWidget)) + +(define-func gtk_misc_set_alignment + none + ((GtkMisc misc) + (float xalign) + (float yalign))) + +(define-func gtk_misc_set_padding + none + ((GtkMisc misc) + (int xpad) + (int ypad))) + +;;; Label + +(define-object GtkLabel (GtkMisc)) + +(define-func gtk_label_new + GtkWidget + ((string str))) + +(define-func gtk_label_set + none + ((GtkLabel label) + (string str))) + +(define-func gtk_label_get_interp + static_string + ((GtkLabel label))) + +;; VBox + +(define-object GtkVBox (GtkBox)) + +(define-func gtk_vbox_new + GtkWidget + ((bool homogenous) + (int spacing))) + +;; HBox + +(define-object GtkHBox (GtkBox)) + +(define-func gtk_hbox_new + GtkWidget + ((bool homogenous) + (int spacing))) + +;; Separator + +(define-object GtkSeparator (GtkWidget)) + +;; HSeparator + +(define-object GtkHSeparator (GtkSeparator)) + +(define-func gtk_hseparator_new + GtkWidget + ()) + +;; VSeparator + +(define-object GtkVSeparator (GtkSeparator)) + +(define-func gtk_vseparator_new + GtkWidget + ()) + +;; Frame + +(define-object GtkFrame (GtkBin)) + +(define-func gtk_frame_new + GtkWidget + ((string label (null-ok)))) + +(define-func gtk_frame_set_label + none + ((GtkFrame frame) + (string label))) + +(define-func gtk_frame_set_label_align + none + ((GtkFrame frame) + (float xalign) + (float yalign))) + +(define-func gtk_frame_set_shadow_type + none + ((GtkFrame frame) + (GtkShadowType type))) + +;; Progress Bar + +(define-object GtkProgressBar (GtkWidget) + (fields + (float percentage))) + +(define-func gtk_progress_bar_new + GtkWidget + ()) + +(define-func gtk_progress_bar_update + none + ((GtkProgressBar progress_bar) + (float percentage))) + + ;(define-func gtk_progress_bar_percentage + ; float + ; ((GtkProgressBar progress_bar))) + +;; Tooltips + +(define-object GtkTooltips (GtkData)) + +(define-func gtk_tooltips_new + GtkTooltips + ()) + +(define-func gtk_tooltips_destroy + none + ((GtkTooltips tooltips))) + +(define-func gtk_tooltips_enable + none + ((GtkTooltips tooltips))) + +(define-func gtk_tooltips_disable + none + ((GtkTooltips tooltips))) + +(define-func gtk_tooltips_set_delay + none + ((GtkTooltips tooltips) + (int delay))) + +(define-func gtk_tooltips_set_tips + none + ((GtkTooltips tooltips) + (GtkWidget widget) + (string tips_text (null-ok)))) + +(define-func gtk_tooltips_set_colors + none + ((GtkTooltips tooltips) + (GdkColor background) + (GdkColor foreground))) + +;; MenuShell + +(define-object GtkMenuShell (GtkContainer)) + +(define-func gtk_menu_shell_append + none + ((GtkMenuShell menu_shell) + (GtkWidget child))) + +(define-func gtk_menu_shell_prepend + none + ((GtkMenuShell menu_shell) + (GtkWidget child))) + +(define-func gtk_menu_shell_insert + none + ((GtkMenuShell menu_shell) + (GtkWidget child) + (int position))) + +(define-func gtk_menu_shell_deactivate + none + ((GtkMenuShell menu_shell))) + +;; MenuBar + +(define-object GtkMenuBar (GtkMenuShell)) + +(define-func gtk_menu_bar_new + GtkWidget + ()) + +(define-func gtk_menu_bar_append + none + ((GtkMenuBar menu_bar) + (GtkWidget child))) + +(define-func gtk_menu_bar_prepend + none + ((GtkMenuBar menu_bar) + (GtkWidget child))) + +(define-func gtk_menu_bar_insert + none + ((GtkMenuBar menu_bar) + (GtkWidget child) + (int position))) + +;; Menu + +(define-object GtkMenu (GtkMenuShell)) + +(define-func gtk_menu_new + GtkWidget + ()) + +(define-func gtk_menu_append + none + ((GtkMenu menu) + (GtkWidget child))) + +(define-func gtk_menu_prepend + none + ((GtkMenu menu) + (GtkWidget child))) + +(define-func gtk_menu_insert + none + ((GtkMenu menu) + (GtkWidget child) + (int position))) + +(define-func gtk_menu_popup_interp + none + ((GtkMenu menu) + (GtkWidget parent_menu_shell) + (GtkWidget parent_menu_item) + (int button) + (int activate_time))) + +(define-func gtk_menu_popdown + none + ((GtkMenu menu))) + +(define-func gtk_menu_get_active + GtkWidget + ((GtkMenu menu))) + +(define-func gtk_menu_set_active + none + ((GtkMenu menu) + (int index))) + +(define-func gtk_menu_set_accel_group + none + ((GtkMenu menu) + (GtkAccelGroup accel_group))) + + +;; Item + +(define-object GtkItem (GtkBin)) + +(define-func gtk_item_select + none + ((GtkItem item))) + +(define-func gtk_item_deselect + none + ((GtkItem item))) + +(define-func gtk_item_toggle + none + ((GtkItem item))) + +;; MenuItem + +(define-object GtkMenuItem (GtkItem)) + +(define-func gtk_menu_item_new + GtkWidget + ()) + +(define-func gtk_menu_item_new_with_label + GtkWidget + ((string label))) + +(define-func gtk_menu_item_set_submenu + none + ((GtkMenuItem menu_item) + (GtkWidget submenu))) + +(define-func gtk_menu_item_set_placement + none + ((GtkMenuItem menu_item) + (GtkSubmenuPlacement placement))) + +(define-func gtk_menu_item_configure + none + ((GtkMenuItem menu_item) + (bool show_toggle_indicator) + (bool show_submenu_indicator))) + +(define-func gtk_menu_item_select + none + ((GtkMenuItem menu_item))) + +(define-func gtk_menu_item_deselect + none + ((GtkMenuItem menu_item))) + +(define-func gtk_menu_item_activate + none + ((GtkMenuItem menu_item))) + +;; CheckMenuItem + +(define-object GtkCheckMenuItem (GtkMenuItem)) + +(define-func gtk_check_menu_item_new + GtkWidget + ()) + +(define-func gtk_check_menu_item_new_with_label + GtkWidget + ((string label))) + +(define-func gtk_check_menu_item_set_state + none + ((GtkCheckMenuItem check_menu_item) + (bool state))) + +(define-func gtk_check_menu_item_toggled + none + ((GtkCheckMenuItem check_menu_item))) + +;; RadioMenuItem + +(define-object GtkRadioMenuItem (GtkCheckMenuItem)) + +(define-func gtk_radio_menu_item_new_interp + GtkWidget + ((GtkRadioMenuItem group (null-ok)))) + +(define-func gtk_radio_menu_item_new_with_label_interp + GtkWidget + ((GtkRadioMenuItem group (null-ok)) + (string label))) + +;; OptionMenu + +(define-object GtkOptionMenu (GtkButton)) + +(define-func gtk_option_menu_new + GtkWidget + ()) + +(define-func gtk_option_menu_get_menu + GtkWidget + ((GtkOptionMenu option_menu))) + +(define-func gtk_option_menu_set_menu + none + ((GtkOptionMenu option_menu) + (GtkWidget menu))) + +(define-func gtk_option_menu_remove_menu + none + ((GtkOptionMenu option_menu))) + +(define-func gtk_option_menu_set_history + none + ((GtkOptionMenu option_menu) + (int index))) + +;; Pixmaps + +(define-object GtkPixmap (GtkMisc)) + +(define-func gtk_pixmap_new_interp + GtkWidget + ((string xpm_file) + (GtkWidget intended_parent))) + +;; Data + +(define-object GtkData (GtkObject)) + +;; Adjustment + +(define-object GtkAdjustment (GtkData)) + +(define-func gtk_adjustment_new + GtkObject + ((float value) + (float lower) + (float upper) + (float step_increment) + (float page_increment) + (float page_size))) + +;; ScrolledWidow + +(define-object GtkScrolledWindow (GtkContainer)) + +(define-func gtk_scrolled_window_new + GtkWidget + ((GtkAdjustment hadjustment (null-ok) (= "NULL")) + (GtkAdjustment vadjustment (null-ok) (= "NULL")))) + +(define-func gtk_scrolled_window_get_hadjustment + GtkAdjustment + ((GtkScrolledWindow scrolled_window))) + +(define-func gtk_scrolled_window_get_vadjustment + GtkAdjustment + ((GtkScrolledWindow scrolled_window))) + +(define-func gtk_scrolled_window_set_policy + none + ((GtkScrolledWindow scrolled_window) + (GtkPolicyType hscrollbar_policy) + (GtkPolicyType vscrollbar_policy))) + +;; ListItem + +(define-object GtkListItem (GtkItem)) + +(define-func gtk_list_item_new + GtkWidget + ()) + +(define-func gtk_list_item_new_with_label + GtkWidget + ((string label))) + +(define-func gtk_list_item_select + none + ((GtkListItem list_item))) + +(define-func gtk_list_item_deselect + none + ((GtkListItem list_item))) + +;; List + +(define-object GtkList (GtkContainer)) + +(define-func gtk_list_new + GtkWidget + ()) + +(define-func gtk_list_append_item + none + ((GtkList list) + (GtkListItem item))) + +(define-func gtk_list_prepend_item + none + ((GtkList list) + (GtkListItem item))) + +;; XXX many missing + +(define-func gtk_list_clear_items + none + ((GtkList list) + (int start) + (int end))) + +(define-func gtk_list_select_item + none + ((GtkList list) + (int item))) + +(define-func gtk_list_unselect_item + none + ((GtkList list) + (int item))) + +(define-func gtk_list_select_child + none + ((GtkList list) + (GtkWidget child))) + +(define-func gtk_list_unselect_child + none + ((GtkList list) + (GtkWidget child))) + +(define-func gtk_list_child_position + int + ((GtkList list) + (GtkWidget child))) + +(define-func gtk_list_set_selection_mode + none + ((GtkList list) + (GtkSelectionMode mode))) + +;; Notebook + +(define-object GtkNotebook (GtkContainer) + (fields + (GtkPositionType tab_pos))) + +(define-func gtk_notebook_new + GtkWidget + ()) + +(define-func gtk_notebook_append_page + none + ((GtkNotebook notebook) + (GtkWidget child) + (GtkWidget tab_label))) + +(define-func gtk_notebook_prepend_page + none + ((GtkNotebook notebook) + (GtkWidget child) + (GtkWidget tab_label))) + +(define-func gtk_notebook_insert_page + none + ((GtkNotebook notebook) + (GtkWidget child) + (GtkWidget tab_label) + (int position))) + +(define-func gtk_notebook_remove_page + none + ((GtkNotebook notebook) + (int page_num))) + +(define-func gtk_notebook_current_page + int + ((GtkNotebook notebook))) + +(define-func gtk_notebook_set_page + none + ((GtkNotebook notebook) + (int page_num))) + +(define-func gtk_notebook_next_page + none + ((GtkNotebook notebook))) + +(define-func gtk_notebook_prev_page + none + ((GtkNotebook notebook))) + +(define-func gtk_notebook_set_tab_pos + none + ((GtkNotebook notebook) + (GtkPositionType pos))) + +(define-func gtk_notebook_set_show_tabs + none + ((GtkNotebook notebook) + (bool show_tabs))) + +(define-func gtk_notebook_set_show_border + none + ((GtkNotebook notebook) + (bool show_border))) + +;; Entry + +(define-object GtkEntry (GtkWidget)) + +(define-func gtk_entry_new + GtkWidget + ()) + +(define-func gtk_entry_set_text + none + ((GtkEntry entry) + (string text))) + +(define-func gtk_entry_append_text + none + ((GtkEntry entry) + (string text))) + +(define-func gtk_entry_prepend_text + none + ((GtkEntry entry) + (string text))) + +(define-func gtk_entry_set_position + none + ((GtkEntry entry) + (int position))) + +(define-func gtk_entry_get_text + static_string + ((GtkEntry entry))) + +;; Text + +(define-object GtkText (GtkWidget)) + +(define-func gtk_text_new + GtkWidget + ((GtkAdjustment hadj (null-ok)) + (GtkAdjustment vadj (null-ok)))) + +(define-func gtk_text_set_editable + none + ((GtkText text) + (bool editable))) + +(define-func gtk_text_set_adjustments + none + ((GtkText text) + (GtkAdjustment hadj) + (GtkAdjustment vadj))) + +(define-func gtk_text_set_point + none + ((GtkText text) + (uint index))) + +(define-func gtk_text_get_point + uint + ((GtkText text))) + +(define-func gtk_text_get_length + uint + ((GtkText text))) + +(define-func gtk_text_freeze + none + ((GtkText text))) + +(define-func gtk_text_thaw + none + ((GtkText text))) + +(define-func gtk_text_insert + none + ((GtkText text) + (GdkFont font (null-ok)) + (GdkColor fore (null-ok)) + (GdkColor back (null-ok)) + (string chars) + (int length))) + +(define-func gtk_text_backward_delete + none + ((GtkText text) + (uint nchars))) + +(define-func gtk_text_foreward_delete + none + ((GtkText text) + (uint nchars))) + +;; Alignment + +(define-object GtkAlignment (GtkBin)) + +(define-func gtk_alignment_new + GtkWidget + ((float xalign) + (float yalign) + (float xscale) + (float yscale))) + +(define-func gtk_alignment_set + none + ((GtkAlignment alignment) + (float xalign) + (float yalign) + (float xscale) + (float yscale))) + +;; Color + + ; XXX lots missing + +(define-func gdk_color_parse_interp + GdkColor + ((string spec))) + +;; Preview + +(define-object GtkPreview (GtkWidget)) + +;; XXX lots missing + +(define-func gtk_preview_set_install_cmap + none + ((bool install_cmap))) + +(define-func gtk_preview_set_reserved + none + ((int nreserved))) + +(define-func gtk_preview_get_visual + GdkVisual + ()) + +(define-func gtk_preview_get_cmap + GdkColormap + ()) + +;; ColorSelectionDialog + +(define-object GtkColorSelectionDialog (GtkWindow) + (fields + (GtkWidget colorsel) + (GtkWidget main_vbox) + (GtkWidget ok_button) + (GtkWidget reset_button) + (GtkWidget cancel_button) + (GtkWidget help_button))) + +(define-func gtk_color_selection_dialog_new + GtkWidget + ((string title))) + +;; ColorSelection + +(define-object GtkColorSelection (GtkVBox)) + +(define-func gtk_color_selection_new + GtkWidget + ()) + +(define-func gtk_color_selection_set_update_policy + none + ((GtkColorSelection colorsel) + (GtkUpdateType policy))) + +(define-func gtk_color_selection_set_opacity + none + ((GtkColorSelection colorsel) + (bool use_opacity))) + +;; Range + +(define-object GtkRange (GtkWidget)) + +(define-func gtk_range_get_adjustment + GtkAdjustment + ((GtkRange range))) + +(define-func gtk_range_set_update_policy + none + ((GtkRange range) + (GtkUpdateType policy))) + +(define-func gtk_range_set_adjustment + none + ((GtkRange range) + (GtkAdjustment adjustment))) + +;; Scale + +(define-object GtkScale (GtkRange)) + +(define-func gtk_scale_set_digits + none + ((GtkScale scale) + (bool digits))) + +(define-func gtk_scale_set_draw_value + none + ((GtkScale scale) + (bool draw_value))) + +(define-func gtk_scale_set_value_pos + none + ((GtkScale scale) + (GtkPositionType pos))) + +;; HScale + +(define-object GtkHScale (GtkScale)) + +(define-func gtk_hscale_new + GtkWidget + ((GtkAdjustment adjustment))) + +;; VScale + +(define-object GtkVScale (GtkScale)) + +(define-func gtk_vscale_new + GtkWidget + ((GtkAdjustment adjustment))) + +;; Scrollbar + +(define-object GtkScrollbar (GtkRange)) + +;; HScrollbar + +(define-object GtkHScrollbar (GtkScrollbar)) + +(define-func gtk_hscrollbar_new + GtkWidget + ((GtkAdjustment adjustment))) + +;; VScrollbar + +(define-object GtkVScrollbar (GtkScrollbar)) + +(define-func gtk_vscrollbar_new + GtkWidget + ((GtkAdjustment adjustment))) + +;; Dialog + +(define-object GtkDialog (GtkWindow) + (fields + (GtkWidget vbox) + (GtkWidget action_area))) + +(define-func gtk_dialog_new + GtkWidget + ()) + +;; Paned + +(define-object GtkPaned (GtkContainer)) + +(define-func gtk_paned_add1 + none + ((GtkPaned paned) + (GtkWidget child))) + +(define-func gtk_paned_add2 + none + ((GtkPaned paned) + (GtkWidget child))) + +(define-func gtk_paned_handle_size + none + ((GtkPaned paned) + (int size))) + +(define-func gtk_paned_gutter_size + none + ((GtkPaned paned) + (int size))) + +;; HPaned + +(define-object GtkHPaned (GtkPaned)) + +(define-func gtk_hpaned_new + GtkWidget + ()) + +;; VPaned + +(define-object GtkVPaned (GtkPaned)) + +(define-func gtk_vpaned_new + GtkWidget + ()) + +;;; hack + +;(define-func panel_register_toy +; none +; ((gpointer panel) +; (GtkWidget applet) +; (string id) +; (string params) +; (int x) +; (int y) +; (int flags))) + +;(define-func panel_quit +; none +; ((gpointer panel))) + +;(define-func panel_new_applet +; none +; ((gpointer panel) +; (string applet) +; (string params))) diff --git a/gtk/makefile b/gtk/makefile index 18f7a0aa7..cc0767e68 100755 --- a/gtk/makefile +++ b/gtk/makefile @@ -2,8 +2,11 @@ all: @echo "You must use 'make windows' or 'make unix'." @echo "'make unix' is broken for now." -windows: +windows: defs $(CSC) /unsafe /target:library /r:../glib/glib-sharp.dll /r:../gdk/gdk-sharp.dll /out:gtk-sharp.dll /recurse:*.cs unix: @echo "'make unix' is broken for now." + +defs: + ../defs-parse.pl < gtk.defs > generated.cs