annotate src/typedefs.h @ 276:4f526d436873

Implement secure rc file saving. First data is written to a temporary file, then if nothing was wrong, this file is renamed to the final name. This way the risk of corrupted rc file is greatly reduced. The code is borrowed from ELinks (http://elinks.cz).
author zas_
date Tue, 08 Apr 2008 21:55:58 +0000
parents e0e2c2b72c5a
children e213fb025621
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1 /*
196
f6e307c7bad6 rename GQview -> Geeqie over the code
nadvornik
parents: 161
diff changeset
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
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
4 *
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
5 * Author: John Ellis
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
6 *
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
7 * This software is released under the GNU General Public License (GNU GPL).
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
8 * Please read the included file COPYING for more information.
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
9 * This software comes with no warranty of any kind, use at your own risk!
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
10 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
11
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
12
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
13 #ifndef TYPEDEFS_H
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
14 #define TYPEDEFS_H
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
15
134
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
16 typedef enum {
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
17 CMD_COPY = GQVIEW_EDITOR_GENERIC_SLOTS,
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
18 CMD_MOVE,
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
19 CMD_RENAME,
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
20 CMD_DELETE,
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
21 CMD_FOLDER,
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
22 GQVIEW_EDITOR_SLOTS
9009856628f7 started implementation of external commands; external Delete should work
nadvornik
parents: 132
diff changeset
23 } SpecialEditor;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
24
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
25 typedef enum {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
26 SORT_NONE,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
27 SORT_NAME,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
28 SORT_SIZE,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
29 SORT_TIME,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
30 SORT_PATH,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
31 SORT_NUMBER
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
32 } SortType;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
33
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
34 typedef enum {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
35 ALTER_NONE, /* do nothing */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
36 ALTER_ROTATE_90,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
37 ALTER_ROTATE_90_CC, /* counterclockwise */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
38 ALTER_ROTATE_180,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
39 ALTER_MIRROR,
82
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
40 ALTER_FLIP,
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
41 ALTER_DESATURATE
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
42 } AlterType;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
43
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
44 typedef enum {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
45 LAYOUT_HIDE = 0,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
46 LAYOUT_LEFT = 1 << 0,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
47 LAYOUT_RIGHT = 1 << 1,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
48 LAYOUT_TOP = 1 << 2,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
49 LAYOUT_BOTTOM = 1 << 3
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
50 } LayoutLocation;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
51
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
52
113
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
53 typedef enum {
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
54 IMAGE_STATE_NONE = 0,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
55 IMAGE_STATE_IMAGE = 1 << 0,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
56 IMAGE_STATE_LOADING = 1 << 1,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
57 IMAGE_STATE_ERROR = 1 << 2,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
58 IMAGE_STATE_COLOR_ADJ = 1 << 3,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
59 IMAGE_STATE_ROTATE_AUTO = 1 << 4,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
60 IMAGE_STATE_ROTATE_USER = 1 << 5,
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
61 IMAGE_STATE_DELAY_FLIP = 1 << 6
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
62 } ImageState;
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
63
127
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
64 typedef enum {
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
65 SPLIT_NONE = 0,
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
66 SPLIT_VERT,
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
67 SPLIT_HOR,
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
68 SPLIT_QUAD,
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
69 } ImageSplitMode;
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
70
143
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
71 typedef enum {
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
72 FILEDATA_CHANGE_DELETE,
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
73 FILEDATA_CHANGE_MOVE,
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
74 FILEDATA_CHANGE_RENAME,
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
75 FILEDATA_CHANGE_COPY
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
76 } FileDataChangeType;
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
77
161
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
78 typedef enum {
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
79 MTS_MODE_MINUS,
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
80 MTS_MODE_SET,
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
81 MTS_MODE_OR,
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
82 MTS_MODE_AND
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
83 } MarkToSelectionMode;
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
84
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
85 typedef enum {
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
86 STM_MODE_RESET,
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
87 STM_MODE_SET,
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
88 STM_MODE_TOGGLE
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
89 } SelectionToMarkMode;
08ab6367b4e6 complete set of boolean operation with marks -
nadvornik
parents: 158
diff changeset
90
212
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
91 typedef enum {
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
92 FORMAT_CLASS_UNKNOWN,
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
93 FORMAT_CLASS_IMAGE,
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
94 FORMAT_CLASS_RAWIMAGE,
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
95 FORMAT_CLASS_META,
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
96 FILE_FORMAT_CLASSES
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
97 } FileFormatClass;
c7021159079d differentiate among normal image, raw image and metadata
nadvornik
parents: 196
diff changeset
98
276
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
99 typedef enum {
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
100 SS_ERR_NONE = 0,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
101 SS_ERR_DISABLED, /**< secsave is disabled. */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
102 SS_ERR_OUT_OF_MEM, /**< memory allocation failure */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
103
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
104 /* see err field in SecureSaveInfo */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
105 SS_ERR_OPEN_READ,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
106 SS_ERR_OPEN_WRITE,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
107 SS_ERR_STAT,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
108 SS_ERR_ACCESS,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
109 SS_ERR_MKSTEMP,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
110 SS_ERR_RENAME,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
111 SS_ERR_OTHER,
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
112 } SecureSaveErrno;
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
113
143
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
114
127
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
115 #define MAX_SPLIT_IMAGES 4
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
116
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
117 typedef struct _ImageLoader ImageLoader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
118 typedef struct _ThumbLoader ThumbLoader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
119
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
120 typedef struct _CollectInfo CollectInfo;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
121 typedef struct _CollectionData CollectionData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
122 typedef struct _CollectTable CollectTable;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
123 typedef struct _CollectWindow CollectWindow;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
124
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
125 typedef struct _ImageWindow ImageWindow;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
126
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
127 typedef struct _FileData FileData;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
128 typedef struct _FileDataChangeInfo FileDataChangeInfo;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
129
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
130 typedef struct _LayoutWindow LayoutWindow;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
131 typedef struct _ViewDirList ViewDirList;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
132 typedef struct _ViewDirTree ViewDirTree;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
133 typedef struct _ViewFileList ViewFileList;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
134 typedef struct _ViewFileIcon ViewFileIcon;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
135
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
136 typedef struct _SlideShowData SlideShowData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
137 typedef struct _FullScreenData FullScreenData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
138
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
139 typedef struct _PixmapFolders PixmapFolders;
273
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
140 typedef struct _Histogram Histogram;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
141
276
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
142 typedef struct _SecureSaveInfo SecureSaveInfo;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
143
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
144
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
145 struct _ImageLoader
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
146 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
147 GdkPixbuf *pixbuf;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
148 FileData *fd;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
149 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
150
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
151 gint bytes_read;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
152 gint bytes_total;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
153
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
154 guint buffer_size;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
155
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
156 gint requested_width;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
157 gint requested_height;
14
25335c62cd9b ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 12
diff changeset
158 gint shrunk;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
159
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
160 gint done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
161 gint idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
162 gint idle_priority;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
163
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
164 GdkPixbufLoader *loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
165 gint load_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
166
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
167 void (*func_area_ready)(ImageLoader *, guint x, guint y, guint w, guint h, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
168 void (*func_error)(ImageLoader *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
169 void (*func_done)(ImageLoader *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
170 void (*func_percent)(ImageLoader *, gdouble, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
171
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
172 gpointer data_area_ready;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
173 gpointer data_error;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
174 gpointer data_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
175 gpointer data_percent;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
176
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
177 gint idle_done_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
178 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
179
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
180 typedef void (* ThumbLoaderFunc)(ThumbLoader *tl, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
181
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
182 struct _ThumbLoader
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
183 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
184 gint standard_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
185
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
186 GdkPixbuf *pixbuf; /* contains final (scaled) image when done */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
187 ImageLoader *il;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
188 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
189
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
190 gint cache_enable;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
191 gint cache_hit;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
192 gdouble percent_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
193
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
194 gint max_w;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
195 gint max_h;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
196
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
197 ThumbLoaderFunc func_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
198 ThumbLoaderFunc func_error;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
199 ThumbLoaderFunc func_progress;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
200
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
201 gpointer data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
202
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
203 gint idle_done_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
204 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
205
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
206 struct _CollectInfo
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
207 {
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
208 FileData *fd;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
209 GdkPixbuf *pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
210 gint flag_mask;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
211 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
212
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
213 struct _CollectionData
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
214 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
215 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
216 gchar *name;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
217 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
218 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
219
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
220 ThumbLoader *thumb_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
221 CollectInfo *thumb_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
222
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
223 void (*info_updated_func)(CollectionData *, CollectInfo *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
224 gpointer info_updated_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
225
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
226 gint ref;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
227
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
228 /* geometry */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
229 gint window_read;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
230 gint window_x;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
231 gint window_y;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
232 gint window_w;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
233 gint window_h;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
234
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
235 /* contents changed since save flag */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
236 gint changed;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
237 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
238
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
239 struct _CollectTable
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
240 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
241 GtkWidget *scrolled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
242 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
243 gint columns;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
244 gint rows;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
245
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
246 CollectionData *cd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
247
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
248 GList *selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
249 CollectInfo *prev_selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
250
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
251 CollectInfo *click_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
252
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
253 GtkWidget *tip_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
254 gint tip_delay_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
255 CollectInfo *tip_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
256
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
257 GdkWindow *marker_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
258 CollectInfo *marker_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
259
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
260 GtkWidget *status_label;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
261 GtkWidget *extra_label;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
262
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
263 gint focus_row;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
264 gint focus_column;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
265 CollectInfo *focus_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
266
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
267 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
268 CollectInfo *drop_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
269 GList *drop_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
270
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
271 gint sync_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
272 gint drop_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
273
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
274 gint show_text;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
275 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
276
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
277 struct _CollectWindow
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
278 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
279 GtkWidget *window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
280 CollectTable *table;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
281 GtkWidget *status_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
282 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
283
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
284 GtkWidget *close_dialog;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
285
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
286 CollectionData *cd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
287 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
288
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
289 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
290 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
291 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
292 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
293
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
294 struct _ImageWindow
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
295 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
296 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
297 GtkWidget *pr;
17acca639a86 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 14
diff changeset
298 GtkWidget *frame;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
299
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
300 FileData *image_fd;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
301
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
302 gint64 size; /* file size (bytes) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
303 time_t mtime; /* file modified time stamp */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
304 gint unknown; /* failed to load image */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
305
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
306 ImageLoader *il;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
307
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
308 gint has_frame;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
309
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
310 /* 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
311 gint top_window_sync; /* resize top_window when image dimensions change */
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
312 GtkWidget *top_window; /* window that gets title, and window to resize when 'fitting' */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
313 gchar *title; /* window title to display left of file name */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
314 gchar *title_right; /* window title to display right of file name */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
315 gint title_show_zoom; /* option to include zoom in window title */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
316
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
317 gint completed;
113
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
318 ImageState state; /* mask of IMAGE_STATE_* flags about current image */
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
319
117
0c2e1f0a001b Wed Nov 29 14:28:30 2006 John Ellis <johne@verizon.net>
gqview
parents: 115
diff changeset
320 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
321 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
322 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
323 ImageTileRequestFunc func_tile_request;
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
324 ImageTileDisposeFunc func_tile_dispose;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
325
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
326 gpointer data_update;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
327 gpointer data_complete;
117
0c2e1f0a001b Wed Nov 29 14:28:30 2006 John Ellis <johne@verizon.net>
gqview
parents: 115
diff changeset
328 gpointer data_state;
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
329 gpointer data_tile;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
330
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
331 /* button, scroll functions */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
332 void (*func_button)(ImageWindow *, gint button,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
333 guint32 time, gdouble x, gdouble y, guint state, gpointer);
128
98e2632b5d3d improved connected scroll and active image switching
nadvornik
parents: 127
diff changeset
334 void (*func_drag)(ImageWindow *, gint button,
98e2632b5d3d improved connected scroll and active image switching
nadvornik
parents: 127
diff changeset
335 guint32 time, gdouble x, gdouble y, guint state, gdouble dx, gdouble dy,gpointer);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
336 void (*func_scroll)(ImageWindow *, GdkScrollDirection direction,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
337 guint32 time, gdouble x, gdouble y, guint state, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
338
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
339 gpointer data_button;
128
98e2632b5d3d improved connected scroll and active image switching
nadvornik
parents: 127
diff changeset
340 gpointer data_drag;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
341 gpointer data_scroll;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
342
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
343 /* 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
344 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
345
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
346 gpointer data_scroll_notify;
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
347
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
348 /* collection info */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
349 CollectionData *collection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
350 CollectInfo *collection_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
351
113
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
352 /* color profiles */
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
353 gint color_profile_enable;
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
354 gint color_profile_input;
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
355 gint color_profile_screen;
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
356 gint color_profile_use_image;
115
53b2bfdcff69 Tue Nov 28 11:54:30 2006 John Ellis <johne@verizon.net>
gqview
parents: 113
diff changeset
357 gpointer cm;
113
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
358
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
359 AlterType delay_alter_type;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
360
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
361 ImageLoader *read_ahead_il;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
362 GdkPixbuf *read_ahead_pixbuf;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
363 FileData *read_ahead_fd;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
364
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
365 GdkPixbuf *prev_pixbuf;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
366 FileData *prev_fd;
113
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
367 gint prev_color_row;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
368
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
369 gint auto_refresh_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
370 gint auto_refresh_interval;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
371
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
372 gint delay_flip;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
373 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
374
149
f0c79a514c06 marks: fixes and cleanup
nadvornik
parents: 143
diff changeset
375 #define FILEDATA_MARKS_SIZE 6
132
661cd91e5a7e First implementation of marks for all photos.
bruclik
parents: 128
diff changeset
376
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
377 struct _FileDataChangeInfo {
143
0d1bf3ac6cd8 improved FileDataChangeInfo structure, check for another file operation in progress
nadvornik
parents: 141
diff changeset
378 FileDataChangeType type;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
379 gchar *source;
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
380 gchar *dest;
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
381 };
137
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
382
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
383 struct _FileData {
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
384 gint magick;
137
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
385 gint type;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
386 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
387 gchar *path;
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
388 const gchar *name;
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
389 const gchar *extension;
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
390 gint64 size;
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
391 time_t date;
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
392 gboolean marks[FILEDATA_MARKS_SIZE];
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
393 GList *sidecar_files;
141
bdc16027fa6f use FileData even for sidecar file list
nadvornik
parents: 138
diff changeset
394 FileData *parent; /* parent file if this is a sidecar file, NULL otherwise */
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
395 FileDataChangeInfo *change; /* for rename, move ... */
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
396 GdkPixbuf *pixbuf;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
397 gint ref;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
398 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
399
273
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
400 struct _Histogram {
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
401 gulong histmap[256*4];
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
402 gint histogram_chan;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
403 gint histogram_logmode;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
404 };
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
405
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
406
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
407 struct _LayoutWindow
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
408 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
409 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
410
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
411 /* base */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
412
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
413 GtkWidget *window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
414
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
415 GtkWidget *main_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
416
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
417 GtkWidget *group_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
418 GtkWidget *h_pane;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
419 GtkWidget *v_pane;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
420
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
421 /* menus, path selector */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
422
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
423 GtkActionGroup *action_group;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
424 GtkUIManager *ui_manager;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
425
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
426 GtkWidget *path_entry;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
427
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
428 /* image */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
429
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
430 LayoutLocation image_location;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
431
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
432 ImageWindow *image;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
433
127
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
434 ImageWindow *split_images[MAX_SPLIT_IMAGES];
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
435 ImageSplitMode split_mode;
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
436 gint active_split_image;
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
437
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
438 GtkWidget *split_image_widget;
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
439
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
440 gint connect_zoom, connect_scroll;
271afad04d07 implemented split windows
nadvornik
parents: 122
diff changeset
441
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
442 /* tools window (float) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
443
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
444 GtkWidget *tools;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
445 GtkWidget *tools_pane;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
446
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
447 gint tools_float;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
448 gint tools_hidden;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
449
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
450 /* toolbar */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
451
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
452 GtkWidget *toolbar;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
453 gint toolbar_hidden;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
454
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
455 GtkWidget *thumb_button;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
456 gint thumbs_enabled;
137
be3328a58875 started support for sidecar files like xmp, raw+jpeg etc.
nadvornik
parents: 134
diff changeset
457 gint marks_enabled;
132
661cd91e5a7e First implementation of marks for all photos.
bruclik
parents: 128
diff changeset
458
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
459 /* dir view */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
460
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
461 LayoutLocation dir_location;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
462
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
463 ViewDirList *vdl;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
464 ViewDirTree *vdt;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
465 GtkWidget *dir_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
466
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
467 gint tree_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
468
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
469 /* file view */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
470
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
471 LayoutLocation file_location;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
472
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
473 ViewFileList *vfl;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
474 ViewFileIcon *vfi;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
475 GtkWidget *file_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
476
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
477 gint icon_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
478 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
479 gint sort_ascend;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
480
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
481 /* status bar */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
482
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
483 GtkWidget *info_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
484 GtkWidget *info_progress_bar;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
485 GtkWidget *info_sort;
113
55166d93498d Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
486 GtkWidget *info_color;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
487 GtkWidget *info_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
488 GtkWidget *info_details;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
489 GtkWidget *info_zoom;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
490
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
491 /* slide show */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
492
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
493 SlideShowData *slideshow;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
494
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
495 /* full screen */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
496
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
497 FullScreenData *full_screen;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
498
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
499 /* dividers */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
500
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
501 gint div_h;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
502 gint div_v;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
503 gint div_float;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
504
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
505 /* directory update check */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
506
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
507 gint last_time_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
508 time_t last_time;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
509
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
510 /* misc */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
511
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
512 GtkWidget *utility_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
513 GtkWidget *bar_sort;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
514 GtkWidget *bar_exif;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
515 GtkWidget *bar_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
516
273
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
517 gint histogram_enabled;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
518 Histogram *histogram;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 212
diff changeset
519
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
520 gint bar_sort_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
521 gint bar_exif_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
522 gint bar_info_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
523
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
524 gint bar_exif_size;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
525 gint bar_exif_advanced;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
526 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
527
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
528 struct _ViewDirList
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
529 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
530 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
531 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
532
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
533 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
534 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
535
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
536 FileData *click_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
537
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
538 FileData *drop_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
539 GList *drop_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
540
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
541 gint drop_scroll_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
542
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
543 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
544 void (*select_func)(ViewDirList *vdl, const gchar *path, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
545 gpointer select_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
546
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
547 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
548
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
549 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
550
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
551 PixmapFolders *pf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
552 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
553
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
554 struct _ViewDirTree
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
555 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
556 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
557 GtkWidget *treeview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
558
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
559 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
560
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
561 FileData *click_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
562
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
563 FileData *drop_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
564 GList *drop_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
565
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
566 gint drop_scroll_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
567 gint drop_expand_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
568
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
569 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
570 void (*select_func)(ViewDirTree *vdt, const gchar *path, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
571 gpointer select_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
572
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
573 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
574
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
575 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
576
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
577 PixmapFolders *pf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
578
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
579 gint busy_ref;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
580 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
581
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
582 struct _ViewFileList
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
583 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
584 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
585 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
586
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
587 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
588 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
589
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
590 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
591 gint sort_ascend;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
592
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
593 FileData *click_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
594 FileData *select_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
595
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
596 gint thumbs_enabled;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
597 gint marks_enabled;
150
976fba0add7c more operations with file marks
nadvornik
parents: 149
diff changeset
598 gint active_mark;
132
661cd91e5a7e First implementation of marks for all photos.
bruclik
parents: 128
diff changeset
599
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
600 /* thumb updates */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
601 gint thumbs_running;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
602 gint thumbs_count;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
603 ThumbLoader *thumbs_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
604 FileData *thumbs_filedata;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
605
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
606 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
607 void (*func_thumb_status)(ViewFileList *vfl, gdouble val, const gchar *text, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
608 gpointer data_thumb_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
609
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
610 void (*func_status)(ViewFileList *vfl, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
611 gpointer data_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
612
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
613 gint select_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
614 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
615
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
616 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
617 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
618
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
619 struct _IconData;
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
620
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
621 struct _ViewFileIcon
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
622 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
623 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
624 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
625
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
626 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
627 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
628
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
629 /* table stuff */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
630
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
631 gint columns;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
632 gint rows;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
633
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
634 GList *selection;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
635 struct _IconData *prev_selection;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
636
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
637 GtkWidget *tip_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
638 gint tip_delay_id;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
639 struct _IconData *tip_id;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
640
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
641 struct _IconData *click_id;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
642
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
643 struct _IconData *focus_id;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
644 gint focus_row;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
645 gint focus_column;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
646
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
647 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
648 gint sort_ascend;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
649
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
650 gint show_text;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
651
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
652 gint sync_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
653
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
654 /* thumbs */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
655
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
656 gint thumbs_running;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
657 GList *thumbs_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
658 gint thumbs_count;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
659 ThumbLoader *thumbs_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
660 FileData *thumbs_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
661
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
662 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
663 void (*func_thumb_status)(ViewFileIcon *vfi, gdouble val, const gchar *text, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
664 gpointer data_thumb_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
665
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
666 void (*func_status)(ViewFileIcon *vfi, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
667 gpointer data_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
668
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
669 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
670
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
671 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
672 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
673
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
674 struct _SlideShowData
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
675 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
676 ImageWindow *imd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
677
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
678 GList *filelist;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
679 CollectionData *cd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
680 gchar *layout_path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
681 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
682
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
683 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
684 GList *list_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
685
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 137
diff changeset
686 FileData *slide_fd;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
687
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
688 gint slide_count;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
689 gint timeout_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
690
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
691 gint from_selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
692
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
693 void (*stop_func)(SlideShowData *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
694 gpointer stop_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
695
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
696 gint paused;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
697 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
698
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
699 struct _FullScreenData
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
700 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
701 GtkWidget *window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
702 ImageWindow *imd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
703
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
704 GtkWidget *normal_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
705 ImageWindow *normal_imd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
706
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
707 gint hide_mouse_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
708 gint busy_mouse_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
709 gint cursor_state;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
710
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
711 gint saver_block_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
712
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
713 void (*stop_func)(FullScreenData *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
714 gpointer stop_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
715 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
716
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
717 struct _PixmapFolders
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
718 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
719 GdkPixbuf *close;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
720 GdkPixbuf *open;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
721 GdkPixbuf *deny;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
722 GdkPixbuf *parent;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
723 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
724
276
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
725 struct _SecureSaveInfo {
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
726 FILE *fp; /**< file stream pointer */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
727 gchar *file_name; /**< final file name */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
728 gchar *tmp_file_name; /**< temporary file name */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
729 gint err; /**< set to non-zero value in case of error */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
730 gint secure_save; /**< use secure save for this file */
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
731 };
4f526d436873 Implement secure rc file saving.
zas_
parents: 273
diff changeset
732
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
733
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
734 #endif
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
735
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
736