X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-pixbuf-cache.h;h=ed1c1ec9885c54b8f25703327577c1411f825130;hb=f343927df4325959193353c52cff1ea4b20b2286;hp=19d0311f55bf2c2ede126efe50460891657dc141;hpb=e93b3a265bbc02546d230204402e3f41e83d6ab5;p=evince.git diff --git a/shell/ev-pixbuf-cache.h b/shell/ev-pixbuf-cache.h index 19d0311f..ed1c1ec9 100644 --- a/shell/ev-pixbuf-cache.h +++ b/shell/ev-pixbuf-cache.h @@ -26,6 +26,7 @@ #include #include "ev-document.h" +#include "ev-selection.h" #include "ev-job-queue.h" G_BEGIN_DECLS @@ -42,30 +43,47 @@ G_BEGIN_DECLS typedef struct { int page; EvRectangle rect; + GdkRegion *covered_region; + EvSelectionStyle style; } EvViewSelection; typedef struct _EvPixbufCache EvPixbufCache; typedef struct _EvPixbufCacheClass EvPixbufCacheClass; -GType ev_pixbuf_cache_get_type (void) G_GNUC_CONST; -EvPixbufCache *ev_pixbuf_cache_new (EvDocument *document); +GType ev_pixbuf_cache_get_type (void) G_GNUC_CONST; +EvPixbufCache *ev_pixbuf_cache_new (GtkWidget *view, + EvDocument *document); void ev_pixbuf_cache_set_page_range (EvPixbufCache *pixbuf_cache, gint start_page, gint end_page, + gint rotation, gfloat scale, GList *selection_list); -GdkPixbuf *ev_pixbuf_cache_get_pixbuf (EvPixbufCache *pixbuf_cache, +cairo_surface_t *ev_pixbuf_cache_get_surface (EvPixbufCache *pixbuf_cache, gint page); GList *ev_pixbuf_cache_get_link_mapping (EvPixbufCache *pixbuf_cache, gint page); -/* Selection */ -GList *ev_pixbuf_cach_get_text_mapping (EvPixbufCache *pixbuf_cache, +GList *ev_pixbuf_cache_get_image_mapping (EvPixbufCache *pixbuf_cache, + gint page); +GdkRegion *ev_pixbuf_cache_get_text_mapping (EvPixbufCache *pixbuf_cache, gint page); -GdkPixbuf *ev_pixbuf_cache_get_selection_pixbuf (EvPixbufCache *pixbuf_cache, - gint page, - gfloat scale); +GList *ev_pixbuf_cache_get_form_field_mapping (EvPixbufCache *pixbuf_cache, + gint page); +void ev_pixbuf_cache_clear (EvPixbufCache *pixbuf_cache); +void ev_pixbuf_cache_style_changed (EvPixbufCache *pixbuf_cache); +void ev_pixbuf_cache_reload_page (EvPixbufCache *pixbuf_cache, + GdkRegion *region, + gint page, + gint rotation, + gdouble scale); +/* Selection */ +cairo_surface_t *ev_pixbuf_cache_get_selection_surface (EvPixbufCache *pixbuf_cache, + gint page, + gfloat scale, + GdkRegion **region); void ev_pixbuf_cache_set_selection_list (EvPixbufCache *pixbuf_cache, GList *selection_list); +GList *ev_pixbuf_cache_get_selection_list (EvPixbufCache *pixbuf_cache); G_END_DECLS