1 /* pisa_enums.h
2    Copyright (C) 2001, 2004 SEIKO EPSON Corporation
3 
4    Date         Author      Reason
5    06/01/2001   N.Sasaki    New
6 
7    This file is part of the `iscan' program.
8 
9    This program is free software; you can redistribute it and/or modify
10    it under the terms of the GNU General Public License as published by
11    the Free Software Foundation; either version 2 of the License, or
12    (at your option) any later version.
13 
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License for more details.
18 
19    You should have received a copy of the GNU General Public License
20    along with this program; if not, write to the Free Software
21    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 
23    As a special exception, the copyright holders give permission
24    to link the code of this program with the esmod library and
25    distribute linked combinations including the two.  You must obey
26    the GNU General Public License in all respects for all of the
27    code used other then esmod.
28 */
29 
30 #ifndef ___PISA_ENUMS_H
31 #define ___PISA_ENUMS_H
32 
33 // destination
34 typedef enum
35 {
36   PISA_DE_FILE,
37   PISA_DE_PRINTER,
38   PISA_DE_GIMP
39 } pisa_dest_type;
40 
41 // file type
42 typedef enum
43 {
44   PISA_FI_UNSUPPORTED,
45   PISA_FI_PNM,
46   PISA_FI_PNG,
47   PISA_FI_JPG
48 } pisa_file_type;
49 
50 // option
51 typedef enum
52 {
53   PISA_OP_FLATBED	= 1 << 0,
54   PISA_OP_ADF		= 1 << 1,
55   PISA_OP_ADFDPLX	= 1 << 2,
56   PISA_OP_TPU		= 1 << 3,
57 } pisa_option_type;
58 
59 // film type
60 typedef enum
61 {
62   PISA_FT_POSI,
63   PISA_FT_NEGA,
64   PISA_FT_REFLECT
65 } pisa_film_type;
66 
67 // pixel type
68 typedef enum
69 {
70   PISA_PT_BW,
71   PISA_PT_GRAY,
72   PISA_PT_RGB
73 } pisa_pixel_type;
74 
75 // bit depth
76 typedef enum
77 {
78   PISA_BD_1	= 1 << 0,
79   PISA_BD_8	= 1 << 1,
80   PISA_BD_12	= 1 << 2,
81   PISA_BD_14	= 1 << 3,
82   PISA_BD_16	= 1 << 4
83 } pisa_bitdepth_type;
84 
85 // scan speed
86 typedef enum
87 {
88   PISA_SS_NORMAL,
89   PISA_SS_DRAFT
90 } pisa_scanepeed_type;
91 
92 // de-screening
93 typedef enum
94 {
95   PISA_DESCREEN_ON,
96   PISA_DESCREEN_OFF
97 } pisa_descreening_type;
98 
99 // auto exposure option
100 typedef enum
101 {
102   PISA_AE_PHOTO,
103   PISA_AE_DOC,
104   PISA_AE_GRAYED
105 } pisa_aeoption_type;
106 
107 // dropout
108 typedef enum
109 {
110   PISA_DO_NONE,
111   PISA_DO_RED,
112   PISA_DO_GREEN,
113   PISA_DO_BLUE
114 } pisa_dropout_type;
115 
116 // mono option
117 typedef enum
118 {
119   PISA_MO_NONE,
120   PISA_MO_TET,
121   PISA_MO_AAS
122 } pisa_monooption_type;
123 
124 // halftone
125 typedef enum
126 {
127   PISA_HT_NONE,
128   PISA_HT_TONEA,
129   PISA_HT_TONEB,
130   PISA_HT_TONEC,
131   PISA_HT_DITHERA,
132   PISA_HT_DITHERB,
133   PISA_HT_DITHERC,
134   PISA_HT_DITHERD,
135   PISA_HT_USERA,
136   PISA_HT_USERB
137 } pisa_halftone_type;
138 
139 // unit
140 typedef enum
141 {
142   PISA_UNIT_INCHES,
143   PISA_UNIT_PIXELS,
144   PISA_UNIT_CM
145 } pisa_unit_type;
146 
147 // cursor
148 typedef enum
149 {
150   PISA_CS_ARROW,
151   PISA_CS_HAND,
152   PISA_CS_CROSS,
153   PISA_CS_TOP,
154   PISA_CS_BOTTOM,
155   PISA_CS_LEFT,
156   PISA_CS_RIGHT,
157   PISA_CS_LEFTTOP,
158   PISA_CS_LEFTBOTTOM,
159   PISA_CS_RIGHTTOP,
160   PISA_CS_RIGHTBOTTOM
161 } pisa_cursor_type;
162 
163 // cursor gamma table
164 typedef enum {
165   PISA_CS_GM_X,
166   PISA_CS_GM_FLEUR,
167   PISA_CS_GM_TCROSS,
168 } pisa_cursor_gm_type;
169 
170 // resize
171 typedef enum
172 {
173   PISA_RS_NN=1,	// nearest neighbor
174   PISA_RS_BL,	// bi linear
175   PISA_RS_BC,	// bi cubic
176 } pisa_rs_type;
177 
178 // sharp
179 typedef enum
180 {
181   PISA_SH_UMASK = 1,	// unsharp mask
182   PISA_SH_GAUSS,	// gauss
183   PISA_SH_UMASKY,	// unsahrp mask y
184 } pisa_sh_type;
185 
186 // scan
187 typedef enum
188 {
189   PISA_ST_SCAN,
190   PISA_ST_PREV
191 } pisa_scan_type;
192 
193 // preview
194 typedef enum
195 {
196   PISA_PREV_WHOLE,
197   PISA_PREV_ZOOM
198 } pisa_preview_type;
199 
200 // window
201 typedef enum
202 {
203   ID_WINDOW_MAIN,
204   ID_WINDOW_PREV,
205   ID_WINDOW_IMGCTRL,
206   ID_WINDOW_GAMMA,
207   ID_WINDOW_CONFIG,
208 } pisa_window_id;
209 
210 // main window
211 enum widget_main_window
212 {
213   WG_MAIN_TOP,
214   WG_MAIN_PREV_BTN,
215   WG_MAIN_ZOOM_BTN,
216   WG_MAIN_EXPO_BTN,
217   WG_MAIN_DEST_MENU,
218   WG_MAIN_SCAN_BTN,
219   WG_MAIN_START_BTN,
220   WG_MAIN_IMG_MENU,
221   WG_MAIN_RES_MENU,
222   WG_MAIN_WIDTH,
223   WG_MAIN_HEIGHT,
224   WG_MAIN_FOCUS_0,
225   WG_MAIN_FOCUS_25,
226   WG_MAIN_USM,
227   WG_MAIN_CONFIG_BTN,
228   WG_MAIN_NUM
229 };
230 
231 // gamma correction
232 #define GAMMA_RGB	0x00
233 #define GAMMA_RED	0x01
234 #define GAMMA_GRN	0x02
235 #define GAMMA_BLU	0x03
236 
237 enum widget_gamma_window
238 {
239   WG_GAMMA_TAB_RGB,
240   WG_GAMMA_TAB_RED,
241   WG_GAMMA_TAB_GRN,
242   WG_GAMMA_TAB_BLU,
243   WG_GAMMA_BOX_RGB,
244   WG_GAMMA_BOX_RED,
245   WG_GAMMA_BOX_GRN,
246   WG_GAMMA_BOX_BLU,
247   WG_GAMMA_RESET,
248   WG_GAMMA_NOTE,
249   WG_GAMMA_NUM
250 };
251 
252 // configuration
253 enum widget_configuration
254 {
255   WG_CONFIG_TOP,
256   WG_CONFIG_PATH,
257   WG_CONFIG_NUM
258 };
259 
260 // file select
261 enum widget_file_select
262 {
263   WG_FS_TOP,
264   WG_FS_NUM
265 };
266 
267 // print window
268 enum widget_print_window
269 {
270   WG_PRINT_TOP,
271   WG_PRINT_NUM
272 };
273 
274 #endif // ___PISA_ENUMS_H
275 
276 
277