1 /* GTK - The GIMP Toolkit
2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
21 * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
22 * file for a list of people on the GTK+ Team. See the ChangeLog
23 * files for a list of changes. These files are distributed with
24 * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
27 #ifndef __GTK_ENUMS_H__
28 #define __GTK_ENUMS_H__
30 #include <gobject/gsignal.h>
34 #endif /* __cplusplus */
45 /* Attach options (for tables) */
53 /* Button box styles */
56 GTK_BUTTONBOX_DEFAULT_STYLE,
66 GTK_CURVE_TYPE_LINEAR, /* linear interpolation */
67 GTK_CURVE_TYPE_SPLINE, /* spline interpolation */
68 GTK_CURVE_TYPE_FREE /* free form curve */
73 GTK_DELETE_WORD_ENDS, /* delete only the portion of the word to the
74 * left/right of cursor if we're in the middle
77 GTK_DELETE_DISPLAY_LINES,
78 GTK_DELETE_DISPLAY_LINE_ENDS,
79 GTK_DELETE_PARAGRAPH_ENDS, /* like C-k in Emacs (or its reverse) */
80 GTK_DELETE_PARAGRAPHS, /* C-k in pico, kill whole line */
81 GTK_DELETE_WHITESPACE /* M-\ in Emacs */
84 /* Focus movement types */
95 /* Built-in stock icon sizes */
98 GTK_ICON_SIZE_INVALID,
100 GTK_ICON_SIZE_SMALL_TOOLBAR,
101 GTK_ICON_SIZE_LARGE_TOOLBAR,
102 GTK_ICON_SIZE_BUTTON,
106 /* Reading directions for text */
114 /* justification for label and maybe other widgets (text?) */
123 /* GtkPatternSpec match types */
126 GTK_MATCH_ALL, /* "*A?A*" */
127 GTK_MATCH_ALL_TAIL, /* "*A?AA" */
128 GTK_MATCH_HEAD, /* "AAAA*" */
129 GTK_MATCH_TAIL, /* "*AAAA" */
130 GTK_MATCH_EXACT, /* "AAAAA" */
134 /* Menu keyboard movement types */
141 } GtkMenuDirectionType;
151 GTK_MOVEMENT_LOGICAL_POSITIONS, /* move by forw/back graphemes */
152 GTK_MOVEMENT_VISUAL_POSITIONS, /* move by left/right graphemes */
153 GTK_MOVEMENT_WORDS, /* move by forward/back words */
154 GTK_MOVEMENT_DISPLAY_LINES, /* move up/down lines (wrapped lines) */
155 GTK_MOVEMENT_DISPLAY_LINE_ENDS, /* move up/down lines (wrapped lines) */
156 GTK_MOVEMENT_PARAGRAPHS, /* move up/down paragraphs (newline-ended lines) */
157 GTK_MOVEMENT_PARAGRAPH_ENDS, /* move to either end of a paragraph */
158 GTK_MOVEMENT_PAGES, /* move by pages */
159 GTK_MOVEMENT_BUFFER_ENDS /* move to ends of the buffer */
162 /* Orientation for toolbars, etc. */
165 GTK_ORIENTATION_HORIZONTAL,
166 GTK_ORIENTATION_VERTICAL
169 /* Placement type for scrolled window */
173 GTK_CORNER_BOTTOM_LEFT,
174 GTK_CORNER_TOP_RIGHT,
175 GTK_CORNER_BOTTOM_RIGHT
178 /* Packing types (for boxes) */
185 /* priorities for path lookups */
188 GTK_PATH_PRIO_LOWEST = 0,
189 GTK_PATH_PRIO_GTK = 4,
190 GTK_PATH_PRIO_APPLICATION = 8,
191 GTK_PATH_PRIO_RC = 12,
192 GTK_PATH_PRIO_HIGHEST = 15,
193 GTK_PATH_PRIO_MASK = 0x0f
194 } GtkPathPriorityType;
196 /* widget path types */
200 GTK_PATH_WIDGET_CLASS,
204 /* Scrollbar policy types (for scrolled windows) */
208 GTK_POLICY_AUTOMATIC,
223 GTK_PREVIEW_GRAYSCALE
226 /* Style for buttons */
237 GTK_RESIZE_PARENT, /* Pass resize request to the parent */
238 GTK_RESIZE_QUEUE, /* Queue resizes on this widget */
239 GTK_RESIZE_IMMEDIATE /* Perform the resizes now */
242 /* signal run types */
243 typedef enum /*< flags >*/
245 GTK_RUN_FIRST = G_SIGNAL_RUN_FIRST,
246 GTK_RUN_LAST = G_SIGNAL_RUN_LAST,
247 GTK_RUN_BOTH = (GTK_RUN_FIRST | GTK_RUN_LAST),
248 GTK_RUN_NO_RECURSE = G_SIGNAL_NO_RECURSE,
249 GTK_RUN_ACTION = G_SIGNAL_ACTION,
250 GTK_RUN_NO_HOOKS = G_SIGNAL_NO_HOOKS
253 /* scrolling types */
257 GTK_SCROLL_STEP_BACKWARD,
258 GTK_SCROLL_STEP_FORWARD,
259 GTK_SCROLL_PAGE_BACKWARD,
260 GTK_SCROLL_PAGE_FORWARD,
263 GTK_SCROLL_STEP_DOWN,
265 GTK_SCROLL_PAGE_DOWN,
266 GTK_SCROLL_STEP_LEFT,
267 GTK_SCROLL_STEP_RIGHT,
268 GTK_SCROLL_PAGE_LEFT,
269 GTK_SCROLL_PAGE_RIGHT
272 /* list selection modes */
275 GTK_SELECTION_SINGLE,
276 GTK_SELECTION_BROWSE,
277 GTK_SELECTION_MULTIPLE,
278 GTK_SELECTION_EXTENDED
287 GTK_SHADOW_ETCHED_IN,
288 GTK_SHADOW_ETCHED_OUT
298 GTK_STATE_INSENSITIVE
301 /* Directions for submenus */
306 } GtkSubmenuDirection;
308 /* Placement of submenus */
313 } GtkSubmenuPlacement;
315 /* Style for toolbars */
321 GTK_TOOLBAR_BOTH_HORIZ
324 /* Trough types for GtkRange */
333 /* Data update types (for ranges) */
336 GTK_UPDATE_CONTINUOUS,
337 GTK_UPDATE_DISCONTINUOUS,
341 /* Generic visibility flags */
345 GTK_VISIBILITY_PARTIAL,
349 /* Window position types */
355 GTK_WIN_POS_CENTER_ALWAYS,
356 GTK_WIN_POS_CENTER_ON_PARENT
383 #endif /* __cplusplus */
386 #endif /* __GTK_ENUMS_H__ */