![]() |
![]() |
![]() |
GTK+ Reference Manual | ![]() |
---|---|---|---|---|
#include <gtk/gtk.h> enum GtkAccelFlags; enum GtkAnchorType; enum GtkArrowType; enum GtkAttachOptions; enum GtkButtonBoxStyle; enum GtkCornerType; enum GtkCurveType; enum GtkDeleteType; enum GtkDirectionType; enum GtkExpanderStyle; enum GtkIMPreeditStyle; enum GtkIMStatusStyle; enum GtkJustification; enum GtkMatchType; enum GtkMetricType; enum GtkMovementStep; enum GtkOrientation; enum GtkPackType; enum GtkPathPriorityType; enum GtkPathType; enum GtkPolicyType; enum GtkPositionType; enum GtkPreviewType; enum GtkReliefStyle; enum GtkResizeMode; enum GtkScrollStep; enum GtkScrollType; enum GtkSelectionMode; enum GtkShadowType; enum GtkSideType; enum GtkStateType; enum GtkSubmenuDirection; enum GtkSubmenuPlacement; enum GtkToolbarStyle; enum GtkUpdateType; enum GtkVisibility; enum GtkWindowPosition; enum GtkWindowType; enum GtkSortType;
typedef enum { GTK_ACCEL_VISIBLE = 1 << 0, /* display in GtkAccelLabel? */ GTK_ACCEL_LOCKED = 1 << 1, /* is it removable? */ GTK_ACCEL_MASK = 0x07 } GtkAccelFlags;
typedef enum { GTK_ANCHOR_CENTER, GTK_ANCHOR_NORTH, GTK_ANCHOR_NORTH_WEST, GTK_ANCHOR_NORTH_EAST, GTK_ANCHOR_SOUTH, GTK_ANCHOR_SOUTH_WEST, GTK_ANCHOR_SOUTH_EAST, GTK_ANCHOR_WEST, GTK_ANCHOR_EAST, 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 } GtkAnchorType;
typedef enum { GTK_ARROW_UP, GTK_ARROW_DOWN, GTK_ARROW_LEFT, GTK_ARROW_RIGHT } GtkArrowType;
Used to indicate the direction in which a GtkArrow should point.
GTK_ARROW_UP |
Represents an upward pointing arrow. |
GTK_ARROW_DOWN |
Represents a downward pointing arrow. |
GTK_ARROW_LEFT |
Represents a left pointing arrow. |
GTK_ARROW_RIGHT |
Represents a right pointing arrow. |
typedef enum { GTK_EXPAND = 1 << 0, GTK_SHRINK = 1 << 1, GTK_FILL = 1 << 2 } GtkAttachOptions;
Denotes the expansion properties that a widget will have when it (or its parent) is resized.
GTK_EXPAND |
the widget should expand to take up any extra space in its container that has been allocated. |
GTK_SHRINK |
the widget should shrink as and when possible. |
GTK_FILL |
the widget should fill the space allocated to it. |
typedef enum { GTK_BUTTONBOX_DEFAULT_STYLE, GTK_BUTTONBOX_SPREAD, GTK_BUTTONBOX_EDGE, GTK_BUTTONBOX_START, GTK_BUTTONBOX_END } GtkButtonBoxStyle;
Used to dictate the style that a GtkButtonBox uses to layout the buttons it contains. (See also: GtkVButtonBox and GtkHButtonBox).
GTK_BUTTONBOX_DEFAULT_STYLE |
Default packing. |
GTK_BUTTONBOX_SPREAD |
Buttons are evenly spread across the ButtonBox. |
GTK_BUTTONBOX_EDGE |
Buttons are placed at the edges of the ButtonBox. |
GTK_BUTTONBOX_START |
Buttons are grouped towards the start of box, (on the left for a HBox, or the top for a VBox). |
GTK_BUTTONBOX_END |
Buttons are grouped towards the end of a box, (on the right for a HBox, or the bottom for a VBox). |
typedef enum { GTK_CORNER_TOP_LEFT, GTK_CORNER_BOTTOM_LEFT, GTK_CORNER_TOP_RIGHT, GTK_CORNER_BOTTOM_RIGHT } GtkCornerType;
Specifies which corner a child widget should be placed in when packed into a GtkScrolledWindow. This is effectively the opposite of where the scroll bars are placed.
GTK_CORNER_TOP_LEFT |
Place the scrollbars on the right and bottom of the widget (default behaviour). |
GTK_CORNER_BOTTOM_LEFT |
Place the scrollbars on the top and right of the widget. |
GTK_CORNER_TOP_RIGHT |
Place the scrollbars on the left and bottom of the widget. |
GTK_CORNER_BOTTOM_RIGHT |
Place the scrollbars on the top and left of the widget. |
typedef enum { GTK_CURVE_TYPE_LINEAR, /* linear interpolation */ GTK_CURVE_TYPE_SPLINE, /* spline interpolation */ GTK_CURVE_TYPE_FREE /* free form curve */ } GtkCurveType;
typedef enum { GTK_DELETE_CHARS, GTK_DELETE_WORD_ENDS, /* delete only the portion of the word to the * left/right of cursor if we're in the middle * of a word */ GTK_DELETE_WORDS, GTK_DELETE_DISPLAY_LINES, GTK_DELETE_DISPLAY_LINE_ENDS, GTK_DELETE_PARAGRAPH_ENDS, /* like C-k in Emacs (or its reverse) */ GTK_DELETE_PARAGRAPHS, /* C-k in pico, kill whole line */ GTK_DELETE_WHITESPACE /* M-\ in Emacs */ } GtkDeleteType;
typedef enum { GTK_DIR_TAB_FORWARD, GTK_DIR_TAB_BACKWARD, GTK_DIR_UP, GTK_DIR_DOWN, GTK_DIR_LEFT, GTK_DIR_RIGHT } GtkDirectionType;
typedef enum { GTK_EXPANDER_COLLAPSED, GTK_EXPANDER_SEMI_COLLAPSED, GTK_EXPANDER_SEMI_EXPANDED, GTK_EXPANDER_EXPANDED } GtkExpanderStyle;
Used to specify the style of the expanders drawn by a GtkTreeView.
GTK_EXPANDER_COLLAPSED |
The style used for a collapsed subtree. |
GTK_EXPANDER_SEMI_COLLAPSED |
Intermediate style used during animation. |
GTK_EXPANDER_SEMI_EXPANDED |
Intermediate style used during animation. |
GTK_EXPANDER_EXPANDED |
The style used for an expanded subtree. |
typedef enum { GTK_IM_PREEDIT_NOTHING, GTK_IM_PREEDIT_CALLBACK, GTK_IM_PREEDIT_NONE } GtkIMPreeditStyle;
typedef enum { GTK_IM_STATUS_NOTHING, GTK_IM_STATUS_CALLBACK, GTK_IM_STATUS_NONE } GtkIMStatusStyle;
typedef enum { GTK_JUSTIFY_LEFT, GTK_JUSTIFY_RIGHT, GTK_JUSTIFY_CENTER, GTK_JUSTIFY_FILL } GtkJustification;
Used for justifying the text inside a GtkLabel widget. (See also GtkAlignment).
GTK_JUSTIFY_LEFT |
The text is placed at the left edge of the label. |
GTK_JUSTIFY_RIGHT |
The text is placed at the right edge of the label. |
GTK_JUSTIFY_CENTER |
The text is placed in the center of the label. |
GTK_JUSTIFY_FILL |
The text is placed is distributed across the label. |
typedef enum { GTK_MATCH_ALL, /* "*A?A*" */ GTK_MATCH_ALL_TAIL, /* "*A?AA" */ GTK_MATCH_HEAD, /* "AAAA*" */ GTK_MATCH_TAIL, /* "*AAAA" */ GTK_MATCH_EXACT, /* "AAAAA" */ GTK_MATCH_LAST } GtkMatchType;
GtkMatchType
is deprecated and should not be used in newly-written code.
typedef enum { GTK_PIXELS, GTK_INCHES, GTK_CENTIMETERS } GtkMetricType;
Used to indicate which metric is used by a GtkRuler.
GTK_PIXELS |
Pixels. |
GTK_INCHES |
Inches. |
GTK_CENTIMETERS |
Centimeters. |
typedef enum { GTK_MOVEMENT_LOGICAL_POSITIONS, /* move by forw/back graphemes */ GTK_MOVEMENT_VISUAL_POSITIONS, /* move by left/right graphemes */ GTK_MOVEMENT_WORDS, /* move by forward/back words */ GTK_MOVEMENT_DISPLAY_LINES, /* move up/down lines (wrapped lines) */ GTK_MOVEMENT_DISPLAY_LINE_ENDS, /* move up/down lines (wrapped lines) */ GTK_MOVEMENT_PARAGRAPHS, /* move up/down paragraphs (newline-ended lines) */ GTK_MOVEMENT_PARAGRAPH_ENDS, /* move to either end of a paragraph */ GTK_MOVEMENT_PAGES, /* move by pages */ GTK_MOVEMENT_BUFFER_ENDS, /* move to ends of the buffer */ GTK_MOVEMENT_HORIZONTAL_PAGES /* move horizontally by pages */ } GtkMovementStep;
typedef enum { GTK_ORIENTATION_HORIZONTAL, GTK_ORIENTATION_VERTICAL } GtkOrientation;
Represents the orientation of widgets which can be switched between horizontal and vertical orientation on the fly, like GtkToolbar.
GTK_ORIENTATION_HORIZONTAL |
The widget is in horizontal orientation. |
GTK_ORIENTATION_VERTICAL |
The widget is in vertical orientation. |
typedef enum { GTK_PACK_START, GTK_PACK_END } GtkPackType;
Represents the packing location GtkBox children. (See: GtkVBox, GtkHBox, and GtkButtonBox).
GTK_PACK_START |
The child is packed into the start of the box |
GTK_PACK_END |
The child is packed into the end of the box |
typedef enum { 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 } GtkPathPriorityType;
typedef enum { GTK_PATH_WIDGET, GTK_PATH_WIDGET_CLASS, GTK_PATH_CLASS } GtkPathType;
typedef enum { GTK_POLICY_ALWAYS, GTK_POLICY_AUTOMATIC, GTK_POLICY_NEVER } GtkPolicyType;
Determines when a scroll bar will be visible.
GTK_POLICY_ALWAYS |
The scrollbar is always visible. |
GTK_POLICY_AUTOMATIC |
The scrollbar will appear and disappear as necessary. For example, when all of a GtkCList can not be seen. |
GTK_POLICY_NEVER |
The scrollbar will never appear. |
typedef enum { GTK_POS_LEFT, GTK_POS_RIGHT, GTK_POS_TOP, GTK_POS_BOTTOM } GtkPositionType;
Describes which edge of a widget a certain feature is positioned at, e.g. the tabs of a GtkNotebook, the handle of a GtkHandleBox or the label of a GtkScale.
GTK_POS_LEFT |
The feature is at the left edge. |
GTK_POS_RIGHT |
The feature is at the right edge. |
GTK_POS_TOP |
The feature is at the top edge. |
GTK_POS_BOTTOM |
The feature is at the bottom edge. |
typedef enum { GTK_PREVIEW_COLOR, GTK_PREVIEW_GRAYSCALE } GtkPreviewType;
GtkPreviewType
is deprecated and should not be used in newly-written code.
An enumeration which describes whether a preview contains grayscale or red-green-blue data.
GTK_PREVIEW_COLOR |
the preview contains red-green-blue data. |
GTK_PREVIEW_GRAYSCALE |
The preview contains grayscale data. |
typedef enum { GTK_RELIEF_NORMAL, GTK_RELIEF_HALF, GTK_RELIEF_NONE } GtkReliefStyle;
Indicated the relief to be drawn around a GtkButton.
GTK_RELIEF_NORMAL |
Draw a normal relief. |
GTK_RELIEF_HALF |
A half relief. |
GTK_RELIEF_NONE |
No relief. |
typedef enum { GTK_RESIZE_PARENT, /* Pass resize request to the parent */ GTK_RESIZE_QUEUE, /* Queue resizes on this widget */ GTK_RESIZE_IMMEDIATE /* Perform the resizes now */ } GtkResizeMode;
GTK_RESIZE_PARENT |
|
GTK_RESIZE_QUEUE |
|
GTK_RESIZE_IMMEDIATE |
Deprecated. |
typedef enum { GTK_SCROLL_STEPS, GTK_SCROLL_PAGES, GTK_SCROLL_ENDS, GTK_SCROLL_HORIZONTAL_STEPS, GTK_SCROLL_HORIZONTAL_PAGES, GTK_SCROLL_HORIZONTAL_ENDS } GtkScrollStep;
typedef enum { GTK_SCROLL_NONE, GTK_SCROLL_JUMP, GTK_SCROLL_STEP_BACKWARD, GTK_SCROLL_STEP_FORWARD, GTK_SCROLL_PAGE_BACKWARD, GTK_SCROLL_PAGE_FORWARD, GTK_SCROLL_STEP_UP, GTK_SCROLL_STEP_DOWN, GTK_SCROLL_PAGE_UP, GTK_SCROLL_PAGE_DOWN, GTK_SCROLL_STEP_LEFT, GTK_SCROLL_STEP_RIGHT, GTK_SCROLL_PAGE_LEFT, GTK_SCROLL_PAGE_RIGHT, GTK_SCROLL_START, GTK_SCROLL_END } GtkScrollType;
typedef enum { GTK_SELECTION_NONE, /* Nothing can be selected */ GTK_SELECTION_SINGLE, GTK_SELECTION_BROWSE, GTK_SELECTION_MULTIPLE, GTK_SELECTION_EXTENDED = GTK_SELECTION_MULTIPLE /* Deprecated */ } GtkSelectionMode;
Used to control what selections users are allowed to make.
GTK_SELECTION_NONE |
No selection is possible. |
GTK_SELECTION_SINGLE |
Zero or one element may be selected. |
GTK_SELECTION_BROWSE |
Exactly one element is selected. In some circumstances,
such as initially or during a search operation, it's possible for no element
to be selected with GTK_SELECTION_BROWSE . What is really enforced is that
the user can't deselect a currently selected element except by selecting
another element.
|
GTK_SELECTION_MULTIPLE |
Any number of elements may be selected. Clicks toggle the state of an item. Any number of elements may be selected. The Ctrl key may be used to enlarge the selection, and Shift key to select between the focus and the child pointed to. Some widgets may also allow Click-drag to select a range of elements. |
GTK_SELECTION_EXTENDED |
Deprecated, behaves identical to GTK_SELECTION_MULTIPLE .
|
typedef enum { GTK_SHADOW_NONE, GTK_SHADOW_IN, GTK_SHADOW_OUT, GTK_SHADOW_ETCHED_IN, GTK_SHADOW_ETCHED_OUT } GtkShadowType;
Used to change the appearance of an outline typically provided by a GtkFrame.
GTK_SHADOW_NONE |
No outline. |
GTK_SHADOW_IN |
The outline is bevelled inwards. |
GTK_SHADOW_OUT |
The outline is bevelled outwards like a button. |
GTK_SHADOW_ETCHED_IN |
The outline itself is an inward bevel, but the frame does |
GTK_SHADOW_ETCHED_OUT |
typedef enum { GTK_SIDE_TOP, GTK_SIDE_BOTTOM, GTK_SIDE_LEFT, GTK_SIDE_RIGHT } GtkSideType;
GtkSideType
is deprecated and should not be used in newly-written code.
typedef enum { GTK_STATE_NORMAL, GTK_STATE_ACTIVE, GTK_STATE_PRELIGHT, GTK_STATE_SELECTED, GTK_STATE_INSENSITIVE } GtkStateType;
This type indicates the current state of a widget; the state determines how the widget is drawn. The GtkStateType enumeration is also used to identify different colors in a GtkStyle for drawing, so states can be used for subparts of a widget as well as entire widgets.
GTK_STATE_NORMAL |
State during normal operation. |
GTK_STATE_ACTIVE |
State of a currently active widget, such as a depressed button. |
GTK_STATE_PRELIGHT |
State indicating that the mouse pointer is over the widget and the widget will respond to mouse clicks. |
GTK_STATE_SELECTED |
State of a selected item, such the selected row in a list. |
GTK_STATE_INSENSITIVE |
State indicating that the widget is unresponsive to user actions. |
typedef enum { GTK_DIRECTION_LEFT, GTK_DIRECTION_RIGHT } GtkSubmenuDirection;
GtkSubmenuDirection
is deprecated and should not be used in newly-written code.
Indicates the direction a sub-menu will appear.
GTK_DIRECTION_LEFT |
A sub-menu will appear |
GTK_DIRECTION_RIGHT |
typedef enum { GTK_TOP_BOTTOM, GTK_LEFT_RIGHT } GtkSubmenuPlacement;
GtkSubmenuPlacement
is deprecated and should not be used in newly-written code.
typedef enum { GTK_TOOLBAR_ICONS, GTK_TOOLBAR_TEXT, GTK_TOOLBAR_BOTH, GTK_TOOLBAR_BOTH_HORIZ } GtkToolbarStyle;
Used to customize the appearance of a GtkToolbar. Note that setting the toolbar style overrides the user's preferences for the default toolbar style. Note that if the button has only a label set and GTK_TOOLBAR_ICONS is used, the label will be visible, and vice versa.
GTK_TOOLBAR_ICONS |
Buttons display only icons in the toolbar. |
GTK_TOOLBAR_TEXT |
Buttons display only text labels in the toolbar. |
GTK_TOOLBAR_BOTH |
Buttons display text and icons in the toolbar. |
GTK_TOOLBAR_BOTH_HORIZ |
Buttons display icons and text alongside each other, rather than vertically stacked |
typedef enum { GTK_UPDATE_CONTINUOUS, GTK_UPDATE_DISCONTINUOUS, GTK_UPDATE_DELAYED } GtkUpdateType;
typedef enum { GTK_VISIBILITY_NONE, GTK_VISIBILITY_PARTIAL, GTK_VISIBILITY_FULL } GtkVisibility;
Used by GtkCList and GtkCTree to indicate whether a row is visible.
GTK_VISIBILITY_NONE |
The row is not visible. |
GTK_VISIBILITY_PARTIAL |
The row is partially visible. |
GTK_VISIBILITY_FULL |
The row is fully visible. |
typedef enum { GTK_WIN_POS_NONE, GTK_WIN_POS_CENTER, GTK_WIN_POS_MOUSE, GTK_WIN_POS_CENTER_ALWAYS, GTK_WIN_POS_CENTER_ON_PARENT } GtkWindowPosition;
Window placement can be influenced using this enumeration.
GTK_WIN_POS_NONE |
No influence is made on placement. |
GTK_WIN_POS_CENTER |
Windows should be placed in the center of the screen. |
GTK_WIN_POS_MOUSE |
Windows should be placed at the current mouse position. |
GTK_WIN_POS_CENTER_ALWAYS |
Keep window centered as it changes size, etc. |
GTK_WIN_POS_CENTER_ON_PARENT |
Center the window on its transient
parent (see gtk_window_set_transient_for() ).
|
typedef enum { GTK_WINDOW_TOPLEVEL, GTK_WINDOW_POPUP } GtkWindowType;
A GtkWindow can be one of these types. Most things you'd consider a
"window" should have type GTK_WINDOW_TOPLEVEL; windows with this type
are managed by the window manager and have a frame by default (call
gtk_window_set_decorated()
to toggle the frame). Windows with type
GTK_WINDOW_POPUP are ignored by the window manager; window manager
keybindings won't work on them, the window manager won't decorate the
window with a frame, many GTK+ features that rely on the window
manager will not work (e.g. resize grips and
maximization/minimization). GTK_WINDOW_POPUP is used to implement
widgets such as GtkMenu or tooltips that you normally don't think of
as windows per se. Nearly all windows should be GTK_WINDOW_TOPLEVEL.
In particular, do not use GTK_WINDOW_POPUP just to turn off
the window borders; use gtk_window_set_decorated()
for that.
GTK_WINDOW_TOPLEVEL |
A regular window, such as a dialog. |
GTK_WINDOW_POPUP |
A special window such as a tooltip. |