1 /* GIMP - The GNU Image Manipulation Program
2  * Copyright (C) 1995 Spencer Kimball and Peter Mattis
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program 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
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef __WIDGETS_ENUMS_H__
19 #define __WIDGETS_ENUMS_H__
20 
21 
22 /*
23  * enums that are registered with the type system
24  */
25 
26 #define GIMP_TYPE_ACTIVE_COLOR (gimp_active_color_get_type ())
27 
28 GType gimp_active_color_get_type (void) G_GNUC_CONST;
29 
30 typedef enum
31 {
32   GIMP_ACTIVE_COLOR_FOREGROUND, /*< desc="Foreground" >*/
33   GIMP_ACTIVE_COLOR_BACKGROUND  /*< desc="Background" >*/
34 } GimpActiveColor;
35 
36 
37 #define GIMP_TYPE_CIRCLE_BACKGROUND (gimp_circle_background_get_type ())
38 
39 GType gimp_circle_background_get_type (void) G_GNUC_CONST;
40 
41 typedef enum
42 {
43   GIMP_CIRCLE_BACKGROUND_PLAIN, /*< desc="Plain" >*/
44   GIMP_CIRCLE_BACKGROUND_HSV    /*< desc="HSV"   >*/
45 } GimpCircleBackground;
46 
47 
48 #define GIMP_TYPE_COLOR_DIALOG_STATE (gimp_color_dialog_state_get_type ())
49 
50 GType gimp_color_dialog_state_get_type (void) G_GNUC_CONST;
51 
52 typedef enum
53 {
54   GIMP_COLOR_DIALOG_OK,
55   GIMP_COLOR_DIALOG_CANCEL,
56   GIMP_COLOR_DIALOG_UPDATE
57 } GimpColorDialogState;
58 
59 
60 #define GIMP_TYPE_COLOR_PICK_TARGET (gimp_color_pick_target_get_type ())
61 
62 GType gimp_color_pick_target_get_type (void) G_GNUC_CONST;
63 
64 typedef enum
65 {
66   GIMP_COLOR_PICK_TARGET_NONE,       /*< desc="Pick only"            >*/
67   GIMP_COLOR_PICK_TARGET_FOREGROUND, /*< desc="Set foreground color" >*/
68   GIMP_COLOR_PICK_TARGET_BACKGROUND, /*< desc="Set background color" >*/
69   GIMP_COLOR_PICK_TARGET_PALETTE     /*< desc="Add to palette"       >*/
70 } GimpColorPickTarget;
71 
72 
73 #define GIMP_TYPE_COLOR_PICK_STATE (gimp_color_pick_state_get_type ())
74 
75 GType gimp_color_pick_state_get_type (void) G_GNUC_CONST;
76 
77 typedef enum
78 {
79   GIMP_COLOR_PICK_STATE_START,
80   GIMP_COLOR_PICK_STATE_UPDATE,
81   GIMP_COLOR_PICK_STATE_END
82 } GimpColorPickState;
83 
84 
85 #define GIMP_TYPE_HISTOGRAM_SCALE (gimp_histogram_scale_get_type ())
86 
87 GType gimp_histogram_scale_get_type (void) G_GNUC_CONST;
88 
89 typedef enum
90 {
91   GIMP_HISTOGRAM_SCALE_LINEAR,       /*< desc="Linear histogram"      >*/
92   GIMP_HISTOGRAM_SCALE_LOGARITHMIC   /*< desc="Logarithmic histogram" >*/
93 } GimpHistogramScale;
94 
95 
96 #define GIMP_TYPE_TAB_STYLE (gimp_tab_style_get_type ())
97 
98 GType gimp_tab_style_get_type (void) G_GNUC_CONST;
99 
100 typedef enum
101 {
102   GIMP_TAB_STYLE_ICON,          /*< desc="Icon"           >*/
103   GIMP_TAB_STYLE_PREVIEW,       /*< desc="Current status" >*/
104   GIMP_TAB_STYLE_NAME,          /*< desc="Text"           >*/
105   GIMP_TAB_STYLE_BLURB,         /*< desc="Description"    >*/
106   GIMP_TAB_STYLE_ICON_NAME,     /*< desc="Icon & text"    >*/
107   GIMP_TAB_STYLE_ICON_BLURB,    /*< desc="Icon & desc"    >*/
108   GIMP_TAB_STYLE_PREVIEW_NAME,  /*< desc="Status & text"  >*/
109   GIMP_TAB_STYLE_PREVIEW_BLURB, /*< desc="Status & desc"  >*/
110   GIMP_TAB_STYLE_UNDEFINED,     /*< desc="Undefined"      >*/
111   GIMP_TAB_STYLE_AUTOMATIC      /*< desc="Automatic"      >*/
112 } GimpTabStyle;
113 
114 
115 #define GIMP_TYPE_TAG_ENTRY_MODE       (gimp_tag_entry_mode_get_type ())
116 
117 GType gimp_tag_entry_mode_get_type (void) G_GNUC_CONST;
118 
119 typedef enum
120 {
121   GIMP_TAG_ENTRY_MODE_QUERY,
122   GIMP_TAG_ENTRY_MODE_ASSIGN,
123 } GimpTagEntryMode;
124 
125 
126 /*
127  * non-registered enums; register them if needed
128  */
129 
130 typedef enum  /*< skip >*/
131 {
132   GIMP_VIEW_BG_CHECKS,
133   GIMP_VIEW_BG_WHITE
134 } GimpViewBG;
135 
136 typedef enum  /*< skip >*/
137 {
138   GIMP_VIEW_BORDER_BLACK,
139   GIMP_VIEW_BORDER_WHITE,
140   GIMP_VIEW_BORDER_RED,
141   GIMP_VIEW_BORDER_GREEN
142 } GimpViewBorderType;
143 
144 typedef enum  /*< skip >*/
145 {
146   GIMP_DND_TYPE_NONE         = 0,
147   GIMP_DND_TYPE_URI_LIST     = 1,
148   GIMP_DND_TYPE_TEXT_PLAIN   = 2,
149   GIMP_DND_TYPE_NETSCAPE_URL = 3,
150   GIMP_DND_TYPE_XDS          = 4,
151   GIMP_DND_TYPE_COLOR        = 5,
152   GIMP_DND_TYPE_SVG          = 6,
153   GIMP_DND_TYPE_SVG_XML      = 7,
154   GIMP_DND_TYPE_PIXBUF       = 8,
155   GIMP_DND_TYPE_IMAGE        = 9,
156   GIMP_DND_TYPE_COMPONENT    = 10,
157   GIMP_DND_TYPE_LAYER        = 11,
158   GIMP_DND_TYPE_CHANNEL      = 12,
159   GIMP_DND_TYPE_LAYER_MASK   = 13,
160   GIMP_DND_TYPE_VECTORS      = 14,
161   GIMP_DND_TYPE_BRUSH        = 15,
162   GIMP_DND_TYPE_PATTERN      = 16,
163   GIMP_DND_TYPE_GRADIENT     = 17,
164   GIMP_DND_TYPE_PALETTE      = 18,
165   GIMP_DND_TYPE_FONT         = 19,
166   GIMP_DND_TYPE_BUFFER       = 20,
167   GIMP_DND_TYPE_IMAGEFILE    = 21,
168   GIMP_DND_TYPE_TEMPLATE     = 22,
169   GIMP_DND_TYPE_TOOL_ITEM    = 23,
170   GIMP_DND_TYPE_DIALOG       = 24,
171 
172   GIMP_DND_TYPE_LAST         = GIMP_DND_TYPE_DIALOG
173 } GimpDndType;
174 
175 typedef enum  /*< skip >*/
176 {
177   GIMP_DROP_NONE,
178   GIMP_DROP_ABOVE,
179   GIMP_DROP_BELOW
180 } GimpDropType;
181 
182 typedef enum  /*< skip >*/
183 {
184   GIMP_CURSOR_NONE = 1024,  /* (GDK_LAST_CURSOR + 2) yes, this is insane */
185   GIMP_CURSOR_MOUSE,
186   GIMP_CURSOR_CROSSHAIR,
187   GIMP_CURSOR_CROSSHAIR_SMALL,
188   GIMP_CURSOR_BAD,
189   GIMP_CURSOR_MOVE,
190   GIMP_CURSOR_ZOOM,
191   GIMP_CURSOR_COLOR_PICKER,
192   GIMP_CURSOR_CORNER_TOP,
193   GIMP_CURSOR_CORNER_TOP_RIGHT,
194   GIMP_CURSOR_CORNER_RIGHT,
195   GIMP_CURSOR_CORNER_BOTTOM_RIGHT,
196   GIMP_CURSOR_CORNER_BOTTOM,
197   GIMP_CURSOR_CORNER_BOTTOM_LEFT,
198   GIMP_CURSOR_CORNER_LEFT,
199   GIMP_CURSOR_CORNER_TOP_LEFT,
200   GIMP_CURSOR_SIDE_TOP,
201   GIMP_CURSOR_SIDE_TOP_RIGHT,
202   GIMP_CURSOR_SIDE_RIGHT,
203   GIMP_CURSOR_SIDE_BOTTOM_RIGHT,
204   GIMP_CURSOR_SIDE_BOTTOM,
205   GIMP_CURSOR_SIDE_BOTTOM_LEFT,
206   GIMP_CURSOR_SIDE_LEFT,
207   GIMP_CURSOR_SIDE_TOP_LEFT,
208   GIMP_CURSOR_LAST
209 } GimpCursorType;
210 
211 typedef enum  /*< skip >*/
212 {
213   GIMP_TOOL_CURSOR_NONE,
214   GIMP_TOOL_CURSOR_RECT_SELECT,
215   GIMP_TOOL_CURSOR_ELLIPSE_SELECT,
216   GIMP_TOOL_CURSOR_FREE_SELECT,
217   GIMP_TOOL_CURSOR_POLYGON_SELECT,
218   GIMP_TOOL_CURSOR_FUZZY_SELECT,
219   GIMP_TOOL_CURSOR_PATHS,
220   GIMP_TOOL_CURSOR_PATHS_ANCHOR,
221   GIMP_TOOL_CURSOR_PATHS_CONTROL,
222   GIMP_TOOL_CURSOR_PATHS_SEGMENT,
223   GIMP_TOOL_CURSOR_ISCISSORS,
224   GIMP_TOOL_CURSOR_MOVE,
225   GIMP_TOOL_CURSOR_ZOOM,
226   GIMP_TOOL_CURSOR_CROP,
227   GIMP_TOOL_CURSOR_RESIZE,
228   GIMP_TOOL_CURSOR_ROTATE,
229   GIMP_TOOL_CURSOR_SHEAR,
230   GIMP_TOOL_CURSOR_PERSPECTIVE,
231   GIMP_TOOL_CURSOR_TRANSFORM_3D_CAMERA,
232   GIMP_TOOL_CURSOR_FLIP_HORIZONTAL,
233   GIMP_TOOL_CURSOR_FLIP_VERTICAL,
234   GIMP_TOOL_CURSOR_TEXT,
235   GIMP_TOOL_CURSOR_COLOR_PICKER,
236   GIMP_TOOL_CURSOR_BUCKET_FILL,
237   GIMP_TOOL_CURSOR_GRADIENT,
238   GIMP_TOOL_CURSOR_PENCIL,
239   GIMP_TOOL_CURSOR_PAINTBRUSH,
240   GIMP_TOOL_CURSOR_AIRBRUSH,
241   GIMP_TOOL_CURSOR_INK,
242   GIMP_TOOL_CURSOR_CLONE,
243   GIMP_TOOL_CURSOR_HEAL,
244   GIMP_TOOL_CURSOR_ERASER,
245   GIMP_TOOL_CURSOR_SMUDGE,
246   GIMP_TOOL_CURSOR_BLUR,
247   GIMP_TOOL_CURSOR_DODGE,
248   GIMP_TOOL_CURSOR_BURN,
249   GIMP_TOOL_CURSOR_MEASURE,
250   GIMP_TOOL_CURSOR_WARP,
251   GIMP_TOOL_CURSOR_HAND,
252   GIMP_TOOL_CURSOR_LAST
253 } GimpToolCursorType;
254 
255 typedef enum  /*< skip >*/
256 {
257   GIMP_CURSOR_MODIFIER_NONE,
258   GIMP_CURSOR_MODIFIER_BAD,
259   GIMP_CURSOR_MODIFIER_PLUS,
260   GIMP_CURSOR_MODIFIER_MINUS,
261   GIMP_CURSOR_MODIFIER_INTERSECT,
262   GIMP_CURSOR_MODIFIER_MOVE,
263   GIMP_CURSOR_MODIFIER_RESIZE,
264   GIMP_CURSOR_MODIFIER_ROTATE,
265   GIMP_CURSOR_MODIFIER_ZOOM,
266   GIMP_CURSOR_MODIFIER_CONTROL,
267   GIMP_CURSOR_MODIFIER_ANCHOR,
268   GIMP_CURSOR_MODIFIER_FOREGROUND,
269   GIMP_CURSOR_MODIFIER_BACKGROUND,
270   GIMP_CURSOR_MODIFIER_PATTERN,
271   GIMP_CURSOR_MODIFIER_JOIN,
272   GIMP_CURSOR_MODIFIER_SELECT,
273   GIMP_CURSOR_MODIFIER_LAST
274 } GimpCursorModifier;
275 
276 typedef enum  /*< skip >*/
277 {
278   GIMP_DEVICE_VALUE_MODE       = 1 << 0,
279   GIMP_DEVICE_VALUE_AXES       = 1 << 1,
280   GIMP_DEVICE_VALUE_KEYS       = 1 << 2,
281   GIMP_DEVICE_VALUE_TOOL       = 1 << 3,
282   GIMP_DEVICE_VALUE_FOREGROUND = 1 << 4,
283   GIMP_DEVICE_VALUE_BACKGROUND = 1 << 5,
284   GIMP_DEVICE_VALUE_BRUSH      = 1 << 6,
285   GIMP_DEVICE_VALUE_PATTERN    = 1 << 7,
286   GIMP_DEVICE_VALUE_GRADIENT   = 1 << 8
287 } GimpDeviceValues;
288 
289 typedef enum  /*< skip >*/
290 {
291   GIMP_DIALOGS_SHOWN,
292   GIMP_DIALOGS_HIDDEN_EXPLICITLY,  /* user used the Tab key to hide dialogs */
293   GIMP_DIALOGS_HIDDEN_WITH_DISPLAY /* dialogs are hidden with the display   */
294 } GimpDialogsState;
295 
296 typedef enum  /*< skip >*/
297 {
298   GIMP_DASHBOARD_UPDATE_INTERVAL_0_25_SEC =    250,
299   GIMP_DASHBOARD_UPDATE_INTERVAL_0_5_SEC  =    500,
300   GIMP_DASHBOARD_UPDATE_INTERVAL_1_SEC    =   1000,
301   GIMP_DASHBOARD_UPDATE_INTERVAL_2_SEC    =   2000,
302   GIMP_DASHBOARD_UPDATE_INTERVAL_4_SEC    =   4000
303 } GimpDashboardUpdateInteval;
304 
305 typedef enum  /*< skip >*/
306 {
307   GIMP_DASHBOARD_HISTORY_DURATION_15_SEC  =  15000,
308   GIMP_DASHBOARD_HISTORY_DURATION_30_SEC  =  30000,
309   GIMP_DASHBOARD_HISTORY_DURATION_60_SEC  =  60000,
310   GIMP_DASHBOARD_HISTORY_DURATION_120_SEC = 120000,
311   GIMP_DASHBOARD_HISTORY_DURATION_240_SEC = 240000
312 } GimpDashboardHistoryDuration;
313 
314 
315 #endif /* __WIDGETS_ENUMS_H__ */
316