[librsvg] New function rsvg_node_draw() just to call the vmethod



commit 190cd386c5572f93abede09500b763e59b530b4a
Author: Federico Mena Quintero <federico gnome org>
Date:   Tue Jan 24 21:27:49 2017 -0600

    New function rsvg_node_draw() just to call the vmethod

 rsvg-base.c      |    6 ++++++
 rsvg-private.h   |    3 +++
 rsvg-structure.c |    2 +-
 3 files changed, 10 insertions(+), 1 deletions(-)
---
diff --git a/rsvg-base.c b/rsvg-base.c
index f47f984..a35ab46 100644
--- a/rsvg-base.c
+++ b/rsvg-base.c
@@ -381,6 +381,12 @@ rsvg_node_set_atts (RsvgNode *node, RsvgHandle *handle, RsvgPropertyBag *atts)
     node->vtable->set_atts (node, handle, atts);
 }
 
+void
+rsvg_node_draw (RsvgNode *node, RsvgDrawingCtx *draw, int dominate)
+{
+    node->vtable->draw (node, draw, dominate);
+}
+
 static void
 node_set_atts (RsvgNode * node, RsvgHandle * ctx, const NodeCreator *creator, RsvgPropertyBag * atts)
 {
diff --git a/rsvg-private.h b/rsvg-private.h
index dbff0c9..26593c1 100644
--- a/rsvg-private.h
+++ b/rsvg-private.h
@@ -359,6 +359,9 @@ RsvgNode *rsvg_node_get_parent (RsvgNode *node);
 G_GNUC_INTERNAL
 void rsvg_node_set_atts (RsvgNode *node, RsvgHandle *handle, RsvgPropertyBag *atts);
 
+G_GNUC_INTERNAL
+void rsvg_node_draw (RsvgNode *node, RsvgDrawingCtx *draw, int dominate);
+
 /* Used to iterate among a node's children with rsvg_node_foreach_child().
  * If this caller-supplied function returns FALSE, iteration will stop.
  * Otherwise, iteration will continue to the next child node.
diff --git a/rsvg-structure.c b/rsvg-structure.c
index be13de7..6c6bb7e 100644
--- a/rsvg-structure.c
+++ b/rsvg-structure.c
@@ -53,7 +53,7 @@ rsvg_node_draw_from_stack (RsvgNode * self, RsvgDrawingCtx * ctx, int dominate)
     if (state->visible) {
         rsvg_state_push (ctx);
 
-        self->vtable->draw (self, ctx, dominate);
+        rsvg_node_draw (self, ctx, dominate);
 
         rsvg_state_pop (ctx);
     }


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