]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-view-private.h
Use common save function for backends.
[evince.git] / shell / ev-view-private.h
index 9cd4a74e6e1a743dfc4e3fbee2556f8d929047b3..91f43154de25ca9fcda006ea79def8b8ce1ea2cf 100644 (file)
@@ -35,16 +35,16 @@ typedef struct {
 
 /* Information for handling selection */
 typedef struct {
 
 /* Information for handling selection */
 typedef struct {
-       gboolean in_selection;
        gboolean in_drag;
        GdkPoint start;
        gboolean in_drag;
        GdkPoint start;
+       gboolean in_selection;
        GList *selections;
 } SelectionInfo;
 
 typedef enum {
        SCROLL_TO_KEEP_POSITION,
        GList *selections;
 } SelectionInfo;
 
 typedef enum {
        SCROLL_TO_KEEP_POSITION,
-       SCROLL_TO_CURRENT_PAGE,
-       SCROLL_TO_CENTER
+       SCROLL_TO_PAGE_POSITION,
+       SCROLL_TO_CENTER,
 } PendingScroll;
 
 typedef enum {
 } PendingScroll;
 
 typedef enum {
@@ -63,45 +63,34 @@ struct _EvView {
 
        char *status;
        char *find_status;
 
        char *status;
        char *find_status;
+       int find_result;
+       
+       EvPageCache *page_cache;
+       EvPixbufCache *pixbuf_cache;
+       EvViewCursor cursor;
+       EvJobRender *current_job;
 
        /* Scrolling */
        GtkAdjustment *hadjustment;
        GtkAdjustment *vadjustment;
 
        gint scroll_x;
 
        /* Scrolling */
        GtkAdjustment *hadjustment;
        GtkAdjustment *vadjustment;
 
        gint scroll_x;
-       gint scroll_y;
-
-       /* Information for middle clicking and dragging around. */
-       DragInfo drag_info;
+       gint scroll_y;  
 
 
-       /* Selection */
-       gint motion_x;
-       gint motion_y;
-       guint selection_update_id;
-
-       EvViewSelectionMode selection_mode;
-       SelectionInfo selection_info;
-
-       int pressed_button;
-       EvViewCursor cursor;
-       GtkWidget *link_tooltip;
-       EvLink *hovered_link;
-
-       EvPageCache *page_cache;
-       EvPixbufCache *pixbuf_cache;
+       PendingScroll pending_scroll;
+       gboolean      pending_resize;
+       EvPoint       pending_point;
 
 
+       /* Current geometry */
+    
        gint start_page;
        gint end_page;
        gint current_page;
        gint start_page;
        gint end_page;
        gint current_page;
-
-       EvJobRender *current_job;
-
-       int find_page;
-       int find_result;
-       int spacing;
+       gint find_page;
 
        int rotation;
        double scale;
 
        int rotation;
        double scale;
+       int spacing;
 
        gboolean continuous;
        gboolean dual_page;
 
        gboolean continuous;
        gboolean dual_page;
@@ -109,8 +98,23 @@ struct _EvView {
        gboolean presentation;
        EvSizingMode sizing_mode;
 
        gboolean presentation;
        EvSizingMode sizing_mode;
 
-       PendingScroll pending_scroll;
-       gboolean pending_resize;
+       /* Common for button press handling */
+       int pressed_button;
+
+       /* Information for middle clicking and dragging around. */
+       DragInfo drag_info;
+
+       /* Selection */
+       GdkPoint motion;
+       guint selection_update_id;
+       guint selection_scroll_id;
+
+       EvViewSelectionMode selection_mode;
+       SelectionInfo selection_info;
+
+       /* Links */
+       GtkWidget *link_tooltip;
+       EvLink *hovered_link;
 };
 
 struct _EvViewClass {
 };
 
 struct _EvViewClass {
@@ -125,6 +129,8 @@ struct _EvViewClass {
        void    (*zoom_invalid)           (EvView         *view);
        void    (*external_link)          (EvView         *view,
                                           EvLink         *link);
        void    (*zoom_invalid)           (EvView         *view);
        void    (*external_link)          (EvView         *view,
                                           EvLink         *link);
+       void    (*popup_menu)             (EvView         *view,
+                                          EvLink         *link);
 };
 
 #endif  /* __EV_VIEW_PRIVATE_H__ */
 };
 
 #endif  /* __EV_VIEW_PRIVATE_H__ */