Evince
Evince is a document viewer capable of displaying multiple and single page document formats like PDF and Postscript.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ev-view.h
Go to the documentation of this file.
1 /* this file is part of evince, a gnome document viewer
2  *
3  * Copyright (C) 2004 Red Hat, Inc
4  *
5  * Evince is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * Evince is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18  */
19 
20 #if !defined (__EV_EVINCE_VIEW_H_INSIDE__) && !defined (EVINCE_COMPILATION)
21 #error "Only <evince-view.h> can be included directly."
22 #endif
23 
24 #ifndef __EV_VIEW_H__
25 #define __EV_VIEW_H__
26 
27 #include <gtk/gtk.h>
28 
29 #include <evince-document.h>
30 
31 #include "ev-document-model.h"
32 #include "ev-jobs.h"
33 
34 G_BEGIN_DECLS
35 
36 #define EV_TYPE_VIEW (ev_view_get_type ())
37 #define EV_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EV_TYPE_VIEW, EvView))
38 #define EV_IS_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EV_TYPE_VIEW))
39 #define EV_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EV_TYPE_VIEW, EvViewClass))
40 #define EV_IS_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EV_TYPE_VIEW))
41 #define EV_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EV_TYPE_VIEW, EvViewClass))
42 
43 typedef struct _EvView EvView;
44 typedef struct _EvViewClass EvViewClass;
45 
46 GType ev_view_get_type (void) G_GNUC_CONST;
47 
48 GtkWidget* ev_view_new (void);
49 void ev_view_set_model (EvView *view,
50  EvDocumentModel *model);
52 void ev_view_set_loading (EvView *view,
53  gboolean loading);
54 gboolean ev_view_is_loading (EvView *view);
55 void ev_view_reload (EvView *view);
57  gsize cache_size);
58 
60  gboolean allowed);
62 
63 /* Clipboard */
64 void ev_view_copy (EvView *view);
66  EvLinkAction *action);
67 void ev_view_select_all (EvView *view);
68 gboolean ev_view_get_has_selection (EvView *view);
69 
70 /* Page size */
71 gboolean ev_view_can_zoom_in (EvView *view);
72 void ev_view_zoom_in (EvView *view);
73 gboolean ev_view_can_zoom_out (EvView *view);
74 void ev_view_zoom_out (EvView *view);
75 
76 /* Find */
77 void ev_view_find_started (EvView *view,
78  EvJobFind *job);
79 void ev_view_find_restart (EvView *view,
80  gint page);
81 void ev_view_find_next (EvView *view);
82 void ev_view_find_previous (EvView *view);
84  gint page,
85  gint result);
88  gboolean value);
90 void ev_view_find_changed (EvView *view,
91  GList **results,
92  gint page);
93 void ev_view_find_cancel (EvView *view);
94 
95 /* Synctex */
97  EvSourceLink *link);
98 
99 /* Cursor */
100 void ev_view_hide_cursor (EvView *view);
101 void ev_view_show_cursor (EvView *view);
102 
103 /* Navigation */
104 EV_DEPRECATED_FOR(g_signal_emit_by_name)
105 void ev_view_scroll (EvView *view,
106  GtkScrollType scroll,
107  gboolean horizontal);
108 void ev_view_handle_link (EvView *view,
109  EvLink *link);
110 gboolean ev_view_next_page (EvView *view);
111 gboolean ev_view_previous_page (EvView *view);
112 
113 void ev_view_autoscroll_start (EvView *view);
114 void ev_view_autoscroll_stop (EvView *view);
115 
116 gboolean ev_view_get_page_extents (EvView *view,
117  gint page,
118  GdkRectangle *page_area,
119  GtkBorder *border);
120 /* Annotations */
121 void ev_view_focus_annotation (EvView *view,
122  EvMapping *annot_mapping);
124  EvAnnotationType annot_type);
127  EvAnnotation *annot);
128 
129 /* Caret navigation */
133  gboolean enabled);
135  guint page,
136  guint offset);
137 G_END_DECLS
138 
139 #endif /* __EV_VIEW_H__ */