Mercurial > geeqie.yaz
annotate src/typedefs.h @ 931:a53f5141228b
allow only existing folders in destination dialog
http://sourceforge.net/tracker/index.php?func=detail&aid=2011243&group_id=222125&atid=1054680
author | nadvornik |
---|---|
date | Sat, 26 Jul 2008 18:17:56 +0000 |
parents | ca07ab364c60 |
children | 8c5ba3e94e54 |
rev | line source |
---|---|
9 | 1 /* |
196 | 2 * Geeqie |
115
53b2bfdcff69
Tue Nov 28 11:54:30 2006 John Ellis <johne@verizon.net>
gqview
parents:
113
diff
changeset
|
3 * (C) 2006 John Ellis |
475 | 4 * Copyright (C) 2008 The Geeqie Team |
9 | 5 * |
6 * Author: John Ellis | |
7 * | |
8 * This software is released under the GNU General Public License (GNU GPL). | |
9 * Please read the included file COPYING for more information. | |
10 * This software comes with no warranty of any kind, use at your own risk! | |
11 */ | |
12 | |
13 | |
14 #ifndef TYPEDEFS_H | |
15 #define TYPEDEFS_H | |
16 | |
134
9009856628f7
started implementation of external commands; external Delete should work
nadvornik
parents:
132
diff
changeset
|
17 typedef enum { |
885
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
868
diff
changeset
|
18 ZOOM_RESET_ORIGINAL = 0, |
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
868
diff
changeset
|
19 ZOOM_RESET_FIT_WINDOW = 1, |
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
868
diff
changeset
|
20 ZOOM_RESET_NONE = 2 |
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
868
diff
changeset
|
21 } ZoomMode; |
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
868
diff
changeset
|
22 |
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
868
diff
changeset
|
23 typedef enum { |
448
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
24 MOUSE_BUTTON_LEFT = 1, |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
25 MOUSE_BUTTON_MIDDLE = 2, |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
26 MOUSE_BUTTON_RIGHT = 3, |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
27 MOUSE_BUTTON_WHEEL_UP = 4, |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
28 MOUSE_BUTTON_WHEEL_DOWN = 5 |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
29 } MouseButton; |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
30 |
a73cc0fa14d0
Use explicit names for mouse buttons instead of numbers.
zas_
parents:
446
diff
changeset
|
31 typedef enum { |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
32 DIRVIEW_LIST, |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
33 DIRVIEW_TREE |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
34 } DirViewType; |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
35 |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
36 typedef enum { |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
37 FILEVIEW_LIST, |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
38 FILEVIEW_ICON |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
39 } FileViewType; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
40 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
41 typedef enum { |
283 | 42 CMD_COPY = GQ_EDITOR_GENERIC_SLOTS, |
134
9009856628f7
started implementation of external commands; external Delete should work
nadvornik
parents:
132
diff
changeset
|
43 CMD_MOVE, |
9009856628f7
started implementation of external commands; external Delete should work
nadvornik
parents:
132
diff
changeset
|
44 CMD_RENAME, |
9009856628f7
started implementation of external commands; external Delete should work
nadvornik
parents:
132
diff
changeset
|
45 CMD_DELETE, |
9009856628f7
started implementation of external commands; external Delete should work
nadvornik
parents:
132
diff
changeset
|
46 CMD_FOLDER, |
283 | 47 GQ_EDITOR_SLOTS |
134
9009856628f7
started implementation of external commands; external Delete should work
nadvornik
parents:
132
diff
changeset
|
48 } SpecialEditor; |
9 | 49 |
50 typedef enum { | |
51 SORT_NONE, | |
52 SORT_NAME, | |
53 SORT_SIZE, | |
54 SORT_TIME, | |
55 SORT_PATH, | |
56 SORT_NUMBER | |
57 } SortType; | |
58 | |
59 typedef enum { | |
60 ALTER_NONE, /* do nothing */ | |
61 ALTER_ROTATE_90, | |
62 ALTER_ROTATE_90_CC, /* counterclockwise */ | |
63 ALTER_ROTATE_180, | |
64 ALTER_MIRROR, | |
82
a4c1b7014e6e
Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents:
41
diff
changeset
|
65 ALTER_FLIP, |
a4c1b7014e6e
Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents:
41
diff
changeset
|
66 ALTER_DESATURATE |
9 | 67 } AlterType; |
68 | |
69 typedef enum { | |
70 LAYOUT_HIDE = 0, | |
71 LAYOUT_LEFT = 1 << 0, | |
72 LAYOUT_RIGHT = 1 << 1, | |
73 LAYOUT_TOP = 1 << 2, | |
74 LAYOUT_BOTTOM = 1 << 3 | |
75 } LayoutLocation; | |
76 | |
77 | |
113
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
78 typedef enum { |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
79 IMAGE_STATE_NONE = 0, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
80 IMAGE_STATE_IMAGE = 1 << 0, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
81 IMAGE_STATE_LOADING = 1 << 1, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
82 IMAGE_STATE_ERROR = 1 << 2, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
83 IMAGE_STATE_COLOR_ADJ = 1 << 3, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
84 IMAGE_STATE_ROTATE_AUTO = 1 << 4, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
85 IMAGE_STATE_ROTATE_USER = 1 << 5, |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
86 IMAGE_STATE_DELAY_FLIP = 1 << 6 |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
87 } ImageState; |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
88 |
127 | 89 typedef enum { |
90 SPLIT_NONE = 0, | |
91 SPLIT_VERT, | |
92 SPLIT_HOR, | |
93 SPLIT_QUAD, | |
94 } ImageSplitMode; | |
95 | |
143
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
96 typedef enum { |
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
97 FILEDATA_CHANGE_DELETE, |
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
98 FILEDATA_CHANGE_MOVE, |
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
99 FILEDATA_CHANGE_RENAME, |
590 | 100 FILEDATA_CHANGE_COPY, |
753 | 101 FILEDATA_CHANGE_UNSPECIFIED |
143
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
102 } FileDataChangeType; |
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
103 |
161 | 104 typedef enum { |
105 MTS_MODE_MINUS, | |
106 MTS_MODE_SET, | |
107 MTS_MODE_OR, | |
108 MTS_MODE_AND | |
109 } MarkToSelectionMode; | |
110 | |
111 typedef enum { | |
112 STM_MODE_RESET, | |
113 STM_MODE_SET, | |
114 STM_MODE_TOGGLE | |
115 } SelectionToMarkMode; | |
116 | |
212
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
117 typedef enum { |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
118 FORMAT_CLASS_UNKNOWN, |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
119 FORMAT_CLASS_IMAGE, |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
120 FORMAT_CLASS_RAWIMAGE, |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
121 FORMAT_CLASS_META, |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
122 FILE_FORMAT_CLASSES |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
123 } FileFormatClass; |
c7021159079d
differentiate among normal image, raw image and metadata
nadvornik
parents:
196
diff
changeset
|
124 |
276 | 125 typedef enum { |
126 SS_ERR_NONE = 0, | |
127 SS_ERR_DISABLED, /**< secsave is disabled. */ | |
128 SS_ERR_OUT_OF_MEM, /**< memory allocation failure */ | |
129 | |
130 /* see err field in SecureSaveInfo */ | |
131 SS_ERR_OPEN_READ, | |
132 SS_ERR_OPEN_WRITE, | |
133 SS_ERR_STAT, | |
134 SS_ERR_ACCESS, | |
135 SS_ERR_MKSTEMP, | |
136 SS_ERR_RENAME, | |
137 SS_ERR_OTHER, | |
138 } SecureSaveErrno; | |
139 | |
791 | 140 typedef enum { |
141 NOTIFY_PRIORITY_HIGH = 0, | |
142 NOTIFY_PRIORITY_MEDIUM, | |
143 NOTIFY_PRIORITY_LOW | |
144 } NotifyPriority; | |
145 | |
792 | 146 typedef enum { |
147 NOTIFY_TYPE_INTERNAL = 0, /* changed internal data only, like marks */ | |
148 NOTIFY_TYPE_REREAD, /* changed file size, date, etc., file name remains unchanged */ | |
149 NOTIFY_TYPE_CHANGE /* generic change described by fd->change */ | |
150 } NotifyType; | |
791 | 151 |
914
9427c91951e8
basic infrastructure for early error and dangerous operations checking
nadvornik
parents:
888
diff
changeset
|
152 typedef enum { |
929 | 153 CHANGE_OK = 0, |
154 CHANGE_WARN_DEST_EXISTS = 1 << 0, | |
155 CHANGE_WARN_NO_WRITE_PERM = 1 << 1, | |
156 CHANGE_WARN_SAME = 1 << 2, | |
157 CHANGE_ERROR_MASK = (~0) << 3, /* the values below are fatal errors */ | |
158 CHANGE_NO_READ_PERM = 1 << 3, | |
159 CHANGE_NO_WRITE_PERM_DIR = 1 << 4, | |
160 CHANGE_NO_DEST_DIR = 1 << 5, | |
161 CHANGE_NO_WRITE_PERM_DEST_DIR = 1 << 6, | |
162 CHANGE_NO_WRITE_PERM_DEST = 1 << 7, | |
163 CHANGE_DEST_EXISTS = 1 << 8, | |
931
a53f5141228b
allow only existing folders in destination dialog
nadvornik
parents:
929
diff
changeset
|
164 CHANGE_NO_SRC = 1 << 9, |
a53f5141228b
allow only existing folders in destination dialog
nadvornik
parents:
929
diff
changeset
|
165 CHANGE_GENERIC_ERROR = 1 << 16 |
914
9427c91951e8
basic infrastructure for early error and dangerous operations checking
nadvornik
parents:
888
diff
changeset
|
166 } ChangeError; |
9427c91951e8
basic infrastructure for early error and dangerous operations checking
nadvornik
parents:
888
diff
changeset
|
167 |
127 | 168 #define MAX_SPLIT_IMAGES 4 |
169 | |
9 | 170 typedef struct _ImageLoader ImageLoader; |
171 typedef struct _ThumbLoader ThumbLoader; | |
172 | |
173 typedef struct _CollectInfo CollectInfo; | |
174 typedef struct _CollectionData CollectionData; | |
175 typedef struct _CollectTable CollectTable; | |
176 typedef struct _CollectWindow CollectWindow; | |
177 | |
178 typedef struct _ImageWindow ImageWindow; | |
179 | |
180 typedef struct _FileData FileData; | |
138 | 181 typedef struct _FileDataChangeInfo FileDataChangeInfo; |
9 | 182 |
183 typedef struct _LayoutWindow LayoutWindow; | |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
184 |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
185 typedef struct _ViewDir ViewDir; |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
186 typedef struct _ViewDirInfoList ViewDirInfoList; |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
187 typedef struct _ViewDirInfoTree ViewDirInfoTree; |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
188 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
189 typedef struct _ViewFile ViewFile; |
557
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
190 typedef struct _ViewFileInfoList ViewFileInfoList; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
191 typedef struct _ViewFileInfoIcon ViewFileInfoIcon; |
9 | 192 |
193 typedef struct _SlideShowData SlideShowData; | |
194 typedef struct _FullScreenData FullScreenData; | |
195 | |
196 typedef struct _PixmapFolders PixmapFolders; | |
273
e0e2c2b72c5a
reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents:
212
diff
changeset
|
197 typedef struct _Histogram Histogram; |
e0e2c2b72c5a
reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents:
212
diff
changeset
|
198 |
276 | 199 typedef struct _SecureSaveInfo SecureSaveInfo; |
9 | 200 |
844 | 201 typedef struct _ExifData ExifData; |
202 | |
730 | 203 typedef struct _Editor Editor; |
204 struct _Editor { | |
205 gchar *name; | |
206 gchar *command; | |
207 }; | |
9 | 208 |
209 struct _ImageLoader | |
210 { | |
211 GdkPixbuf *pixbuf; | |
138 | 212 FileData *fd; |
9 | 213 gchar *path; |
214 | |
215 gint bytes_read; | |
216 gint bytes_total; | |
217 | |
218 gint requested_width; | |
219 gint requested_height; | |
14
25335c62cd9b
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
12
diff
changeset
|
220 gint shrunk; |
9 | 221 |
222 gint done; | |
223 gint idle_id; | |
224 gint idle_priority; | |
225 | |
226 GdkPixbufLoader *loader; | |
227 gint load_fd; | |
228 | |
229 void (*func_area_ready)(ImageLoader *, guint x, guint y, guint w, guint h, gpointer); | |
230 void (*func_error)(ImageLoader *, gpointer); | |
231 void (*func_done)(ImageLoader *, gpointer); | |
232 void (*func_percent)(ImageLoader *, gdouble, gpointer); | |
233 | |
234 gpointer data_area_ready; | |
235 gpointer data_error; | |
236 gpointer data_done; | |
237 gpointer data_percent; | |
238 | |
239 gint idle_done_id; | |
413
9e521adbf312
Add two new options to control image read buffer at runtime.
zas_
parents:
407
diff
changeset
|
240 |
9e521adbf312
Add two new options to control image read buffer at runtime.
zas_
parents:
407
diff
changeset
|
241 guchar *read_buffer; |
9e521adbf312
Add two new options to control image read buffer at runtime.
zas_
parents:
407
diff
changeset
|
242 gint read_buffer_size; |
9e521adbf312
Add two new options to control image read buffer at runtime.
zas_
parents:
407
diff
changeset
|
243 gint idle_read_loop_count; |
9 | 244 }; |
245 | |
246 typedef void (* ThumbLoaderFunc)(ThumbLoader *tl, gpointer data); | |
247 | |
248 struct _ThumbLoader | |
249 { | |
250 gint standard_loader; | |
251 | |
252 ImageLoader *il; | |
838 | 253 FileData *fd; /* fd->pixbuf contains final (scaled) image when done */ |
9 | 254 |
255 gint cache_enable; | |
256 gint cache_hit; | |
257 gdouble percent_done; | |
258 | |
259 gint max_w; | |
260 gint max_h; | |
261 | |
262 ThumbLoaderFunc func_done; | |
263 ThumbLoaderFunc func_error; | |
264 ThumbLoaderFunc func_progress; | |
265 | |
266 gpointer data; | |
267 | |
268 gint idle_done_id; | |
269 }; | |
270 | |
271 struct _CollectInfo | |
272 { | |
138 | 273 FileData *fd; |
9 | 274 GdkPixbuf *pixbuf; |
736 | 275 guint flag_mask; |
9 | 276 }; |
277 | |
278 struct _CollectionData | |
279 { | |
280 gchar *path; | |
281 gchar *name; | |
282 GList *list; | |
283 SortType sort_method; | |
284 | |
285 ThumbLoader *thumb_loader; | |
286 CollectInfo *thumb_info; | |
287 | |
288 void (*info_updated_func)(CollectionData *, CollectInfo *, gpointer); | |
289 gpointer info_updated_data; | |
290 | |
291 gint ref; | |
292 | |
293 /* geometry */ | |
294 gint window_read; | |
295 gint window_x; | |
296 gint window_y; | |
297 gint window_w; | |
298 gint window_h; | |
299 | |
300 /* contents changed since save flag */ | |
301 gint changed; | |
303
6ff0bc50ac46
Prevent multiple insertion of the same file in a collection.
zas_
parents:
290
diff
changeset
|
302 |
6ff0bc50ac46
Prevent multiple insertion of the same file in a collection.
zas_
parents:
290
diff
changeset
|
303 GHashTable *existence; |
9 | 304 }; |
305 | |
306 struct _CollectTable | |
307 { | |
308 GtkWidget *scrolled; | |
309 GtkWidget *listview; | |
310 gint columns; | |
311 gint rows; | |
312 | |
313 CollectionData *cd; | |
314 | |
315 GList *selection; | |
316 CollectInfo *prev_selection; | |
317 | |
318 CollectInfo *click_info; | |
319 | |
320 GtkWidget *tip_window; | |
321 gint tip_delay_id; | |
322 CollectInfo *tip_info; | |
323 | |
324 GdkWindow *marker_window; | |
325 CollectInfo *marker_info; | |
326 | |
327 GtkWidget *status_label; | |
328 GtkWidget *extra_label; | |
329 | |
330 gint focus_row; | |
331 gint focus_column; | |
332 CollectInfo *focus_info; | |
333 | |
334 GtkWidget *popup; | |
335 CollectInfo *drop_info; | |
336 GList *drop_list; | |
337 | |
338 gint sync_idle_id; | |
339 gint drop_idle_id; | |
340 | |
341 gint show_text; | |
342 }; | |
343 | |
344 struct _CollectWindow | |
345 { | |
346 GtkWidget *window; | |
347 CollectTable *table; | |
348 GtkWidget *status_box; | |
349 GList *list; | |
350 | |
351 GtkWidget *close_dialog; | |
352 | |
353 CollectionData *cd; | |
354 }; | |
355 | |
12
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
356 typedef gint (* ImageTileRequestFunc)(ImageWindow *imd, gint x, gint y, |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
357 gint width, gint height, GdkPixbuf *pixbuf, gpointer); |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
358 typedef void (* ImageTileDisposeFunc)(ImageWindow *imd, gint x, gint y, |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
359 gint width, gint height, GdkPixbuf *pixbuf, gpointer); |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
360 |
9 | 361 struct _ImageWindow |
362 { | |
363 GtkWidget *widget; /* use this to add it and show it */ | |
23
17acca639a86
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
14
diff
changeset
|
364 GtkWidget *pr; |
17acca639a86
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
14
diff
changeset
|
365 GtkWidget *frame; |
9 | 366 |
138 | 367 FileData *image_fd; |
9 | 368 |
369 gint unknown; /* failed to load image */ | |
370 | |
846 | 371 ImageLoader *il; /* FIXME - image loader should probably go to FileData, but it must first support |
372 sending callbacks to multiple ImageWindows in parallel */ | |
9 | 373 |
374 gint has_frame; | |
375 | |
376 /* top level (not necessarily parent) window */ | |
23
17acca639a86
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
14
diff
changeset
|
377 gint top_window_sync; /* resize top_window when image dimensions change */ |
9 | 378 GtkWidget *top_window; /* window that gets title, and window to resize when 'fitting' */ |
379 gchar *title; /* window title to display left of file name */ | |
380 gchar *title_right; /* window title to display right of file name */ | |
381 gint title_show_zoom; /* option to include zoom in window title */ | |
382 | |
383 gint completed; | |
113
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
384 ImageState state; /* mask of IMAGE_STATE_* flags about current image */ |
9 | 385 |
117
0c2e1f0a001b
Wed Nov 29 14:28:30 2006 John Ellis <johne@verizon.net>
gqview
parents:
115
diff
changeset
|
386 void (*func_update)(ImageWindow *imd, gpointer data); |
0c2e1f0a001b
Wed Nov 29 14:28:30 2006 John Ellis <johne@verizon.net>
gqview
parents:
115
diff
changeset
|
387 void (*func_complete)(ImageWindow *imd, gint preload, gpointer data); |
0c2e1f0a001b
Wed Nov 29 14:28:30 2006 John Ellis <johne@verizon.net>
gqview
parents:
115
diff
changeset
|
388 void (*func_state)(ImageWindow *imd, ImageState state, gpointer data); |
12
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
389 ImageTileRequestFunc func_tile_request; |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
390 ImageTileDisposeFunc func_tile_dispose; |
9 | 391 |
392 gpointer data_update; | |
393 gpointer data_complete; | |
117
0c2e1f0a001b
Wed Nov 29 14:28:30 2006 John Ellis <johne@verizon.net>
gqview
parents:
115
diff
changeset
|
394 gpointer data_state; |
12
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
395 gpointer data_tile; |
9 | 396 |
397 /* button, scroll functions */ | |
868
db6977f8b0f1
Reduce number of parameters (mostly unused), just pass the event pointer.
zas_
parents:
849
diff
changeset
|
398 void (*func_button)(ImageWindow *, GdkEventButton *event, gpointer); |
db6977f8b0f1
Reduce number of parameters (mostly unused), just pass the event pointer.
zas_
parents:
849
diff
changeset
|
399 void (*func_drag)(ImageWindow *, GdkEventButton *event, gdouble dx, gdouble dy, gpointer); |
db6977f8b0f1
Reduce number of parameters (mostly unused), just pass the event pointer.
zas_
parents:
849
diff
changeset
|
400 void (*func_scroll)(ImageWindow *, GdkEventScroll *event, gpointer); |
9 | 401 |
402 gpointer data_button; | |
128
98e2632b5d3d
improved connected scroll and active image switching
nadvornik
parents:
127
diff
changeset
|
403 gpointer data_drag; |
9 | 404 gpointer data_scroll; |
405 | |
12
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
406 /* scroll notification (for scroll bar implementation) */ |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
407 void (*func_scroll_notify)(ImageWindow *, gint x, gint y, gint width, gint height, gpointer); |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
408 |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
409 gpointer data_scroll_notify; |
147f4c4b9025
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents:
9
diff
changeset
|
410 |
9 | 411 /* collection info */ |
412 CollectionData *collection; | |
413 CollectInfo *collection_info; | |
414 | |
113
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
415 /* color profiles */ |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
416 gint color_profile_enable; |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
417 gint color_profile_input; |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
418 gint color_profile_screen; |
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
419 gint color_profile_use_image; |
426
9fe0ca1b5263
show the AdobeRGB profile in the menu, indicate input profile from image
nadvornik
parents:
415
diff
changeset
|
420 gint color_profile_from_image; |
115
53b2bfdcff69
Tue Nov 28 11:54:30 2006 John Ellis <johne@verizon.net>
gqview
parents:
113
diff
changeset
|
421 gpointer cm; |
113
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
422 |
9 | 423 AlterType delay_alter_type; |
424 | |
846 | 425 FileData *read_ahead_fd; |
9 | 426 ImageLoader *read_ahead_il; |
427 | |
113
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
428 gint prev_color_row; |
9 | 429 |
888 | 430 gint auto_refresh; |
9 | 431 |
432 gint delay_flip; | |
398
c4080362d619
image post-processing (rotation and color management) moved to
nadvornik
parents:
384
diff
changeset
|
433 gint orientation; |
c4080362d619
image post-processing (rotation and color management) moved to
nadvornik
parents:
384
diff
changeset
|
434 gint desaturate; |
415 | 435 |
436 gint overlay_show_zoom; /* set to true if overlay is showing zoom ratio */ | |
9 | 437 }; |
438 | |
149 | 439 #define FILEDATA_MARKS_SIZE 6 |
132 | 440 |
138 | 441 struct _FileDataChangeInfo { |
143
0d1bf3ac6cd8
improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents:
141
diff
changeset
|
442 FileDataChangeType type; |
138 | 443 gchar *source; |
444 gchar *dest; | |
914
9427c91951e8
basic infrastructure for early error and dangerous operations checking
nadvornik
parents:
888
diff
changeset
|
445 gint error; |
138 | 446 }; |
137
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
447 |
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
448 struct _FileData { |
138 | 449 gint magick; |
137
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
450 gint type; |
138 | 451 gchar *original_path; /* key to file_data_pool hash table */ |
137
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
452 gchar *path; |
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
453 const gchar *name; |
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
454 const gchar *extension; |
785 | 455 gchar *collate_key_name; |
456 gchar *collate_key_name_nocase; | |
137
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
457 gint64 size; |
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
458 time_t date; |
808
c3fc736fb927
Use unsigned type for marks since it is used as a bitfield.
zas_
parents:
800
diff
changeset
|
459 guint marks; |
137
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
460 GList *sidecar_files; |
141 | 461 FileData *parent; /* parent file if this is a sidecar file, NULL otherwise */ |
138 | 462 FileDataChangeInfo *change; /* for rename, move ... */ |
845 | 463 GdkPixbuf *thumb_pixbuf; |
846 | 464 |
849
db68d673448f
added possibility to disable grouping of selected files
nadvornik
parents:
846
diff
changeset
|
465 GdkPixbuf *pixbuf; /* full-size image, only complete images, NULL during loading |
db68d673448f
added possibility to disable grouping of selected files
nadvornik
parents:
846
diff
changeset
|
466 all FileData with non-NULL pixbuf are referenced by image_cache */ |
846 | 467 |
138 | 468 gint ref; |
763
81f9e8dbb4bf
improved infrastructure for tracing changes, optimized vflist_populate_view
nadvornik
parents:
753
diff
changeset
|
469 gint version; /* increased when any field in this structure is changed */ |
849
db68d673448f
added possibility to disable grouping of selected files
nadvornik
parents:
846
diff
changeset
|
470 gint disable_grouping; |
db68d673448f
added possibility to disable grouping of selected files
nadvornik
parents:
846
diff
changeset
|
471 |
434
1b0aee2b162e
Keep image orientation set by the user during the session.
zas_
parents:
433
diff
changeset
|
472 gint user_orientation; |
439 | 473 gint exif_orientation; |
844 | 474 |
475 ExifData *exif; | |
9 | 476 }; |
477 | |
478 struct _LayoutWindow | |
479 { | |
783 | 480 FileData *dir_fd; |
9 | 481 |
482 /* base */ | |
483 | |
484 GtkWidget *window; | |
485 | |
486 GtkWidget *main_box; | |
487 | |
488 GtkWidget *group_box; | |
489 GtkWidget *h_pane; | |
490 GtkWidget *v_pane; | |
491 | |
492 /* menus, path selector */ | |
493 | |
494 GtkActionGroup *action_group; | |
495 GtkUIManager *ui_manager; | |
496 | |
497 GtkWidget *path_entry; | |
498 | |
499 /* image */ | |
500 | |
501 LayoutLocation image_location; | |
502 | |
503 ImageWindow *image; | |
504 | |
127 | 505 ImageWindow *split_images[MAX_SPLIT_IMAGES]; |
442 | 506 ImageSplitMode split_mode; |
127 | 507 gint active_split_image; |
508 | |
442 | 509 GtkWidget *split_image_widget; |
837
f8c22438376c
use GtkSizeGroup to control initial size of split images
nadvornik
parents:
812
diff
changeset
|
510 GtkSizeGroup *split_image_sizegroup; |
442 | 511 |
127 | 512 gint connect_zoom, connect_scroll; |
442 | 513 |
9 | 514 /* tools window (float) */ |
515 | |
516 GtkWidget *tools; | |
517 GtkWidget *tools_pane; | |
518 | |
519 gint tools_float; | |
520 gint tools_hidden; | |
521 | |
522 /* toolbar */ | |
523 | |
524 GtkWidget *toolbar; | |
525 gint toolbar_hidden; | |
526 | |
527 GtkWidget *thumb_button; | |
528 gint thumbs_enabled; | |
137
be3328a58875
started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents:
134
diff
changeset
|
529 gint marks_enabled; |
442 | 530 |
9 | 531 /* dir view */ |
532 | |
533 LayoutLocation dir_location; | |
534 | |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
535 ViewDir *vd; |
9 | 536 GtkWidget *dir_view; |
537 | |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
538 DirViewType dir_view_type; |
9 | 539 |
540 /* file view */ | |
541 | |
542 LayoutLocation file_location; | |
543 | |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
544 ViewFile *vf; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
545 FileViewType file_view_type; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
546 |
9 | 547 GtkWidget *file_view; |
548 | |
549 SortType sort_method; | |
550 gint sort_ascend; | |
551 | |
552 /* status bar */ | |
553 | |
554 GtkWidget *info_box; | |
555 GtkWidget *info_progress_bar; | |
556 GtkWidget *info_sort; | |
113
55166d93498d
Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents:
82
diff
changeset
|
557 GtkWidget *info_color; |
9 | 558 GtkWidget *info_status; |
559 GtkWidget *info_details; | |
560 GtkWidget *info_zoom; | |
561 | |
562 /* slide show */ | |
563 | |
564 SlideShowData *slideshow; | |
565 | |
566 /* full screen */ | |
567 | |
568 FullScreenData *full_screen; | |
569 | |
570 /* dividers */ | |
571 | |
572 gint div_h; | |
573 gint div_v; | |
574 gint div_float; | |
575 | |
576 /* misc */ | |
577 | |
578 GtkWidget *utility_box; | |
579 GtkWidget *bar_sort; | |
580 GtkWidget *bar_exif; | |
581 GtkWidget *bar_info; | |
582 | |
583 gint bar_sort_enabled; | |
584 gint bar_exif_enabled; | |
585 gint bar_info_enabled; | |
586 | |
489
3809ffa3567b
Save state and width of exif, info and sort panels to rc file.
zas_
parents:
480
diff
changeset
|
587 gint bar_exif_width; |
9 | 588 gint bar_exif_advanced; |
489
3809ffa3567b
Save state and width of exif, info and sort panels to rc file.
zas_
parents:
480
diff
changeset
|
589 gint bar_info_width; |
9 | 590 }; |
591 | |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
592 struct _ViewDir |
9 | 593 { |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
594 DirViewType type; |
384
392dd6541d51
Merge parts of view_dir_list/tree constructors/destructors to
zas_
parents:
380
diff
changeset
|
595 gpointer info; |
392dd6541d51
Merge parts of view_dir_list/tree constructors/destructors to
zas_
parents:
380
diff
changeset
|
596 |
9 | 597 GtkWidget *widget; |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
598 GtkWidget *view; |
9 | 599 |
783 | 600 FileData *dir_fd; |
9 | 601 |
602 FileData *click_fd; | |
603 | |
604 FileData *drop_fd; | |
605 GList *drop_list; | |
606 gint drop_scroll_id; | |
607 | |
608 /* func list */ | |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
609 void (*select_func)(ViewDir *vd, const gchar *path, gpointer data); |
9 | 610 gpointer select_data; |
611 | |
407 | 612 void (*dnd_drop_update_func)(ViewDir *vd); |
613 void (*dnd_drop_leave_func)(ViewDir *vd); | |
442 | 614 |
9 | 615 LayoutWindow *layout; |
616 | |
617 GtkWidget *popup; | |
618 | |
619 PixmapFolders *pf; | |
380
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
620 }; |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
621 |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
622 struct _ViewDirInfoList |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
623 { |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
624 GList *list; |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
625 }; |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
626 |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
627 struct _ViewDirInfoTree |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
628 { |
5afe77bb563a
Introduce a new struct ViewDir to handle directory views common
zas_
parents:
373
diff
changeset
|
629 gint drop_expand_id; |
9 | 630 gint busy_ref; |
631 }; | |
632 | |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
633 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
634 struct _ViewFile |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
635 { |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
636 FileViewType type; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
637 gpointer info; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
638 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
639 GtkWidget *widget; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
640 GtkWidget *listview; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
641 |
783 | 642 FileData *dir_fd; |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
643 GList *list; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
644 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
645 SortType sort_method; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
646 gint sort_ascend; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
647 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
648 /* func list */ |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
649 void (*func_thumb_status)(ViewFile *vf, gdouble val, const gchar *text, gpointer data); |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
650 gpointer data_thumb_status; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
651 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
652 void (*func_status)(ViewFile *vf, gpointer data); |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
653 gpointer data_status; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
654 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
655 LayoutWindow *layout; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
656 |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
657 GtkWidget *popup; |
563
1ad894219964
Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList
zas_
parents:
562
diff
changeset
|
658 |
1ad894219964
Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList
zas_
parents:
562
diff
changeset
|
659 /* thumbs updates*/ |
1ad894219964
Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList
zas_
parents:
562
diff
changeset
|
660 gint thumbs_running; |
1ad894219964
Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList
zas_
parents:
562
diff
changeset
|
661 ThumbLoader *thumbs_loader; |
1ad894219964
Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList
zas_
parents:
562
diff
changeset
|
662 FileData *thumbs_filedata; |
564
514a4525d651
Move marks-related fields from _ViewFileInfoList to _ViewFile, since
zas_
parents:
563
diff
changeset
|
663 |
514a4525d651
Move marks-related fields from _ViewFileInfoList to _ViewFile, since
zas_
parents:
563
diff
changeset
|
664 /* marks */ |
514a4525d651
Move marks-related fields from _ViewFileInfoList to _ViewFile, since
zas_
parents:
563
diff
changeset
|
665 gint marks_enabled; |
514a4525d651
Move marks-related fields from _ViewFileInfoList to _ViewFile, since
zas_
parents:
563
diff
changeset
|
666 gint active_mark; |
654
6dcfac4b356f
Get rid of vflist_pop_menu() col_idx parameter, use new Viewfile field
zas_
parents:
616
diff
changeset
|
667 gint clicked_mark; |
772
f53c2bb5b1b1
replaced vflist_maint functions by vflist_refresh - it allows to follow
nadvornik
parents:
763
diff
changeset
|
668 |
f53c2bb5b1b1
replaced vflist_maint functions by vflist_refresh - it allows to follow
nadvornik
parents:
763
diff
changeset
|
669 /* refresh */ |
812 | 670 gint refresh_idle_id; |
554
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
671 }; |
2da72a136070
Prepare merging of some parts of view_file_list and view_file_icon and
zas_
parents:
508
diff
changeset
|
672 |
557
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
673 struct _ViewFileInfoList |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
674 { |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
675 FileData *click_fd; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
676 FileData *select_fd; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
677 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
678 gint thumbs_enabled; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
679 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
680 gint select_idle_id; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
681 }; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
682 |
138 | 683 struct _IconData; |
684 | |
557
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
685 struct _ViewFileInfoIcon |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
686 { |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
687 /* table stuff */ |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
688 gint columns; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
689 gint rows; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
690 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
691 GList *selection; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
692 struct _IconData *prev_selection; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
693 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
694 GtkWidget *tip_window; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
695 gint tip_delay_id; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
696 struct _IconData *tip_id; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
697 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
698 struct _IconData *click_id; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
699 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
700 struct _IconData *focus_id; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
701 gint focus_row; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
702 gint focus_column; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
703 |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
704 gint show_text; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
705 }; |
d8d61dc4ff52
Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet).
zas_
parents:
556
diff
changeset
|
706 |
9 | 707 struct _SlideShowData |
708 { | |
709 ImageWindow *imd; | |
710 | |
138 | 711 GList *filelist; |
9 | 712 CollectionData *cd; |
783 | 713 FileData *dir_fd; |
9 | 714 LayoutWindow *layout; |
715 | |
716 GList *list; | |
717 GList *list_done; | |
718 | |
138 | 719 FileData *slide_fd; |
9 | 720 |
736 | 721 guint slide_count; |
9 | 722 gint timeout_id; |
723 | |
724 gint from_selection; | |
725 | |
726 void (*stop_func)(SlideShowData *, gpointer); | |
727 gpointer stop_data; | |
728 | |
729 gint paused; | |
730 }; | |
731 | |
732 struct _FullScreenData | |
733 { | |
734 GtkWidget *window; | |
735 ImageWindow *imd; | |
736 | |
737 GtkWidget *normal_window; | |
738 ImageWindow *normal_imd; | |
739 | |
740 gint hide_mouse_id; | |
741 gint busy_mouse_id; | |
742 gint cursor_state; | |
743 | |
744 gint saver_block_id; | |
745 | |
746 void (*stop_func)(FullScreenData *, gpointer); | |
747 gpointer stop_data; | |
748 }; | |
749 | |
750 struct _PixmapFolders | |
751 { | |
752 GdkPixbuf *close; | |
753 GdkPixbuf *open; | |
754 GdkPixbuf *deny; | |
755 GdkPixbuf *parent; | |
756 }; | |
757 | |
276 | 758 struct _SecureSaveInfo { |
759 FILE *fp; /**< file stream pointer */ | |
760 gchar *file_name; /**< final file name */ | |
761 gchar *tmp_file_name; /**< temporary file name */ | |
762 gint err; /**< set to non-zero value in case of error */ | |
313
a955b7fd626b
Secure save now unlinks temporary file on error by default.
zas_
parents:
311
diff
changeset
|
763 gint secure_save; /**< use secure save for this file, internal use only */ |
a955b7fd626b
Secure save now unlinks temporary file on error by default.
zas_
parents:
311
diff
changeset
|
764 gint preserve_perms; /**< whether to preserve perms, TRUE by default */ |
a955b7fd626b
Secure save now unlinks temporary file on error by default.
zas_
parents:
311
diff
changeset
|
765 gint preserve_mtime; /**< whether to preserve mtime, FALSE by default */ |
a955b7fd626b
Secure save now unlinks temporary file on error by default.
zas_
parents:
311
diff
changeset
|
766 gint unlink_on_error; /**< whether to remove temporary file on save failure, TRUE by default */ |
276 | 767 }; |
768 | |
9 | 769 |
770 #endif |