summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/evas_vg_private.h
diff options
context:
space:
mode:
authorCedric BAIL <cedric@osg.samsung.com>2015-06-19 11:26:46 +0200
committerCedric BAIL <cedric@osg.samsung.com>2015-08-21 16:40:31 +0200
commit05fdfcc76a7eb57d00ae52d3ab2b9a1eb3ee0db9 (patch)
tree1e56e909ecaaf0d69b422f5173ea514b56dd84dc /src/lib/evas/canvas/evas_vg_private.h
parent126edbb48c4f065fe68cb4d60760102498d93ad2 (diff)
evas: add logic to duplicate recursively an Efl_VG_Node tree.
Diffstat (limited to 'src/lib/evas/canvas/evas_vg_private.h')
-rw-r--r--src/lib/evas/canvas/evas_vg_private.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/evas_vg_private.h b/src/lib/evas/canvas/evas_vg_private.h
index 8ee62b669e..102de5b078 100644
--- a/src/lib/evas/canvas/evas_vg_private.h
+++ b/src/lib/evas/canvas/evas_vg_private.h
@@ -73,6 +73,24 @@ _efl_vg_base_changed(Eo *obj)
73 eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL)); 73 eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
74} 74}
75 75
76static inline void *
77_efl_vg_realloc(void *from, unsigned int sz)
78{
79 void *result;
80
81 result = sz > 0 ? realloc(from, sz) : NULL;
82 if (!result) free(from);
83
84 return result;
85}
86
87static inline void
88_efl_vg_clean_object(Eo **obj)
89{
90 if (*obj) eo_unref(*obj);
91 *obj = NULL;
92}
93
76#define EFL_VG_COMPUTE_MATRIX(Current, Parent, Nd) \ 94#define EFL_VG_COMPUTE_MATRIX(Current, Parent, Nd) \
77 Eina_Matrix3 *Current = Nd->m; \ 95 Eina_Matrix3 *Current = Nd->m; \
78 Eina_Matrix3 _matrix_tmp; \ 96 Eina_Matrix3 _matrix_tmp; \