[evince/wip/highlight: 142/145] libdocument: Add DocumentAnnotationsRenderAnnotation



commit d16e6b04d06f325d6d3d71ef426d01247f5ddf3c
Author: José Aliste <jaliste src gnome org>
Date:   Sat Sep 6 10:40:07 2014 -0400

    libdocument: Add DocumentAnnotationsRenderAnnotation

 libdocument/ev-document-annotations.c |   13 +++++++++++++
 libdocument/ev-document-annotations.h |    7 +++++++
 2 files changed, 20 insertions(+), 0 deletions(-)
---
diff --git a/libdocument/ev-document-annotations.c b/libdocument/ev-document-annotations.c
index 10891af..0e45930 100644
--- a/libdocument/ev-document-annotations.c
+++ b/libdocument/ev-document-annotations.c
@@ -56,6 +56,19 @@ ev_document_annotations_save_annotation (EvDocumentAnnotations *document_annots,
        iface->save_annotation (document_annots, annot, rect, mask);
 }
 
+gboolean
+ev_document_annotations_render_annotation (EvDocumentAnnotations *document_annots,
+                                          EvAnnotation          *annot,
+                                          cairo_t               *cr)
+{
+       EvDocumentAnnotationsInterface *iface = EV_DOCUMENT_ANNOTATIONS_GET_IFACE (document_annots);
+
+       if (iface->render_annotation)
+               return iface->render_annotation (document_annots, annot, cr);
+
+       return FALSE;
+}
+
 void
 ev_document_annotations_add_annotation (EvDocumentAnnotations *document_annots,
                                        EvAnnotation          *annot,
diff --git a/libdocument/ev-document-annotations.h b/libdocument/ev-document-annotations.h
index fe04311..03450a2 100644
--- a/libdocument/ev-document-annotations.h
+++ b/libdocument/ev-document-annotations.h
@@ -86,6 +86,9 @@ struct _EvDocumentAnnotationsInterface
                                                 EvAnnotation          *annot,
                                                 EvRectangle           *rect,
                                                 EvAnnotationsSaveMask  mask);
+       gboolean       (* render_annotation)    (EvDocumentAnnotations *document_annots,
+                                                EvAnnotation          *annot,
+                                                cairo_t               *cr);
        void           (* remove_annotation)    (EvDocumentAnnotations *document_annots,
                                                 EvAnnotation          *annot);
        gboolean       (* is_xy_in_annotation)  (EvDocumentAnnotations *document_annots,
@@ -101,6 +104,10 @@ gboolean       ev_document_annotations_document_is_modified (EvDocumentAnnotatio
 void           ev_document_annotations_add_annotation       (EvDocumentAnnotations *document_annots,
                                                             EvAnnotation          *annot,
                                                             EvRectangle           *rect);
+gboolean       ev_document_annotations_render_annotation    (EvDocumentAnnotations *document_annots,
+                                                             EvAnnotation          *annot,
+                                                             cairo_t               *cr);
+
 void           ev_document_annotations_remove_annotation    (EvDocumentAnnotations *document_annots,
                                                              EvAnnotation          *annot);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]