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 __DISPLAY_ENUMS_H__
19 #define __DISPLAY_ENUMS_H__
20 
21 
22 #define GIMP_TYPE_BUTTON_PRESS_TYPE (gimp_button_press_type_get_type ())
23 
24 GType gimp_button_press_type_get_type (void) G_GNUC_CONST;
25 
26 typedef enum
27 {
28   GIMP_BUTTON_PRESS_NORMAL,
29   GIMP_BUTTON_PRESS_DOUBLE,
30   GIMP_BUTTON_PRESS_TRIPLE
31 } GimpButtonPressType;
32 
33 
34 #define GIMP_TYPE_BUTTON_RELEASE_TYPE (gimp_button_release_type_get_type ())
35 
36 GType gimp_button_release_type_get_type (void) G_GNUC_CONST;
37 
38 typedef enum
39 {
40   GIMP_BUTTON_RELEASE_NORMAL,
41   GIMP_BUTTON_RELEASE_CANCEL,
42   GIMP_BUTTON_RELEASE_CLICK,
43   GIMP_BUTTON_RELEASE_NO_MOTION
44 } GimpButtonReleaseType;
45 
46 
47 #define GIMP_TYPE_COMPASS_ORIENTATION (gimp_compass_orientation_get_type ())
48 
49 GType gimp_compass_orientation_get_type (void) G_GNUC_CONST;
50 
51 typedef enum
52 {
53   GIMP_COMPASS_ORIENTATION_AUTO,       /*< desc="Auto"       >*/
54   GIMP_COMPASS_ORIENTATION_HORIZONTAL, /*< desc="Horizontal" >*/
55   GIMP_COMPASS_ORIENTATION_VERTICAL    /*< desc="Vertical"   >*/
56 } GimpCompassOrientation;
57 
58 
59 #define GIMP_TYPE_CURSOR_PRECISION (gimp_cursor_precision_get_type ())
60 
61 GType gimp_cursor_precision_get_type (void) G_GNUC_CONST;
62 
63 typedef enum
64 {
65   GIMP_CURSOR_PRECISION_PIXEL_CENTER,
66   GIMP_CURSOR_PRECISION_PIXEL_BORDER,
67   GIMP_CURSOR_PRECISION_SUBPIXEL
68 } GimpCursorPrecision;
69 
70 
71 #define GIMP_TYPE_GUIDES_TYPE (gimp_guides_type_get_type ())
72 
73 GType gimp_guides_type_get_type (void) G_GNUC_CONST;
74 
75 typedef enum
76 {
77   GIMP_GUIDES_NONE,          /*< desc="No guides"       >*/
78   GIMP_GUIDES_CENTER_LINES,  /*< desc="Center lines"    >*/
79   GIMP_GUIDES_THIRDS,        /*< desc="Rule of thirds"  >*/
80   GIMP_GUIDES_FIFTHS,        /*< desc="Rule of fifths"  >*/
81   GIMP_GUIDES_GOLDEN,        /*< desc="Golden sections" >*/
82   GIMP_GUIDES_DIAGONALS,     /*< desc="Diagonal lines"  >*/
83   GIMP_GUIDES_N_LINES,       /*< desc="Number of lines" >*/
84   GIMP_GUIDES_SPACING        /*< desc="Line spacing"    >*/
85 } GimpGuidesType;
86 
87 
88 #define GIMP_TYPE_HANDLE_TYPE (gimp_handle_type_get_type ())
89 
90 GType gimp_handle_type_get_type (void) G_GNUC_CONST;
91 
92 typedef enum
93 {
94   GIMP_HANDLE_SQUARE,
95   GIMP_HANDLE_DASHED_SQUARE,
96   GIMP_HANDLE_FILLED_SQUARE,
97   GIMP_HANDLE_CIRCLE,
98   GIMP_HANDLE_DASHED_CIRCLE,
99   GIMP_HANDLE_FILLED_CIRCLE,
100   GIMP_HANDLE_DIAMOND,
101   GIMP_HANDLE_DASHED_DIAMOND,
102   GIMP_HANDLE_FILLED_DIAMOND,
103   GIMP_HANDLE_CROSS,
104   GIMP_HANDLE_CROSSHAIR
105 } GimpHandleType;
106 
107 
108 #define GIMP_TYPE_HANDLE_ANCHOR (gimp_handle_anchor_get_type ())
109 
110 GType gimp_handle_anchor_get_type (void) G_GNUC_CONST;
111 
112 typedef enum
113 {
114   GIMP_HANDLE_ANCHOR_CENTER,
115   GIMP_HANDLE_ANCHOR_NORTH,
116   GIMP_HANDLE_ANCHOR_NORTH_WEST,
117   GIMP_HANDLE_ANCHOR_NORTH_EAST,
118   GIMP_HANDLE_ANCHOR_SOUTH,
119   GIMP_HANDLE_ANCHOR_SOUTH_WEST,
120   GIMP_HANDLE_ANCHOR_SOUTH_EAST,
121   GIMP_HANDLE_ANCHOR_WEST,
122   GIMP_HANDLE_ANCHOR_EAST
123 } GimpHandleAnchor;
124 
125 
126 #define GIMP_TYPE_LIMIT_TYPE (gimp_limit_type_get_type ())
127 
128 GType gimp_limit_type_get_type (void) G_GNUC_CONST;
129 
130 typedef enum
131 {
132   GIMP_LIMIT_CIRCLE,
133   GIMP_LIMIT_SQUARE,
134   GIMP_LIMIT_DIAMOND,
135   GIMP_LIMIT_HORIZONTAL,
136   GIMP_LIMIT_VERTICAL
137 } GimpLimitType;
138 
139 
140 #define GIMP_TYPE_PATH_STYLE (gimp_path_style_get_type ())
141 
142 GType gimp_path_style_get_type (void) G_GNUC_CONST;
143 
144 typedef enum
145 {
146   GIMP_PATH_STYLE_DEFAULT,
147   GIMP_PATH_STYLE_VECTORS,
148   GIMP_PATH_STYLE_OUTLINE
149 } GimpPathStyle;
150 
151 
152 #define GIMP_TYPE_RECTANGLE_CONSTRAINT (gimp_rectangle_constraint_get_type ())
153 
154 GType gimp_rectangle_constraint_get_type (void) G_GNUC_CONST;
155 
156 typedef enum
157 {
158   GIMP_RECTANGLE_CONSTRAIN_NONE,
159   GIMP_RECTANGLE_CONSTRAIN_IMAGE,
160   GIMP_RECTANGLE_CONSTRAIN_DRAWABLE
161 } GimpRectangleConstraint;
162 
163 
164 #define GIMP_TYPE_RECTANGLE_FIXED_RULE (gimp_rectangle_fixed_rule_get_type ())
165 
166 GType gimp_rectangle_fixed_rule_get_type (void) G_GNUC_CONST;
167 
168 typedef enum
169 {
170   GIMP_RECTANGLE_FIXED_ASPECT, /*< desc="Aspect ratio" >*/
171   GIMP_RECTANGLE_FIXED_WIDTH,  /*< desc="Width"        >*/
172   GIMP_RECTANGLE_FIXED_HEIGHT, /*< desc="Height"       >*/
173   GIMP_RECTANGLE_FIXED_SIZE,   /*< desc="Size"         >*/
174 } GimpRectangleFixedRule;
175 
176 
177 #define GIMP_TYPE_RECTANGLE_PRECISION (gimp_rectangle_precision_get_type ())
178 
179 GType gimp_rectangle_precision_get_type (void) G_GNUC_CONST;
180 
181 typedef enum
182 {
183   GIMP_RECTANGLE_PRECISION_INT,
184   GIMP_RECTANGLE_PRECISION_DOUBLE,
185 } GimpRectanglePrecision;
186 
187 
188 #define GIMP_TYPE_TRANSFORM_3D_MODE (gimp_transform_3d_mode_get_type ())
189 
190 GType gimp_transform_3d_mode_get_type (void) G_GNUC_CONST;
191 
192 typedef enum /*< lowercase_name=gimp_transform_3d_mode >*/
193 {
194   GIMP_TRANSFORM_3D_MODE_CAMERA,
195   GIMP_TRANSFORM_3D_MODE_MOVE,
196   GIMP_TRANSFORM_3D_MODE_ROTATE
197 } GimpTransform3DMode;
198 
199 
200 #define GIMP_TYPE_TRANSFORM_FUNCTION (gimp_transform_function_get_type ())
201 
202 GType gimp_transform_function_get_type (void) G_GNUC_CONST;
203 
204 typedef enum
205 {
206   GIMP_TRANSFORM_FUNCTION_NONE,
207   GIMP_TRANSFORM_FUNCTION_MOVE,
208   GIMP_TRANSFORM_FUNCTION_SCALE,
209   GIMP_TRANSFORM_FUNCTION_ROTATE,
210   GIMP_TRANSFORM_FUNCTION_SHEAR,
211   GIMP_TRANSFORM_FUNCTION_PERSPECTIVE
212 } GimpTransformFunction;
213 
214 
215 #define GIMP_TYPE_TRANSFORM_HANDLE_MODE (gimp_transform_handle_mode_get_type ())
216 
217 GType gimp_transform_handle_mode_get_type (void) G_GNUC_CONST;
218 
219 typedef enum
220 {
221   GIMP_HANDLE_MODE_ADD_TRANSFORM, /*< desc="Add / Transform" >*/
222   GIMP_HANDLE_MODE_MOVE,          /*< desc="Move"            >*/
223   GIMP_HANDLE_MODE_REMOVE         /*< desc="Remove"          >*/
224 } GimpTransformHandleMode;
225 
226 
227 #define GIMP_TYPE_VECTOR_MODE (gimp_vector_mode_get_type ())
228 
229 GType gimp_vector_mode_get_type (void) G_GNUC_CONST;
230 
231 typedef enum
232 {
233   GIMP_VECTOR_MODE_DESIGN,      /*< desc="Design" >*/
234   GIMP_VECTOR_MODE_EDIT,        /*< desc="Edit"   >*/
235   GIMP_VECTOR_MODE_MOVE         /*< desc="Move"   >*/
236 } GimpVectorMode;
237 
238 
239 #define GIMP_TYPE_ZOOM_FOCUS (gimp_zoom_focus_get_type ())
240 
241 GType gimp_zoom_focus_get_type (void) G_GNUC_CONST;
242 
243 typedef enum
244 {
245   /* Make a best guess */
246   GIMP_ZOOM_FOCUS_BEST_GUESS,
247 
248   /* Use the mouse cursor (if within canvas) */
249   GIMP_ZOOM_FOCUS_POINTER,
250 
251   /* Use the image center */
252   GIMP_ZOOM_FOCUS_IMAGE_CENTER,
253 
254   /* If the image is centered, retain the centering. Else use
255    * _BEST_GUESS
256    */
257   GIMP_ZOOM_FOCUS_RETAIN_CENTERING_ELSE_BEST_GUESS
258 
259 } GimpZoomFocus;
260 
261 
262 /*
263  * non-registered enums; register them if needed
264  */
265 
266 
267 typedef enum  /*< pdb-skip, skip >*/
268 {
269   GIMP_HIT_NONE,
270   GIMP_HIT_INDIRECT,
271   GIMP_HIT_DIRECT
272 } GimpHit;
273 
274 
275 #endif /* __DISPLAY_ENUMS_H__ */
276