## ev-view

ev-view

## Synopsis

    #define             EV_TYPE_SIZING_MODE
    #define             EV_SIZING_MODE_CLASS
    #define             EV_TYPE_SCROLL_TYPE
    #define             EV_SCROLL_TYPE_CLASS
                        EvView;
                        EvViewClass;
    enum                EvSizingMode;
    enum                EvViewSelectionMode;
    enum                EvScrollType;
    GType               ev_sizing_mode_get_type             (void);
    GType               ev_scroll_type_get_type             (void);
    GtkWidget*          ev_view_new                         (void);
    void                ev_view_set_document                (EvView *view,
                                                             EvDocument *document);
    void                ev_view_set_loading                 (EvView *view,
                                                             gboolean loading);
    void                ev_view_copy                        (EvView *view);
    void                ev_view_select_all                  (EvView *view);
    gboolean            ev_view_get_has_selection           (EvView *view);
    gboolean            ev_view_get_continuous              (EvView *view);
    void                ev_view_set_continuous              (EvView *view,
                                                             gboolean continuous);
    gboolean            ev_view_get_dual_page               (EvView *view);
    void                ev_view_set_dual_page               (EvView *view,
                                                             gboolean dual_page);
    void                ev_view_set_fullscreen              (EvView *view,
                                                             gboolean fullscreen);
    gboolean            ev_view_get_fullscreen              (EvView *view);
    void                ev_view_set_presentation            (EvView *view,
                                                             gboolean presentation);
    gboolean            ev_view_get_presentation            (EvView *view);
    void                ev_view_set_sizing_mode             (EvView *view,
                                                             EvSizingMode mode);
    EvSizingMode        ev_view_get_sizing_mode             (EvView *view);
    gboolean            ev_view_can_zoom_in                 (EvView *view);
    void                ev_view_zoom_in                     (EvView *view);
    gboolean            ev_view_can_zoom_out                (EvView *view);
    void                ev_view_zoom_out                    (EvView *view);
    void                ev_view_set_zoom                    (EvView *view,
                                                             double factor,
                                                             gboolean relative);
    double              ev_view_get_zoom                    (EvView *view);
    void                ev_view_set_screen_dpi              (EvView *view,
                                                             gdouble dpi);
    void                ev_view_rotate_left                 (EvView *view);
    void                ev_view_rotate_right                (EvView *view);
    void                ev_view_set_rotation                (EvView *view,
                                                             int rotation);
    int                 ev_view_get_rotation                (EvView *view);
    gboolean            ev_view_can_find_next               (EvView *view);
    void                ev_view_find_next                   (EvView *view);
    gboolean            ev_view_can_find_previous           (EvView *view);
    void                ev_view_find_previous               (EvView *view);
    void                ev_view_search_changed              (EvView *view);
    void                ev_view_set_highlight_search        (EvView *view,
                                                             gboolean value);
    void                ev_view_find_cancel                 (EvView *view);
    const char*         ev_view_get_status                  (EvView *view);
    const char*         ev_view_get_find_status             (EvView *view);
    void                ev_view_hide_cursor                 (EvView *view);
    void                ev_view_show_cursor                 (EvView *view);
    void                ev_view_scroll                      (EvView *view,
                                                             EvScrollType scroll,
                                                             gboolean horizontal);
    void                ev_view_handle_link                 (EvView *view,
                                                             EvLink *link);
    gboolean            ev_view_next_page                   (EvView *view);
    gboolean            ev_view_previous_page               (EvView *view);
    gchar*              ev_view_page_label_from_dest        (EvView *view,
                                                             EvLinkDest *dest);
    void                ev_view_update_view_size            (EvView *view,
                                                             GtkScrolledWindow *scrolled_window);
    void                ev_view_autoscroll_start            (EvView *view);
    void                ev_view_autoscroll_stop             (EvView *view);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkLayout
                                     +----EvView

## Implemented Interfaces

EvView implements GtkBuildable and AtkImplementorIface.

## Properties

      "continuous"               gboolean              : Read / Write
      "dual-page"                gboolean              : Read / Write
      "find-status"              gchararray            : Read
      "fullscreen"               gboolean              : Read / Write
      "has-selection"            gboolean              : Read
      "presentation"             gboolean              : Read / Write
      "rotation"                 gdouble               : Read / Write
      "sizing-mode"              EvSizingMode          : Read / Write
      "zoom"                     gdouble               : Read / Write

## Signals

      "binding-activated"                              : Run Last / Action
      "external-link"                                  : Run Last / Action
      "handle-link"                                    : Run Last / Action
      "popup"                                          : Run Last / Action
      "zoom-invalid"                                   : Run Last / Action

## Description

## Details

### EV_TYPE_SIZING_MODE

    #define EV_TYPE_SIZING_MODE     (ev_sizing_mode_get_type())

### EV_SIZING_MODE_CLASS

    #define EV_SIZING_MODE_CLASS    (g_type_class_peek (EV_TYPE_SIZING_MODE))

### EV_TYPE_SCROLL_TYPE

    #define EV_TYPE_SCROLL_TYPE     (ev_scroll_type_get_type())

### EV_SCROLL_TYPE_CLASS

    #define EV_SCROLL_TYPE_CLASS    (g_type_class_peek (EV_TYPE_SCROLL_TYPE))

### EvView

    typedef struct _EvView EvView;

### EvViewClass

    typedef struct {
    	GtkLayoutClass parent_class;

    	void    (*binding_activated)	  (EvView         *view,
    					   EvScrollType   scroll,
    					   gboolean        horizontal);
    	void    (*zoom_invalid)		  (EvView         *view);
    	void    (*handle_link)		  (EvView         *view,
    					   EvLink         *link);
    	void    (*external_link)	  (EvView         *view,
    					   EvLinkAction   *action);
    	void    (*popup_menu)		  (EvView         *view,
    					   EvLink         *link);
    } EvViewClass;

### enum EvSizingMode

    typedef enum {
    	EV_SIZING_BEST_FIT,
    	EV_SIZING_FIT_WIDTH,
    	EV_SIZING_FREE,
    } EvSizingMode;

### enum EvViewSelectionMode

    typedef enum {
    	EV_VIEW_SELECTION_TEXT,
    	EV_VIEW_SELECTION_RECTANGLE,
    } EvViewSelectionMode;

### enum EvScrollType

    typedef enum {
    	EV_SCROLL_PAGE_FORWARD,
    	EV_SCROLL_PAGE_BACKWARD,
    	EV_SCROLL_STEP_BACKWARD,
    	EV_SCROLL_STEP_FORWARD,
    	EV_SCROLL_STEP_DOWN,
    	EV_SCROLL_STEP_UP,
    } EvScrollType;

### ev_sizing_mode_get_type ()

    GType               ev_sizing_mode_get_type             (void);

Returns : |

### ev_scroll_type_get_type ()

    GType               ev_scroll_type_get_type             (void);

Returns : |

### ev_view_new ()

    GtkWidget*          ev_view_new                         (void);

Returns : |

### ev_view_set_document ()

    void                ev_view_set_document                (EvView *view,
                                                             EvDocument *document);

`view` : |
`document` : |

### ev_view_set_loading ()

    void                ev_view_set_loading                 (EvView *view,
                                                             gboolean loading);

`view` : |
`loading` : |

### ev_view_copy ()

    void                ev_view_copy                        (EvView *view);

`view` : |

### ev_view_select_all ()

    void                ev_view_select_all                  (EvView *view);

`view` : |

### ev_view_get_has_selection ()

    gboolean            ev_view_get_has_selection           (EvView *view);

`view` : |
Returns : |

### ev_view_get_continuous ()

    gboolean            ev_view_get_continuous              (EvView *view);

`view` : |
Returns : |

### ev_view_set_continuous ()

    void                ev_view_set_continuous              (EvView *view,
                                                             gboolean continuous);

`view` : |
`continuous` : |

### ev_view_get_dual_page ()

    gboolean            ev_view_get_dual_page               (EvView *view);

`view` : |
Returns : |

### ev_view_set_dual_page ()

    void                ev_view_set_dual_page               (EvView *view,
                                                             gboolean dual_page);

`view` : |
`dual_page` : |

### ev_view_set_fullscreen ()

    void                ev_view_set_fullscreen              (EvView *view,
                                                             gboolean fullscreen);

`view` : |
`fullscreen` : |

### ev_view_get_fullscreen ()

    gboolean            ev_view_get_fullscreen              (EvView *view);

`view` : |
Returns : |

### ev_view_set_presentation ()

    void                ev_view_set_presentation            (EvView *view,
                                                             gboolean presentation);

`view` : |
`presentation` : |

### ev_view_get_presentation ()

    gboolean            ev_view_get_presentation            (EvView *view);

`view` : |
Returns : |

### ev_view_set_sizing_mode ()

    void                ev_view_set_sizing_mode             (EvView *view,
                                                             EvSizingMode mode);

`view` : |
`mode` : |

### ev_view_get_sizing_mode ()

    EvSizingMode        ev_view_get_sizing_mode             (EvView *view);

`view` : |
Returns : |

### ev_view_can_zoom_in ()

    gboolean            ev_view_can_zoom_in                 (EvView *view);

`view` : |
Returns : |

### ev_view_zoom_in ()

    void                ev_view_zoom_in                     (EvView *view);

`view` : |

### ev_view_can_zoom_out ()

    gboolean            ev_view_can_zoom_out                (EvView *view);

`view` : |
Returns : |

### ev_view_zoom_out ()

    void                ev_view_zoom_out                    (EvView *view);

`view` : |

### ev_view_set_zoom ()

    void                ev_view_set_zoom                    (EvView *view,
                                                             double factor,
                                                             gboolean relative);

`view` : |
`factor` : |
`relative` : |

### ev_view_get_zoom ()

    double              ev_view_get_zoom                    (EvView *view);

`view` : |
Returns : |

### ev_view_set_screen_dpi ()

    void                ev_view_set_screen_dpi              (EvView *view,
                                                             gdouble dpi);

`view` : |
`dpi` : |

### ev_view_rotate_left ()

    void                ev_view_rotate_left                 (EvView *view);

`view` : |

### ev_view_rotate_right ()

    void                ev_view_rotate_right                (EvView *view);

`view` : |

### ev_view_set_rotation ()

    void                ev_view_set_rotation                (EvView *view,
                                                             int rotation);

`view` : |
`rotation` : |

### ev_view_get_rotation ()

    int                 ev_view_get_rotation                (EvView *view);

`view` : |
Returns : |

### ev_view_can_find_next ()

    gboolean            ev_view_can_find_next               (EvView *view);

`view` : |
Returns : |

### ev_view_find_next ()

    void                ev_view_find_next                   (EvView *view);

`view` : |

### ev_view_can_find_previous ()

    gboolean            ev_view_can_find_previous           (EvView *view);

`view` : |
Returns : |

### ev_view_find_previous ()

    void                ev_view_find_previous               (EvView *view);

`view` : |

### ev_view_search_changed ()

    void                ev_view_search_changed              (EvView *view);

`view` : |

### ev_view_set_highlight_search ()

    void                ev_view_set_highlight_search        (EvView *view,
                                                             gboolean value);

`view` : |
`value` : |

### ev_view_find_cancel ()

    void                ev_view_find_cancel                 (EvView *view);

`view` : |

### ev_view_get_status ()

    const char*         ev_view_get_status                  (EvView *view);

`view` : |
Returns : |

### ev_view_get_find_status ()

    const char*         ev_view_get_find_status             (EvView *view);

`view` : |
Returns : |

### ev_view_hide_cursor ()

    void                ev_view_hide_cursor                 (EvView *view);

`view` : |

### ev_view_show_cursor ()

    void                ev_view_show_cursor                 (EvView *view);

`view` : |

### ev_view_scroll ()

    void                ev_view_scroll                      (EvView *view,
                                                             EvScrollType scroll,
                                                             gboolean horizontal);

`view` : |
`scroll` : |
`horizontal` : |

### ev_view_handle_link ()

    void                ev_view_handle_link                 (EvView *view,
                                                             EvLink *link);

`view` : |
`link` : |

### ev_view_next_page ()

    gboolean            ev_view_next_page                   (EvView *view);

`view` : |
Returns : |

### ev_view_previous_page ()

    gboolean            ev_view_previous_page               (EvView *view);

`view` : |
Returns : |

### ev_view_page_label_from_dest ()

    gchar*              ev_view_page_label_from_dest        (EvView *view,
                                                             EvLinkDest *dest);

`view` : |
`dest` : |
Returns : |

### ev_view_update_view_size ()

    void                ev_view_update_view_size            (EvView *view,
                                                             GtkScrolledWindow *scrolled_window);

`view` : |
`scrolled_window` : |

### ev_view_autoscroll_start ()

    void                ev_view_autoscroll_start            (EvView *view);

`view` : |

### ev_view_autoscroll_stop ()

    void                ev_view_autoscroll_stop             (EvView *view);

`view` : |

## Property Details

### The "`continuous`" property

      "continuous"               gboolean              : Read / Write

Continuous scrolling mode.

Default value: TRUE

### The "`dual-page`" property

      "dual-page"                gboolean              : Read / Write

Two pages visible at once.

Default value: FALSE

### The "`find-status`" property

      "find-status"              gchararray            : Read

The find status message.

Default value: NULL

### The "`fullscreen`" property

      "fullscreen"               gboolean              : Read / Write

Draw page in a fullscreen fashion.

Default value: FALSE

### The "`has-selection`" property

      "has-selection"            gboolean              : Read

The view has selections.

Default value: FALSE

### The "`presentation`" property

      "presentation"             gboolean              : Read / Write

Draw page in presentation mode.

Default value: TRUE

### The "`rotation`" property

      "rotation"                 gdouble               : Read / Write

Rotation.

Allowed values: [0,360]

Default value: 0

### The "`sizing-mode`" property

      "sizing-mode"              EvSizingMode          : Read / Write

Sizing Mode.

Default value: EV_SIZING_FIT_WIDTH

### The "`zoom`" property

      "zoom"                     gdouble               : Read / Write

Zoom factor.

Allowed values: >= 0

Default value: 1

## Signal Details

### The "binding-activated" signal

    void                user_function                      (EvView       *evview,
                                                            GtkScrollType arg1,
                                                            gboolean      arg2,
                                                            gpointer      user_data)      : Run Last / Action

`evview` : | the object which received the signal.
`arg1` : |
`arg2` : |
`user_data` : | user data set when the signal handler was connected.

### The "external-link" signal

    void                user_function                      (EvView  *evview,
                                                            GObject *arg1,
                                                            gpointer user_data)      : Run Last / Action

`evview` : | the object which received the signal.
`arg1` : |
`user_data` : | user data set when the signal handler was connected.

### The "handle-link" signal

    void                user_function                      (EvView  *evview,
                                                            GObject *arg1,
                                                            gpointer user_data)      : Run Last / Action

`evview` : | the object which received the signal.
`arg1` : |
`user_data` : | user data set when the signal handler was connected.

### The "popup" signal

    void                user_function                      (EvView  *evview,
                                                            GObject *arg1,
                                                            gpointer user_data)      : Run Last / Action

`evview` : | the object which received the signal.
`arg1` : |
`user_data` : | user data set when the signal handler was connected.

### The "zoom-invalid" signal

    void                user_function                      (EvView  *evview,
                                                            gpointer user_data)      : Run Last / Action

`evview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.