Mercurial > geeqie
diff src/pixbuf-renderer.h @ 398:c4080362d619
image post-processing (rotation and color management) moved to
pixbuf-renderer
author | nadvornik |
---|---|
date | Thu, 17 Apr 2008 17:44:54 +0000 |
parents | 0226daf8c30b |
children | 4b2d7f9af171 |
line wrap: on
line diff
--- a/src/pixbuf-renderer.h Thu Apr 17 17:35:51 2008 +0000 +++ b/src/pixbuf-renderer.h Thu Apr 17 17:44:54 2008 +0000 @@ -32,6 +32,10 @@ gint width, gint height, GdkPixbuf *pixbuf, gpointer user_data); typedef void (* PixbufRendererTileDisposeFunc)(PixbufRenderer *pr, gint x, gint y, gint width, gint height, GdkPixbuf *pixbuf, gpointer user_data); + +typedef void (* PixbufRendererPostProcessFunc)(PixbufRenderer *pr, GdkPixbuf **pixbuf, gint x, gint y, + gint width, gint height, gpointer user_data); + typedef enum { PR_SCROLL_RESET_TOPLEFT = 0, PR_SCROLL_RESET_CENTER, @@ -119,8 +123,12 @@ PixbufRendererTileRequestFunc func_tile_request; PixbufRendererTileDisposeFunc func_tile_dispose; + + gpointer func_tile_data; - gpointer func_tile_data; + PixbufRendererPostProcessFunc func_post_process; + gpointer post_process_user_data; + gint post_process_slow; gboolean delay_flip; gboolean loading; @@ -138,6 +146,10 @@ GList *overlay_list; GdkPixmap *overlay_buffer; + + GdkPixbuf *spare_tile; + + gint orientation; }; struct _PixbufRendererClass @@ -165,6 +177,11 @@ void pixbuf_renderer_set_pixbuf(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom); GdkPixbuf *pixbuf_renderer_get_pixbuf(PixbufRenderer *pr); +void pixbuf_renderer_set_orientation(PixbufRenderer *pr, gint orientation); +gint pixbuf_renderer_get_orientation(PixbufRenderer *pr); + +void pixbuf_renderer_set_post_process_func(PixbufRenderer *pr, PixbufRendererPostProcessFunc func, gpointer user_data, gint slow); + /* display an on-request array of pixbuf tiles */ void pixbuf_renderer_set_tiles(PixbufRenderer *pr, gint width, gint height,