File: ev-view.h

package info (click to toggle)
evince 48.1-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 19,028 kB
  • sloc: ansic: 73,001; xml: 288; sh: 129; makefile: 22
file content (197 lines) | stat: -rw-r--r-- 7,128 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
/* this file is part of evince, a gnome document viewer
 *
 *  Copyright (C) 2004 Red Hat, Inc
 *
 * Evince is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * Evince is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */

#pragma once

#if !defined (__EV_EVINCE_VIEW_H_INSIDE__) && !defined (EVINCE_COMPILATION)
#error "Only <evince-view.h> can be included directly."
#endif

#include <gtk/gtk.h>

#include <evince-document.h>

#include "ev-document-model.h"
#include "ev-jobs.h"

G_BEGIN_DECLS

#define EV_TYPE_VIEW            (ev_view_get_type ())
#define EV_VIEW(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), EV_TYPE_VIEW, EvView))
#define EV_IS_VIEW(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EV_TYPE_VIEW))
#define EV_VIEW_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), EV_TYPE_VIEW, EvViewClass))
#define EV_IS_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EV_TYPE_VIEW))
#define EV_VIEW_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), EV_TYPE_VIEW, EvViewClass))

typedef struct _EvView       EvView;
typedef struct _EvViewClass  EvViewClass;

EV_PUBLIC
GType		ev_view_get_type	    (void) G_GNUC_CONST;

EV_PUBLIC
GtkWidget*	ev_view_new		    (void);
EV_PUBLIC
void		ev_view_set_model	    (EvView          *view,
					     EvDocumentModel *model);
EV_DEPRECATED
EV_PUBLIC
void 		ev_view_set_loading         (EvView 	     *view,
					     gboolean         loading);
EV_PUBLIC
gboolean        ev_view_is_loading          (EvView          *view);
EV_PUBLIC
void            ev_view_reload              (EvView          *view);
EV_PUBLIC
void            ev_view_set_page_cache_size (EvView          *view,
					     gsize            cache_size);

EV_PUBLIC
void            ev_view_set_allow_links_change_zoom (EvView  *view,
                                                     gboolean allowed);
EV_PUBLIC
gboolean        ev_view_get_allow_links_change_zoom (EvView  *view);

/* Clipboard */
EV_PUBLIC
void		ev_view_copy		  (EvView         *view);
EV_PUBLIC
void            ev_view_copy_link_address (EvView         *view,
					   EvLinkAction   *action);
EV_PUBLIC
void		ev_view_select_all	  (EvView         *view);
EV_PUBLIC
gboolean        ev_view_get_has_selection (EvView         *view);
EV_PUBLIC
char *   ev_view_get_selected_text (EvView  *view);

/* Page size */
EV_PUBLIC
gboolean	ev_view_can_zoom_in       (EvView         *view);
EV_PUBLIC
void		ev_view_zoom_in		  (EvView         *view);
EV_PUBLIC
gboolean        ev_view_can_zoom_out      (EvView         *view);
EV_PUBLIC
void		ev_view_zoom_out	  (EvView         *view);

/* Find */
EV_PUBLIC
void            ev_view_find_started              (EvView         *view,
						   EvJobFind      *job);
EV_PUBLIC
void            ev_view_find_restart              (EvView         *view,
                                                   gint            page);
EV_PUBLIC
void            ev_view_find_next                 (EvView         *view);
EV_PUBLIC
void            ev_view_find_previous             (EvView         *view);
EV_PUBLIC
void            ev_view_find_set_result           (EvView         *view,
						   gint            page,
						   gint            result);
EV_PUBLIC
void            ev_view_find_search_changed       (EvView         *view);
EV_PUBLIC
void     	ev_view_find_set_highlight_search (EvView         *view,
						   gboolean        value);
EV_DEPRECATED_FOR(ev_view_find_started)
EV_PUBLIC
void            ev_view_find_changed              (EvView         *view,
						   GList         **results,
						   gint            page);
EV_PUBLIC
void            ev_view_find_cancel               (EvView         *view);

/* Synctex */
EV_PUBLIC
void            ev_view_highlight_forward_search (EvView       *view,
						  EvSourceLink *link);

/* Cursor */
EV_PUBLIC
void           ev_view_hide_cursor        (EvView         *view);
EV_PUBLIC
void           ev_view_show_cursor        (EvView         *view);

/* Navigation */
EV_DEPRECATED_FOR(g_signal_emit_by_name)
EV_PUBLIC
void	       ev_view_scroll             (EvView         *view,
	                                   GtkScrollType   scroll,
					   gboolean        horizontal);
EV_PUBLIC
void	       ev_view_handle_link        (EvView         *view,
					   EvLink         *link);
EV_PUBLIC
gboolean       ev_view_next_page	  (EvView         *view);
EV_PUBLIC
gboolean       ev_view_previous_page	  (EvView         *view);

EV_PUBLIC
void	       ev_view_autoscroll_start   (EvView *view);
EV_PUBLIC
void           ev_view_autoscroll_stop    (EvView *view);

EV_PUBLIC
gboolean       ev_view_get_page_extents   (EvView       *view,
                                           gint          page,
                                           GdkRectangle *page_area,
                                           GtkBorder    *border);
EV_PUBLIC
gboolean       ev_view_get_page_extents_for_border (EvView       *view,
                                                    gint          page,
                                                    GtkBorder    *border,
                                                    GdkRectangle *page_area);
/* Annotations */
EV_PUBLIC
void           ev_view_focus_annotation      (EvView          *view,
					      EvMapping       *annot_mapping);
EV_PUBLIC
void           ev_view_begin_add_annotation  (EvView          *view,
					      EvAnnotationType annot_type);
EV_PUBLIC
void           ev_view_cancel_add_annotation (EvView          *view);
EV_PUBLIC
void           ev_view_remove_annotation     (EvView          *view,
					      EvAnnotation    *annot);
EV_PUBLIC
gboolean       ev_view_add_text_markup_annotation_for_selected_text (EvView  *view);
EV_PUBLIC
void           ev_view_set_enable_spellchecking (EvView *view,
                                                 gboolean spellcheck);
EV_PUBLIC
gboolean       ev_view_get_enable_spellchecking (EvView *view);

/* Caret navigation */
EV_PUBLIC
gboolean       ev_view_supports_caret_navigation    (EvView  *view);
EV_PUBLIC
gboolean       ev_view_is_caret_navigation_enabled  (EvView  *view);
EV_PUBLIC
void           ev_view_set_caret_navigation_enabled (EvView  *view,
                                                     gboolean enabled);
EV_PUBLIC
void           ev_view_set_caret_cursor_position    (EvView  *view,
                                                     guint    page,
                                                     guint    offset);
EV_PUBLIC
gboolean       ev_view_current_event_is_type        (EvView *view,
						     GdkEventType type);
G_END_DECLS