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-annotation.h
Go to the documentation of this file.
1 /* ev-annotation.h
2  * this file is part of evince, a gnome document viewer
3  *
4  * Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
5  * Copyright (C) 2007 IƱigo Martinez <inigomartinez@gmail.com>
6  *
7  * Evince is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * Evince is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20  */
21 
22 #if !defined (__EV_EVINCE_DOCUMENT_H_INSIDE__) && !defined (EVINCE_COMPILATION)
23 #error "Only <evince-document.h> can be included directly."
24 #endif
25 
26 #ifndef EV_ANNOTATION_H
27 #define EV_ANNOTATION_H
28 
29 #include <glib-object.h>
30 
31 #include "ev-document.h"
32 #include "ev-attachment.h"
33 #include "ev-macros.h"
34 
35 G_BEGIN_DECLS
36 
37 /* EvAnnotation */
38 #define EV_TYPE_ANNOTATION (ev_annotation_get_type())
39 #define EV_ANNOTATION(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_ANNOTATION, EvAnnotation))
40 #define EV_ANNOTATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_ANNOTATION, EvAnnotationClass))
41 #define EV_IS_ANNOTATION(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_ANNOTATION))
42 #define EV_IS_ANNOTATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_ANNOTATION))
43 #define EV_ANNOTATION_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_ANNOTATION, EvAnnotationClass))
44 
45 /* EvAnnotationMarkup */
46 #define EV_TYPE_ANNOTATION_MARKUP (ev_annotation_markup_get_type ())
47 #define EV_ANNOTATION_MARKUP(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkup))
48 #define EV_ANNOTATION_MARKUP_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkupInterface))
49 #define EV_IS_ANNOTATION_MARKUP(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EV_TYPE_ANNOTATION_MARKUP))
50 #define EV_IS_ANNOTATION_MARKUP_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_ANNOTATION_MARKUP))
51 #define EV_ANNOTATION_MARKUP_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkupInterface))
52 
53 /* EvAnnotationText */
54 #define EV_TYPE_ANNOTATION_TEXT (ev_annotation_text_get_type())
55 #define EV_ANNOTATION_TEXT(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_ANNOTATION_TEXT, EvAnnotationText))
56 #define EV_ANNOTATION_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_ANNOTATION_TEXT, EvAnnotationTextClass))
57 #define EV_IS_ANNOTATION_TEXT(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_ANNOTATION_TEXT))
58 #define EV_IS_ANNOTATION_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_ANNOTATION_TEXT))
59 #define EV_ANNOTATION_TEXT_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_ANNOTATION_TEXT, EvAnnotationTextClass))
60 
61 /* EvAnnotationAttachment */
62 #define EV_TYPE_ANNOTATION_ATTACHMENT (ev_annotation_attachment_get_type())
63 #define EV_ANNOTATION_ATTACHMENT(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_ANNOTATION_ATTACHMENT, EvAnnotationAttachment))
64 #define EV_ANNOTATION_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_ANNOTATION_ATTACHMENT, EvAnnotationAttachmentClass))
65 #define EV_IS_ANNOTATION_ATTACHMENT(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_ANNOTATION_ATTACHMENT))
66 #define EV_IS_ANNOTATION_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_ANNOTATION_ATTACHMENT))
67 #define EV_ANNOTATION_ATTACHMENT_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_ANNOTATION_ATTACHMENT, EvAnnotationAttachmentClass))
68 
69 /* EvAnnotationTextMarkup */
70 #define EV_TYPE_ANNOTATION_TEXT_MARKUP (ev_annotation_text_markup_get_type ())
71 #define EV_ANNOTATION_TEXT_MARKUP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), EV_TYPE_ANNOTATION_TEXT_MARKUP, EvAnnotationTextMarkup))
72 #define EV_ANNOTATION_TEXT_MARKUP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EV_TYPE_ANNOTATION_TEXT_MARKUP, EvAnnotationTextMarkupClass))
73 #define EV_IS_ANNOTATION_TEXT_MARKUP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), EV_TYPE_ANNOTATION_TEXT_MARKUP))
74 #define EV_IS_ANNOTATION_TEXT_MARKUP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EV_TYPE_ANNOTATION_TEXT_MARKUP))
75 #define EV_ANNOTATION_TEXT_MARKUP_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), EV_TYPE_ANNOTATION_TEXT_MARKUP, EvAnnotationTextMarkupClass))
76 
77 typedef struct _EvAnnotation EvAnnotation;
79 
80 typedef struct _EvAnnotationMarkup EvAnnotationMarkup;
82 
85 
88 
91 
92 typedef enum {
98 
99 typedef enum {
111 
112 typedef enum {
118 
119 /* EvAnnotation */
120 GType ev_annotation_get_type (void) G_GNUC_CONST;
124 gboolean ev_annotation_equal (EvAnnotation *annot,
125  EvAnnotation *other);
126 const gchar *ev_annotation_get_contents (EvAnnotation *annot);
128  const gchar *contents);
129 const gchar *ev_annotation_get_name (EvAnnotation *annot);
130 gboolean ev_annotation_set_name (EvAnnotation *annot,
131  const gchar *name);
132 const gchar *ev_annotation_get_modified (EvAnnotation *annot);
134  const gchar *modified);
136  GTime utime);
137 EV_DEPRECATED_FOR(ev_annotaion_get_rgba)
139  GdkColor *color);
140 EV_DEPRECATED_FOR(ev_annotaion_set_rgba)
141 gboolean ev_annotation_set_color (EvAnnotation *annot,
142  const GdkColor *color);
144  GdkRGBA *rgba);
145 gboolean ev_annotation_set_rgba (EvAnnotation *annot,
146  const GdkRGBA *rgba);
148  EvRectangle *area);
149 gboolean ev_annotation_set_area (EvAnnotation *annot,
150  const EvRectangle *area);
151 
152 /* EvAnnotationMarkup */
153 GType ev_annotation_markup_get_type (void) G_GNUC_CONST;
156  const gchar *label);
159  gdouble opacity);
163  gboolean has_popup);
165  EvRectangle *ev_rect);
167  const EvRectangle *ev_rect);
170  gboolean is_open);
171 
172 /* EvAnnotationText */
173 GType ev_annotation_text_get_type (void) G_GNUC_CONST;
177  EvAnnotationTextIcon icon);
180  gboolean is_open);
181 
182 /* EvAnnotationAttachment */
183 GType ev_annotation_attachment_get_type (void) G_GNUC_CONST;
185  EvAttachment *attachment);
188  EvAttachment *attachment);
189 
190 /* EvAnnotationTextMarkup */
191 GType ev_annotation_text_markup_get_type (void) G_GNUC_CONST;
198  EvAnnotationTextMarkupType markup_type);
199 
200 G_END_DECLS
201 
202 #endif /* EV_ANNOTATION_H */