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;
145 GTK_MENU_FACTORY_MENU,
146 GTK_MENU_FACTORY_MENU_BAR,
147 GTK_MENU_FACTORY_OPTION_MENU
148 } GtkMenuFactoryType;
158 GTK_MOVEMENT_LOGICAL_POSITIONS, /* move by forw/back graphemes */
159 GTK_MOVEMENT_VISUAL_POSITIONS, /* move by left/right graphemes */
160 GTK_MOVEMENT_WORDS, /* move by forward/back words */
161 GTK_MOVEMENT_DISPLAY_LINES, /* move up/down lines (wrapped lines) */
162 GTK_MOVEMENT_DISPLAY_LINE_ENDS, /* move up/down lines (wrapped lines) */
163 GTK_MOVEMENT_PARAGRAPHS, /* move up/down paragraphs (newline-ended lines) */
164 GTK_MOVEMENT_PARAGRAPH_ENDS, /* move to either end of a paragraph */
165 GTK_MOVEMENT_PAGES, /* move by pages */
166 GTK_MOVEMENT_BUFFER_ENDS /* move to ends of the buffer */
169 /* Orientation for toolbars, etc. */
172 GTK_ORIENTATION_HORIZONTAL,
173 GTK_ORIENTATION_VERTICAL
176 /* Placement type for scrolled window */
180 GTK_CORNER_BOTTOM_LEFT,
181 GTK_CORNER_TOP_RIGHT,
182 GTK_CORNER_BOTTOM_RIGHT
185 /* Packing types (for boxes) */
192 /* priorities for path lookups */
195 GTK_PATH_PRIO_LOWEST = 0,
196 GTK_PATH_PRIO_GTK = 4,
197 GTK_PATH_PRIO_APPLICATION = 8,
198 GTK_PATH_PRIO_RC = 12,
199 GTK_PATH_PRIO_HIGHEST = 15,
200 GTK_PATH_PRIO_MASK = 0x0f
201 } GtkPathPriorityType;
203 /* widget path types */
207 GTK_PATH_WIDGET_CLASS,
211 /* Scrollbar policy types (for scrolled windows) */
215 GTK_POLICY_AUTOMATIC,
230 GTK_PREVIEW_GRAYSCALE
233 /* Style for buttons */
244 GTK_RESIZE_PARENT, /* Pass resize request to the parent */
245 GTK_RESIZE_QUEUE, /* Queue resizes on this widget */
246 GTK_RESIZE_IMMEDIATE /* Perform the resizes now */
249 /* signal run types */
250 typedef enum /*< flags >*/
252 GTK_RUN_FIRST = G_SIGNAL_RUN_FIRST,
253 GTK_RUN_LAST = G_SIGNAL_RUN_LAST,
254 GTK_RUN_BOTH = (GTK_RUN_FIRST | GTK_RUN_LAST),
255 GTK_RUN_NO_RECURSE = G_SIGNAL_NO_RECURSE,
256 GTK_RUN_ACTION = G_SIGNAL_ACTION,
257 GTK_RUN_NO_HOOKS = G_SIGNAL_NO_HOOKS
260 /* scrolling types */
264 GTK_SCROLL_STEP_BACKWARD,
265 GTK_SCROLL_STEP_FORWARD,
266 GTK_SCROLL_PAGE_BACKWARD,
267 GTK_SCROLL_PAGE_FORWARD,
270 GTK_SCROLL_STEP_DOWN,
272 GTK_SCROLL_PAGE_DOWN,
273 GTK_SCROLL_STEP_LEFT,
274 GTK_SCROLL_STEP_RIGHT,
275 GTK_SCROLL_PAGE_LEFT,
276 GTK_SCROLL_PAGE_RIGHT
279 /* list selection modes */
282 GTK_SELECTION_SINGLE,
283 GTK_SELECTION_BROWSE,
284 GTK_SELECTION_MULTIPLE,
285 GTK_SELECTION_EXTENDED
294 GTK_SHADOW_ETCHED_IN,
295 GTK_SHADOW_ETCHED_OUT
305 GTK_STATE_INSENSITIVE
308 /* Directions for submenus */
313 } GtkSubmenuDirection;
315 /* Placement of submenus */
320 } GtkSubmenuPlacement;
322 /* Style for toolbars */
328 GTK_TOOLBAR_BOTH_HORIZ
331 /* Trough types for GtkRange */
340 /* Data update types (for ranges) */
343 GTK_UPDATE_CONTINUOUS,
344 GTK_UPDATE_DISCONTINUOUS,
348 /* Generic visibility flags */
352 GTK_VISIBILITY_PARTIAL,
356 /* Window position types */
362 GTK_WIN_POS_CENTER_ALWAYS,
363 GTK_WIN_POS_CENTER_ON_PARENT
382 #endif /* __cplusplus */
385 #endif /* __GTK_ENUMS_H__ */