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