annotate src/typedefs.h @ 9:d907d608745f

Sync to GQview 1.5.9 release. ######## DO NOT BASE ENHANCEMENTS OR TRANSLATION UPDATES ON CODE IN THIS CVS! This CVS is never up to date with current development and is provided solely for reference purposes, please use the latest official release package when making any changes or translation updates. ########
author gqview
date Sat, 26 Feb 2005 00:13:35 +0000
parents
children 147f4c4b9025
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 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
2 * GQview
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
3 * (C) 2004 John Ellis
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
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
16
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
17 typedef enum {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
18 SORT_NONE,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
19 SORT_NAME,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
20 SORT_SIZE,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
21 SORT_TIME,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
22 SORT_PATH,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
23 SORT_NUMBER
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
24 } SortType;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
25
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
26 typedef enum {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
27 ALTER_NONE, /* do nothing */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
28 ALTER_ROTATE_90,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
29 ALTER_ROTATE_90_CC, /* counterclockwise */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
30 ALTER_ROTATE_180,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
31 ALTER_MIRROR,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
32 ALTER_FLIP
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
33 } AlterType;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
34
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
35 typedef enum {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
36 LAYOUT_HIDE = 0,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
37 LAYOUT_LEFT = 1 << 0,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
38 LAYOUT_RIGHT = 1 << 1,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
39 LAYOUT_TOP = 1 << 2,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
40 LAYOUT_BOTTOM = 1 << 3
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
41 } LayoutLocation;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
42
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 struct _ImageLoader ImageLoader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
45 typedef struct _ThumbLoader ThumbLoader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
46
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
47 typedef struct _CollectInfo CollectInfo;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
48 typedef struct _CollectionData CollectionData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
49 typedef struct _CollectTable CollectTable;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
50 typedef struct _CollectWindow CollectWindow;
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 typedef struct _ImageWindow ImageWindow;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
53
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
54 typedef struct _FileData FileData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
55
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
56 typedef struct _LayoutWindow LayoutWindow;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
57 typedef struct _ViewDirList ViewDirList;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
58 typedef struct _ViewDirTree ViewDirTree;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
59 typedef struct _ViewFileList ViewFileList;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
60 typedef struct _ViewFileIcon ViewFileIcon;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
61
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
62 typedef struct _SlideShowData SlideShowData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
63 typedef struct _FullScreenData FullScreenData;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
64
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
65 typedef struct _PixmapFolders PixmapFolders;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
66
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
67
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
68 struct _ImageLoader
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
69 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
70 GdkPixbuf *pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
71 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
72
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
73 gint bytes_read;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
74 gint bytes_total;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
75
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
76 guint buffer_size;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
77
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
78 gint requested_width;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
79 gint requested_height;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
80
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
81 gint done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
82 gint idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
83 gint idle_priority;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
84
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
85 GdkPixbufLoader *loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
86 gint load_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
87
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
88 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
89 void (*func_error)(ImageLoader *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
90 void (*func_done)(ImageLoader *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
91 void (*func_percent)(ImageLoader *, gdouble, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
92
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
93 gpointer data_area_ready;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
94 gpointer data_error;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
95 gpointer data_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
96 gpointer data_percent;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
97
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
98 gint idle_done_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
99 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
100
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
101 typedef void (* ThumbLoaderFunc)(ThumbLoader *tl, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
102
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
103 struct _ThumbLoader
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
104 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
105 gint standard_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
106
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
107 GdkPixbuf *pixbuf; /* contains final (scaled) image when done */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
108 ImageLoader *il;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
109 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
110
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
111 gint cache_enable;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
112 gint cache_hit;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
113 gdouble percent_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
114
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
115 gint max_w;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
116 gint max_h;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
117
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
118 ThumbLoaderFunc func_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
119 ThumbLoaderFunc func_error;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
120 ThumbLoaderFunc func_progress;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
121
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
122 gpointer data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
123
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
124 gint idle_done_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
125 };
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 struct _CollectInfo
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
128 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
129 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
130 gint64 size;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
131 time_t date;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
132
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
133 GdkPixbuf *pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
134 gint flag_mask;
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
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
137 struct _CollectionData
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 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
140 gchar *name;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
141 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
142 SortType sort_method;
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 ThumbLoader *thumb_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
145 CollectInfo *thumb_info;
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 void (*info_updated_func)(CollectionData *, CollectInfo *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
148 gpointer info_updated_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
149
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
150 gint ref;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
151
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
152 /* geometry */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
153 gint window_read;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
154 gint window_x;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
155 gint window_y;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
156 gint window_w;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
157 gint window_h;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
158
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
159 /* contents changed since save flag */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
160 gint changed;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
161 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
162
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
163 struct _CollectTable
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
164 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
165 GtkWidget *scrolled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
166 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
167 gint columns;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
168 gint rows;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
169
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
170 CollectionData *cd;
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 GList *selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
173 CollectInfo *prev_selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
174
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
175 CollectInfo *click_info;
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 GtkWidget *tip_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
178 gint tip_delay_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
179 CollectInfo *tip_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
180
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
181 GdkWindow *marker_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
182 CollectInfo *marker_info;
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 GtkWidget *status_label;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
185 GtkWidget *extra_label;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
186
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
187 gint focus_row;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
188 gint focus_column;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
189 CollectInfo *focus_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
190
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
191 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
192 CollectInfo *drop_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
193 GList *drop_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
194
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
195 gint sync_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
196 gint drop_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
197
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
198 gint show_text;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
199 };
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 struct _CollectWindow
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 GtkWidget *window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
204 CollectTable *table;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
205 GtkWidget *status_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
206 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
207
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
208 GtkWidget *close_dialog;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
209
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
210 CollectionData *cd;
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 _ImageWindow
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 GtkWidget *widget; /* use this to add it and show it */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
216 GtkWidget *image;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
217
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
218 gchar *image_path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
219 const gchar *image_name;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
220
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
221 gint image_width; /* image actual dimensions (pixels) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
222 gint image_height;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
223 GdkPixbuf *pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
224 gint64 size; /* file size (bytes) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
225 time_t mtime; /* file modified time stamp */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
226 gint unknown; /* failed to load image */
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 gint window_width; /* allocated size of window (drawing area) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
229 gint window_height;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
230
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
231 gint x_offset; /* offset of image start (non-zero when image < window) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
232 gint y_offset;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
233
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
234 gint vis_width; /* dimensions of visible part of image */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
235 gint vis_height;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
236
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
237 gint width; /* size of scaled image (result) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
238 gint height;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
239
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
240 gint x_scroll; /* scroll offset of image (into width, height to start drawing) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
241 gint y_scroll;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
242
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
243 gdouble zoom; /* zoom we want (0 is auto) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
244 gdouble scale; /* zoom we got (should never be 0) */
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 gint tile_width;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
247 gint tile_height;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
248 gint tile_cols; /* count of tile columns */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
249 GList *tiles; /* list of buffer tiles */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
250 GList *tile_cache; /* list of pixmap/pixbuf tile allocations */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
251 gint tile_cache_size; /* allocated size of pixmaps/pixbufs */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
252 GList *draw_queue; /* list of areas to redraw */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
253
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
254 GList *draw_queue_2pass;/* list when 2 pass is enabled */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
255
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
256 ImageLoader *il;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
257
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
258 gint draw_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
259 gint draw_idle_high; /* current idle_id has high priority */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
260
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
261 gint in_drag;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
262 gint drag_last_x;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
263 gint drag_last_y;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
264 gint drag_moved;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
265
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
266 gint has_frame;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
267 gint top_window_sync; /* resize top_window when image dimensions change */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
268
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
269 /* top level (not necessarily parent) window */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
270 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
271 gchar *title; /* window title to display left of file name */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
272 gchar *title_right; /* window title to display right of file name */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
273 gint title_show_zoom; /* option to include zoom in window title */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
274
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
275 gint completed;
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 void (*func_update)(ImageWindow *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
278 void (*func_complete)(ImageWindow *, gint preload, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
279 void (*func_new)(ImageWindow *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
280
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
281 gpointer data_update;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
282 gpointer data_complete;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
283 gpointer data_new;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
284
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
285 /* button, scroll functions */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
286 void (*func_button)(ImageWindow *, gint button,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
287 guint32 time, gdouble x, gdouble y, guint state, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
288 void (*func_scroll)(ImageWindow *, GdkScrollDirection direction,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
289 guint32 time, gdouble x, gdouble y, guint state, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
290
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
291 gpointer data_button;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
292 gpointer data_scroll;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
293
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
294 /* collection info */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
295 CollectionData *collection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
296 CollectInfo *collection_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
297
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
298 AlterType delay_alter_type;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
299
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
300 ImageLoader *read_ahead_il;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
301 GdkPixbuf *read_ahead_pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
302 gchar *read_ahead_path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
303
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
304 GdkPixbuf *prev_pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
305 gchar *prev_path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
306
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
307 gint auto_refresh_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
308 gint auto_refresh_interval;
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 gint delay_flip;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
311
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
312 gint scroller_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
313 gint scroller_overlay;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
314 gint scroller_x;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
315 gint scroller_y;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
316 gint scroller_xpos;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
317 gint scroller_ypos;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
318 gint scroller_xinc;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
319 gint scroller_yinc;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
320
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
321 GList *overlay_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
322 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
323
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
324 struct _FileData {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
325 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
326 const gchar *name;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
327 gint64 size;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
328 time_t date;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
329
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
330 GdkPixbuf *pixbuf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
331 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
332
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
333 struct _LayoutWindow
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
334 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
335 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
336
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
337 /* base */
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 GtkWidget *window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
340
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
341 GtkWidget *main_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
342
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
343 GtkWidget *group_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
344 GtkWidget *h_pane;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
345 GtkWidget *v_pane;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
346
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
347 GtkTooltips *tooltips;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
348
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
349 /* menus, path selector */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
350
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
351 GtkActionGroup *action_group;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
352 GtkUIManager *ui_manager;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
353
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
354 GtkWidget *path_entry;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
355
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
356 /* image */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
357
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
358 LayoutLocation image_location;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
359
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
360 ImageWindow *image;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
361
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
362 /* tools window (float) */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
363
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
364 GtkWidget *tools;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
365 GtkWidget *tools_pane;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
366
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
367 gint tools_float;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
368 gint tools_hidden;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
369
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
370 /* toolbar */
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 GtkWidget *toolbar;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
373 gint toolbar_hidden;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
374
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
375 GtkWidget *thumb_button;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
376 gint thumbs_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
377
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
378 /* dir view */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
379
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
380 LayoutLocation dir_location;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
381
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
382 ViewDirList *vdl;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
383 ViewDirTree *vdt;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
384 GtkWidget *dir_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
385
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
386 gint tree_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
387
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
388 /* file view */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
389
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
390 LayoutLocation file_location;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
391
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
392 ViewFileList *vfl;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
393 ViewFileIcon *vfi;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
394 GtkWidget *file_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
395
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
396 gint icon_view;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
397 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
398 gint sort_ascend;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
399
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
400 /* status bar */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
401
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
402 GtkWidget *info_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
403 GtkWidget *info_progress_bar;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
404 GtkWidget *info_sort;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
405 GtkWidget *info_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
406 GtkWidget *info_details;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
407 GtkWidget *info_zoom;
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 /* slide show */
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 SlideShowData *slideshow;
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 /* full screen */
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 FullScreenData *full_screen;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
416 gint full_screen_overlay_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
417 gint full_screen_overlay_on;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
418
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
419 /* dividers */
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 gint div_h;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
422 gint div_v;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
423 gint div_float;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
424
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
425 /* directory update check */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
426
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
427 gint last_time_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
428 time_t last_time;
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 /* misc */
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 GtkWidget *utility_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
433 GtkWidget *bar_sort;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
434 GtkWidget *bar_exif;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
435 GtkWidget *bar_info;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
436
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
437 gint bar_sort_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
438 gint bar_exif_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
439 gint bar_info_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
440
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
441 gint bar_exif_size;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
442 gint bar_exif_advanced;
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
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
445 struct _ViewDirList
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 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
448 GtkWidget *listview;
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 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
451 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
452
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
453 FileData *click_fd;
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 FileData *drop_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
456 GList *drop_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
457
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
458 gint drop_scroll_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
459
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
460 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
461 void (*select_func)(ViewDirList *vdl, const gchar *path, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
462 gpointer select_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
463
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
464 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
465
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
466 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
467
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
468 PixmapFolders *pf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
469 };
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 struct _ViewDirTree
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 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
474 GtkWidget *treeview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
475
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
476 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
477
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
478 FileData *click_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
479
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
480 FileData *drop_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
481 GList *drop_list;
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 gint drop_scroll_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
484 gint drop_expand_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
485
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
486 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
487 void (*select_func)(ViewDirTree *vdt, const gchar *path, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
488 gpointer select_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
489
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
490 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
491
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
492 GtkWidget *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
493
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
494 PixmapFolders *pf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
495
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
496 gint busy_ref;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
497 };
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 struct _ViewFileList
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 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
502 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
503
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
504 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
505 GList *list;
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 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
508 gint sort_ascend;
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 FileData *click_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
511 FileData *select_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
512
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
513 gint thumbs_enabled;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
514
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
515 /* thumb updates */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
516 gint thumbs_running;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
517 gint thumbs_count;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
518 ThumbLoader *thumbs_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
519 FileData *thumbs_filedata;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
520
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
521 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
522 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
523 gpointer data_thumb_status;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
524
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
525 void (*func_status)(ViewFileList *vfl, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
526 gpointer data_status;
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 gint select_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
529 LayoutWindow *layout;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
530
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
531 GtkWidget *popup;
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
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
534 struct _ViewFileIcon
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 GtkWidget *widget;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
537 GtkWidget *listview;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
538
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
539 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
540 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
541
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
542 /* table stuff */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
543
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
544 gint columns;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
545 gint rows;
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 GList *selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
548 FileData *prev_selection;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
549
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
550 GtkWidget *tip_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
551 gint tip_delay_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
552 FileData *tip_fd;
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 FileData *click_fd;
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 FileData *focus_fd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
557 gint focus_row;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
558 gint focus_column;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
559
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
560 SortType sort_method;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
561 gint sort_ascend;
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 gint show_text;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
564
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
565 gint sync_idle_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
566
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
567 /* thumbs */
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 gint thumbs_running;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
570 GList *thumbs_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
571 gint thumbs_count;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
572 ThumbLoader *thumbs_loader;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
573 FileData *thumbs_fd;
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 /* func list */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
576 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
577 gpointer data_thumb_status;
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 void (*func_status)(ViewFileIcon *vfi, gpointer data);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
580 gpointer data_status;
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 LayoutWindow *layout;
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 *popup;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
585 };
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 struct _SlideShowData
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
588 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
589 ImageWindow *imd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
590
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
591 GList *path_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
592 CollectionData *cd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
593 gchar *layout_path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
594 LayoutWindow *layout;
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 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
597 GList *list_done;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
598
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
599 gchar *slide_path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
600
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
601 gint slide_count;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
602 gint timeout_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
603
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
604 gint from_selection;
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 void (*stop_func)(SlideShowData *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
607 gpointer stop_data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
608
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
609 gint paused;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
610 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
611
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
612 struct _FullScreenData
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
613 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
614 GtkWidget *window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
615 ImageWindow *imd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
616
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
617 GtkWidget *normal_window;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
618 ImageWindow *normal_imd;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
619
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
620 gint hide_mouse_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
621 gint busy_mouse_id;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
622 gint cursor_state;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
623
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
624 gint saver_block_id;
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 void (*stop_func)(FullScreenData *, gpointer);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
627 gpointer stop_data;
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
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
630 struct _PixmapFolders
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
631 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
632 GdkPixbuf *close;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
633 GdkPixbuf *open;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
634 GdkPixbuf *deny;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
635 GdkPixbuf *parent;
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
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
638
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
639 #endif
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
640
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
641