From 0f5c79f2e03bd71b91d2fbf3aa48f4ffbf1dd1b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Aliste?= Date: Wed, 27 Jun 2012 08:51:19 -0400 Subject: libdocument: Add remove_annotation to DocumentAnnotations. https://bugzilla.gnome.org/show_bug.cgi?id=649044 origin commit: https://git.gnome.org/browse/evince/commit/?id=d0ed4e6 --- libdocument/ev-document-annotations.c | 18 ++++++++++++++++++ libdocument/ev-document-annotations.h | 8 +++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/libdocument/ev-document-annotations.c b/libdocument/ev-document-annotations.c index 05084906..a732f3fc 100644 --- a/libdocument/ev-document-annotations.c +++ b/libdocument/ev-document-annotations.c @@ -73,3 +73,21 @@ 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 b0046609..5a28e510 100644 --- a/libdocument/ev-document-annotations.h +++ b/libdocument/ev-document-annotations.h @@ -79,6 +79,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 +90,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 -- cgit v1.2.1