[evince/wip/annotation_support: 5/7] libdocument: Add remove_annotation to DocumentAnnotations.
- From: Jose Aliste <jaliste src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evince/wip/annotation_support: 5/7] libdocument: Add remove_annotation to DocumentAnnotations.
- Date: Wed, 27 Jun 2012 13:00:56 +0000 (UTC)
commit aeebcb1499906d5c4443edd1785e5154596f97b8
Author: Josà Aliste <jaliste gnome org>
Date: Wed Jun 27 08:51:19 2012 -0400
libdocument: Add remove_annotation to DocumentAnnotations.
libdocument/ev-document-annotations.c | 20 ++++++++++++++++++++
libdocument/ev-document-annotations.h | 13 +++++++++++--
2 files changed, 31 insertions(+), 2 deletions(-)
---
diff --git a/libdocument/ev-document-annotations.c b/libdocument/ev-document-annotations.c
index 620d117..d822004 100644
--- a/libdocument/ev-document-annotations.c
+++ b/libdocument/ev-document-annotations.c
@@ -73,3 +73,23 @@ ev_document_annotations_can_add_annotation (EvDocumentAnnotations *document_anno
return iface->add_annotation != NULL;
}
+
+void
+ev_document_annotations_remove_annotation (EvDocumentAnnotations *document_annots,
+ EvAnnotation *annot)
+{
+ EvDocumentAnnotationsInterface *iface = EV_DOCUMENT_ANNOTATIONS_GET_IFACE (document_annots);
+
+ if (iface->remove_annotation)
+ iface->remove_annotation (document_annots, annot);
+}
+
+gboolean
+ev_document_annotations_can_remove_annotation (EvDocumentAnnotations *document_annots)
+{
+ EvDocumentAnnotationsInterface *iface = EV_DOCUMENT_ANNOTATIONS_GET_IFACE (document_annots);
+
+ return (iface->remove_annotation != NULL);
+}
+
+
diff --git a/libdocument/ev-document-annotations.h b/libdocument/ev-document-annotations.h
index 9c191ca..b6e3545 100644
--- a/libdocument/ev-document-annotations.h
+++ b/libdocument/ev-document-annotations.h
@@ -58,8 +58,11 @@ typedef enum {
/* Attachment Annotations */
EV_ANNOTATIONS_SAVE_ATTACHMENT = 1 << 8,
+ /* Text Markup Annotations */
+ EV_ANNOTATIONS_SAVE_TEXT_MARKUP_TYPE = 1 << 9,
+
/* Save all */
- EV_ANNOTATIONS_SAVE_ALL = (1 << 9) - 1
+ EV_ANNOTATIONS_SAVE_ALL = (1 << 10) - 1
} EvAnnotationsSaveMask;
typedef struct _EvDocumentAnnotations EvDocumentAnnotations;
@@ -79,6 +82,8 @@ struct _EvDocumentAnnotationsInterface
void (* save_annotation) (EvDocumentAnnotations *document_annots,
EvAnnotation *annot,
EvAnnotationsSaveMask mask);
+ void (* remove_annotation) (EvDocumentAnnotations *document_annots,
+ EvAnnotation *annot);
};
GType ev_document_annotations_get_type (void) G_GNUC_CONST;
@@ -88,10 +93,14 @@ gboolean ev_document_annotations_document_is_modified (EvDocumentAnnotatio
void ev_document_annotations_add_annotation (EvDocumentAnnotations *document_annots,
EvAnnotation *annot,
EvRectangle *rect);
+void ev_document_annotations_remove_annotation (EvDocumentAnnotations *document_annots,
+ EvAnnotation *annot);
+
void ev_document_annotations_save_annotation (EvDocumentAnnotations *document_annots,
EvAnnotation *annot,
EvAnnotationsSaveMask mask);
-gboolean ev_document_annotations_can_add_annotation (EvDocumentAnnotations *document_annots);
+gboolean ev_document_annotations_can_add_annotation (EvDocumentAnnotations *document_annots);
+gboolean ev_document_annotations_can_remove_annotation (EvDocumentAnnotations *document_annots);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]