comparison src/typedefs.h @ 23:17acca639a86

##### Note: GQview CVS on sourceforge is not always up to date, please use ##### ##### an offical release when making enhancements and translation updates. ##### Fri Mar 18 19:52:38 2005 John Ellis <johne@verizon.net> * pixbuf-renderer.c: Fix broken 2pass queueing so it merges a single queue item for each tile, and now that a tile holds a queue pointer there is no need to walk the tile list to find a possible merge victim. Thu Mar 17 19:23:56 2005 John Ellis <johne@verizon.net> * image.c, pixbuf-renderer.[ch]: More progress, and 2 pass zoom now works again (mostly). Tue Mar 15 23:17:41 2005 John Ellis <johne@verizon.net> * image.[ch]: Start conversion to use of PixbufRenderer. * pixbuf-renderer.[ch]: Additions and fixes for use by ImageWindow. * fullscreen.c, image-overlay.c, img-view.c, info.c, layout.c, layout_image.c, print.c: Changes for above ImageWindow conversion. * typedefs.h: Remove unused ImageWindow variables. Mon Mar 14 20:45:50 2005 John Ellis <johne@verizon.net> * pan-view.c: Convert to using new PixbufRenderer. * pixbuf-renderer.[ch]: Clean up and fixes. Sun Mar 13 10:21:35 2005 John Ellis <johne@verizon.net> * image.c (image_scroller_start): Unref scroller pixbuf after adding it as an overlay to avoid leaking it. * pixbuf-renderer.[ch]: All functions defined in header file are now implemented. Fri Mar 11 17:05:36 2005 John Ellis <johne@verizon.net> * pixbuf-renderer.[ch]: Set up object properties and additional. Mar 10 19:22:18 2005 John Ellis <johne@verizon.net> * pixbuf-renderer.[ch]: FIx scrolling to use old method of gdk_draw and not gdk_scroll, as scroll often invalidates the entire window (!). Also merged in source tiles code from image.c. * pan-view.c: Change picked up when testing PixbufRender zoom. Tue Mar 8 23:26:00 2005 John Ellis <johne@verizon.net> * pixbuf-renderer.[ch]: Start of turning image drawing portion of ImageWindow into an actual GtkWidget. * src/Makefile.am: Add pixbuf-renderer.[ch]. * pan-view.c: Added temporary hack button and callback for testing PixbufRenderer widget.
author gqview
date Sat, 19 Mar 2005 01:15:17 +0000
parents 25335c62cd9b
children 6281cc38e5ca
comparison
equal deleted inserted replaced
22:e9625635e162 23:17acca639a86
217 gint width, gint height, GdkPixbuf *pixbuf, gpointer); 217 gint width, gint height, GdkPixbuf *pixbuf, gpointer);
218 218
219 struct _ImageWindow 219 struct _ImageWindow
220 { 220 {
221 GtkWidget *widget; /* use this to add it and show it */ 221 GtkWidget *widget; /* use this to add it and show it */
222 GtkWidget *image; 222 GtkWidget *pr;
223 GtkWidget *frame;
223 224
224 gchar *image_path; 225 gchar *image_path;
225 const gchar *image_name; 226 const gchar *image_name;
226 227
227 gint image_width; /* image actual dimensions (pixels) */
228 gint image_height;
229 GdkPixbuf *pixbuf;
230 gint64 size; /* file size (bytes) */ 228 gint64 size; /* file size (bytes) */
231 time_t mtime; /* file modified time stamp */ 229 time_t mtime; /* file modified time stamp */
232 gint unknown; /* failed to load image */ 230 gint unknown; /* failed to load image */
233 231
234 gint window_width; /* allocated size of window (drawing area) */
235 gint window_height;
236
237 gint x_offset; /* offset of image start (non-zero when image < window) */
238 gint y_offset;
239
240 gint vis_width; /* dimensions of visible part of image */
241 gint vis_height;
242
243 gint width; /* size of scaled image (result) */
244 gint height;
245
246 gint x_scroll; /* scroll offset of image (into width, height to start drawing) */
247 gint y_scroll;
248
249 gdouble zoom_min;
250 gdouble zoom_max;
251 gdouble zoom; /* zoom we want (0 is auto) */
252 gdouble scale; /* zoom we got (should never be 0) */
253
254 gint tile_width;
255 gint tile_height;
256 gint tile_cols; /* count of tile columns */
257 GList *tiles; /* list of buffer tiles */
258 GList *tile_cache; /* list of pixmap/pixbuf tile allocations */
259 gint tile_cache_size; /* allocated size of pixmaps/pixbufs */
260 GList *draw_queue; /* list of areas to redraw */
261
262 gint source_tiles_enabled;
263 gint source_tiles_cache_size;
264
265 GList *source_tiles; /* list of active source tiles */
266 gint source_tile_width;
267 gint source_tile_height;
268
269 GList *draw_queue_2pass;/* list when 2 pass is enabled */
270
271 ImageLoader *il; 232 ImageLoader *il;
272 233
273 gint draw_idle_id;
274 gint draw_idle_high; /* current idle_id has high priority */
275
276 gint in_drag;
277 gint drag_last_x;
278 gint drag_last_y;
279 gint drag_moved;
280
281 gint has_frame; 234 gint has_frame;
235
236 /* top level (not necessarily parent) window */
282 gint top_window_sync; /* resize top_window when image dimensions change */ 237 gint top_window_sync; /* resize top_window when image dimensions change */
283
284 /* top level (not necessarily parent) window */
285 GtkWidget *top_window; /* window that gets title, and window to resize when 'fitting' */ 238 GtkWidget *top_window; /* window that gets title, and window to resize when 'fitting' */
286 gchar *title; /* window title to display left of file name */ 239 gchar *title; /* window title to display left of file name */
287 gchar *title_right; /* window title to display right of file name */ 240 gchar *title_right; /* window title to display right of file name */
288 gint title_show_zoom; /* option to include zoom in window title */ 241 gint title_show_zoom; /* option to include zoom in window title */
289 242
329 282
330 gint auto_refresh_id; 283 gint auto_refresh_id;
331 gint auto_refresh_interval; 284 gint auto_refresh_interval;
332 285
333 gint delay_flip; 286 gint delay_flip;
334
335 gint scroller_id;
336 gint scroller_overlay;
337 gint scroller_x;
338 gint scroller_y;
339 gint scroller_xpos;
340 gint scroller_ypos;
341 gint scroller_xinc;
342 gint scroller_yinc;
343
344 GList *overlay_list;
345 }; 287 };
346 288
347 struct _FileData { 289 struct _FileData {
348 gchar *path; 290 gchar *path;
349 const gchar *name; 291 const gchar *name;