From eb2bd9a8d8ff79bb30a1888969bb5960e8fed066 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Fri, 3 Apr 2015 16:30:59 +0200 Subject: [PATCH] evas: move Evas.VG_* to Efl.VG.* This also introduce legacy API for all of them. --- src/Makefile_Evas.am | 16 +- src/Makefile_Evas_Cxx.am | 16 +- src/lib/evas/Evas_Common.h | 5 + src/lib/evas/Evas_Eo.h | 19 +- src/lib/evas/Evas_Legacy.h | 78 +++- .../{evas_vg_node.eo => efl_vg_base.eo} | 8 +- src/lib/evas/canvas/efl_vg_container.eo | 9 + ...evas_vg_gradient.eo => efl_vg_gradient.eo} | 5 +- ...nt_linear.eo => efl_vg_gradient_linear.eo} | 5 +- ...nt_radial.eo => efl_vg_gradient_radial.eo} | 5 +- .../{evas_vg_image.eo => efl_vg_image.eo} | 5 +- src/lib/evas/canvas/efl_vg_root_node.eo | 8 + .../{evas_vg_shape.eo => efl_vg_shape.eo} | 13 +- src/lib/evas/canvas/evas_object_vg.c | 22 +- src/lib/evas/canvas/evas_vg.eo | 2 +- src/lib/evas/canvas/evas_vg_container.c | 42 +- src/lib/evas/canvas/evas_vg_container.eo | 9 - src/lib/evas/canvas/evas_vg_gradient.c | 58 ++- src/lib/evas/canvas/evas_vg_gradient_linear.c | 90 ++-- src/lib/evas/canvas/evas_vg_gradient_radial.c | 110 +++-- src/lib/evas/canvas/evas_vg_image.c | 34 +- src/lib/evas/canvas/evas_vg_loader_svg.c | 4 +- src/lib/evas/canvas/evas_vg_node.c | 278 +++++++----- src/lib/evas/canvas/evas_vg_private.h | 28 +- src/lib/evas/canvas/evas_vg_root_node.c | 40 +- src/lib/evas/canvas/evas_vg_root_node.eo | 8 - src/lib/evas/canvas/evas_vg_shape.c | 412 +++++++++++++----- 27 files changed, 878 insertions(+), 451 deletions(-) rename src/lib/evas/canvas/{evas_vg_node.eo => efl_vg_base.eo} (94%) create mode 100644 src/lib/evas/canvas/efl_vg_container.eo rename src/lib/evas/canvas/{evas_vg_gradient.eo => efl_vg_gradient.eo} (60%) rename src/lib/evas/canvas/{evas_vg_gradient_linear.eo => efl_vg_gradient_linear.eo} (63%) rename src/lib/evas/canvas/{evas_vg_gradient_radial.eo => efl_vg_gradient_radial.eo} (70%) rename src/lib/evas/canvas/{evas_vg_image.eo => efl_vg_image.eo} (81%) create mode 100644 src/lib/evas/canvas/efl_vg_root_node.eo rename src/lib/evas/canvas/{evas_vg_shape.eo => efl_vg_shape.eo} (75%) delete mode 100644 src/lib/evas/canvas/evas_vg_container.eo delete mode 100644 src/lib/evas/canvas/evas_vg_root_node.eo diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am index e7d6e2448a..88aaf4eecb 100644 --- a/src/Makefile_Evas.am +++ b/src/Makefile_Evas.am @@ -33,14 +33,14 @@ evas_eolian_files = \ lib/evas/canvas/evas_3d_scene.eo\ lib/evas/canvas/evas_3d_object.eo \ lib/evas/canvas/evas_vg.eo \ - lib/evas/canvas/evas_vg_node.eo \ - lib/evas/canvas/evas_vg_container.eo \ - lib/evas/canvas/evas_vg_shape.eo \ - lib/evas/canvas/evas_vg_root_node.eo \ - lib/evas/canvas/evas_vg_gradient.eo \ - lib/evas/canvas/evas_vg_gradient_radial.eo \ - lib/evas/canvas/evas_vg_gradient_linear.eo \ - lib/evas/canvas/evas_vg_image.eo + lib/evas/canvas/efl_vg_base.eo \ + lib/evas/canvas/efl_vg_container.eo \ + lib/evas/canvas/efl_vg_shape.eo \ + lib/evas/canvas/efl_vg_root_node.eo \ + lib/evas/canvas/efl_vg_gradient.eo \ + lib/evas/canvas/efl_vg_gradient_radial.eo \ + lib/evas/canvas/efl_vg_gradient_linear.eo \ + lib/evas/canvas/efl_vg_image.eo evas_eolian_c = $(evas_eolian_files:%.eo=%.eo.c) evas_eolian_h = $(evas_eolian_files:%.eo=%.eo.h) \ diff --git a/src/Makefile_Evas_Cxx.am b/src/Makefile_Evas_Cxx.am index 1a9683d407..26848c4205 100644 --- a/src/Makefile_Evas_Cxx.am +++ b/src/Makefile_Evas_Cxx.am @@ -35,14 +35,14 @@ lib/evas/canvas/evas_3d_object.eo.hh \ lib/evas/canvas/evas_3d_scene.eo.hh \ lib/evas/canvas/evas_3d_texture.eo.hh \ lib/evas/canvas/evas_vg.eo.hh \ -lib/evas/canvas/evas_vg_node.eo.hh \ -lib/evas/canvas/evas_vg_container.eo.hh \ -lib/evas/canvas/evas_vg_shape.eo.hh \ -lib/evas/canvas/evas_vg_root_node.eo.hh \ -lib/evas/canvas/evas_vg_gradient.eo.hh \ -lib/evas/canvas/evas_vg_gradient_radial.eo.hh \ -lib/evas/canvas/evas_vg_gradient_linear.eo.hh \ -lib/evas/canvas/evas_vg_image.eo.hh +lib/evas/canvas/efl_vg_base.eo.hh \ +lib/evas/canvas/efl_vg_container.eo.hh \ +lib/evas/canvas/efl_vg_shape.eo.hh \ +lib/evas/canvas/efl_vg_root_node.eo.hh \ +lib/evas/canvas/efl_vg_gradient.eo.hh \ +lib/evas/canvas/efl_vg_gradient_radial.eo.hh \ +lib/evas/canvas/efl_vg_gradient_linear.eo.hh \ +lib/evas/canvas/efl_vg_image.eo.hh lib/evas/Evas.hh: $(generated_evas_canvas_cxx_bindings) @echo @ECHO_E@ "#ifndef EFL_CXX_EVAS_HH\n#define EFL_CXX_EVAS_HH\n" > $(top_builddir)/src/lib/evas/Evas.hh diff --git a/src/lib/evas/Evas_Common.h b/src/lib/evas/Evas_Common.h index 3a9633f617..5055561515 100644 --- a/src/lib/evas/Evas_Common.h +++ b/src/lib/evas/Evas_Common.h @@ -312,6 +312,11 @@ typedef Eo Evas_Object; /* This define is used in H files generated by Eolian */ #define _EVAS_OBJECT_EO_CLASS_TYPE +/** + * Type of abstract VG node + */ +typedef Eo Efl_VG; + typedef void Evas_Performance; /**< An Evas Performance handle */ typedef struct _Evas_Modifier Evas_Modifier; /**< An opaque type containing information on which modifier keys are registered in an Evas canvas */ typedef struct _Evas_Lock Evas_Lock; /**< An opaque type containing information on which lock keys are registered in an Evas canvas */ diff --git a/src/lib/evas/Evas_Eo.h b/src/lib/evas/Evas_Eo.h index 0209677fd3..49e1da2939 100644 --- a/src/lib/evas/Evas_Eo.h +++ b/src/lib/evas/Evas_Eo.h @@ -845,11 +845,6 @@ typedef enum _Evas_3D_Material_Attrib #include "canvas/evas_3d_object.eo.h" -/** - * Type of abstract VG node - */ -typedef Eo Evas_VG_Node; - /** * @ingroup Evas_Object_VG * @@ -860,10 +855,10 @@ typedef Eo Evas_VG_Node; * @} */ -#include "canvas/evas_vg_node.eo.h" -#include "canvas/evas_vg_container.eo.h" -#include "canvas/evas_vg_shape.eo.h" -#include "canvas/evas_vg_gradient.eo.h" -#include "canvas/evas_vg_gradient_linear.eo.h" -#include "canvas/evas_vg_gradient_radial.eo.h" -#include "canvas/evas_vg_image.eo.h" +#include "canvas/efl_vg_base.eo.h" +#include "canvas/efl_vg_container.eo.h" +#include "canvas/efl_vg_shape.eo.h" +#include "canvas/efl_vg_gradient.eo.h" +#include "canvas/efl_vg_gradient_linear.eo.h" +#include "canvas/efl_vg_gradient_radial.eo.h" +#include "canvas/efl_vg_image.eo.h" diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h index 8f53493961..01d6706e2b 100644 --- a/src/lib/evas/Evas_Legacy.h +++ b/src/lib/evas/Evas_Legacy.h @@ -1710,13 +1710,79 @@ EAPI Evas_Object *evas_object_rectangle_add(Evas *e) EINA_WARN_UNUSED_RESULT EIN */ EAPI Evas_Object *evas_object_vg_add(Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC; -#include "canvas/evas_vg_node.eo.legacy.h" #include "canvas/evas_vg.eo.legacy.h" -#include "canvas/evas_vg_shape.eo.legacy.h" -#include "canvas/evas_vg_gradient.eo.legacy.h" -#include "canvas/evas_vg_gradient_linear.eo.legacy.h" -#include "canvas/evas_vg_gradient_radial.eo.legacy.h" -#include "canvas/evas_vg_image.eo.legacy.h" + +EAPI Eina_Bool evas_vg_node_visible_get(Eo *obj); +EAPI void evas_vg_node_visible_set(Eo *obj, Eina_Bool v); +EAPI void evas_vg_node_color_get(Eo *obj, int *r, int *g, int *b, int *a); +EAPI void evas_vg_node_color_set(Eo *obj, int r, int g, int b, int a); +EAPI void evas_vg_node_geometry_get(Eo *obj, int *x, int *y, int *w, int *h); +EAPI void evas_vg_node_geometry_set(Eo *obj, int x, int y, int w, int h); +EAPI void evas_vg_node_stack_below(Eo *obj, Eo *below); +EAPI void evas_vg_node_stack_above(Eo *obj, Eo *above); +EAPI void evas_vg_node_raise(Eo *obj); +EAPI void evas_vg_node_lower(Eo *obj); + +#include "canvas/efl_vg_base.eo.legacy.h" + +EAPI double evas_vg_shape_stroke_scale_get(Eo *obj); +EAPI void evas_vg_shape_stroke_scale_set(Eo *obj, double s); +EAPI void evas_vg_shape_stroke_color_get(Eo *obj, int *r, int *g, int *b, int *a); +EAPI void evas_vg_shape_stroke_color_set(Eo *obj, int r, int g, int b, int a); +EAPI double evas_vg_shape_stroke_width_get(Eo *obj); +EAPI void evas_vg_shape_stroke_width_set(Eo *obj, double w); +EAPI double evas_vg_shape_stroke_location_get(Eo *obj); +EAPI void evas_vg_shape_stroke_location_set(Eo *obj, double centered); +EAPI void evas_vg_shape_stroke_dash_get(Eo *obj, const Efl_Gfx_Dash **dash, unsigned int *length); +EAPI void evas_vg_shape_stroke_dash_set(Eo *obj, const Efl_Gfx_Dash *dash, unsigned int length); +EAPI Efl_Gfx_Cap evas_vg_shape_stroke_cap_get(Eo *obj); +EAPI void evas_vg_shape_stroke_cap_set(Eo *obj, Efl_Gfx_Cap c); +EAPI Efl_Gfx_Join evas_vg_shape_stroke_join_get(Eo *obj); +EAPI void evas_vg_shape_stroke_join_set(Eo *obj, Efl_Gfx_Join j); +EAPI void evas_vg_shape_shape_path_set(Eo *obj, const Efl_Gfx_Path_Command *op, const double *points); +EAPI void evas_vg_shape_shape_path_get(Eo *obj, const Efl_Gfx_Path_Command **op, const double **points); +EAPI void evas_vg_shape_shape_path_length_get(Eo *obj, unsigned int *commands, unsigned int *points); +EAPI void evas_vg_shape_shape_current_get(Eo *obj, double *x, double *y); +EAPI void evas_vg_shape_shape_current_ctrl_get(Eo *obj, double *x, double *y); +EAPI void evas_vg_shape_shape_dup(Eo *obj, Eo *dup_from); +EAPI void evas_vg_shape_shape_reset(Eo *obj); +EAPI void evas_vg_shape_shape_append_move_to(Eo *obj, double x, double y); +EAPI void evas_vg_shape_shape_append_line_to(Eo *obj, double x, double y); +EAPI void evas_vg_shape_shape_append_quadratic_to(Eo *obj, double x, double y, double ctrl_x, double ctrl_y); +EAPI void evas_vg_shape_shape_append_squadratic_to(Eo *obj, double x, double y); +EAPI void evas_vg_shape_shape_append_cubic_to(Eo *obj, double x, double y, double ctrl_x0, double ctrl_y0, double ctrl_x1, double ctrl_y1); +EAPI void evas_vg_shape_shape_append_scubic_to(Eo *obj, double x, double y, double ctrl_x, double ctrl_y); +EAPI void evas_vg_shape_shape_append_arc_to(Eo *obj, double x, double y, double rx, double ry, double angle, Eina_Bool large_arc, Eina_Bool sweep); +EAPI void evas_vg_shape_shape_append_close(Eo *obj); +EAPI void evas_vg_shape_shape_append_circle(Eo *obj, double x, double y, double radius); +EAPI void evas_vg_shape_shape_append_svg_path(Eo *obj, const char *svg_path_data); +EAPI Eina_Bool evas_vg_shape_shape_interpolate(Eo *obj, const Eo *from, const Eo *to, double pos_map); +EAPI Eina_Bool evas_vg_shape_shape_equal_commands(Eo *obj, const Eo *with); + +#include "canvas/efl_vg_shape.eo.legacy.h" + +EAPI void evas_vg_gradient_stop_set(Eo *obj, const Efl_Gfx_Gradient_Stop *colors, unsigned int length); +EAPI void evas_vg_gradient_stop_get(Eo *obj, const Efl_Gfx_Gradient_Stop **colors, unsigned int *length); +EAPI void evas_vg_gradient_spread_set(Eo *obj, Efl_Gfx_Gradient_Spread s); +EAPI Efl_Gfx_Gradient_Spread evas_vg_gradient_spread_get(Eo *obj); + +#include "canvas/efl_vg_gradient.eo.legacy.h" + +EAPI void evas_vg_gradient_linear_start_set(Eo *obj, double x, double y); +EAPI void evas_vg_gradient_linear_start_get(Eo *obj, double *x, double *y); +EAPI void evas_vg_gradient_linear_end_set(Eo *obj, double x, double y); +EAPI void evas_vg_gradient_linear_end_get(Eo *obj, double *x, double *y); + +#include "canvas/efl_vg_gradient_linear.eo.legacy.h" + +EAPI void evas_vg_gradient_radial_center_set(Eo *obj, double x, double y); +EAPI void evas_vg_gradient_radial_center_get(Eo *obj, double *x, double *y); +EAPI void evas_vg_gradient_radial_radius_set(Eo *obj, double r); +EAPI double evas_vg_gradient_radial_radius_get(Eo *obj); +EAPI void evas_vg_gradient_radial_focal_set(Eo *obj, double x, double y); +EAPI void evas_vg_gradient_radial_focal_get(Eo *obj, double *x, double *y); + +#include "canvas/efl_vg_gradient_radial.eo.legacy.h" /** * @} diff --git a/src/lib/evas/canvas/evas_vg_node.eo b/src/lib/evas/canvas/efl_vg_base.eo similarity index 94% rename from src/lib/evas/canvas/evas_vg_node.eo rename to src/lib/evas/canvas/efl_vg_base.eo index 83c7014ae1..2b8d9e7e93 100644 --- a/src/lib/evas/canvas/evas_vg_node.eo +++ b/src/lib/evas/canvas/efl_vg_base.eo @@ -1,7 +1,7 @@ -abstract Evas.VG_Node (Eo.Base, Efl.Gfx.Base, Efl.Gfx.Stack) +abstract Efl.VG.Base (Eo.Base, Efl.Gfx.Base, Efl.Gfx.Stack) { - eo_prefix: evas_vg_node; - legacy_prefix: null; + eo_prefix: efl_vg; + legacy_prefix: evas_vg_node; properties { transformation { set { @@ -45,7 +45,7 @@ abstract Evas.VG_Node (Eo.Base, Efl.Gfx.Base, Efl.Gfx.Stack) get { } values { - Evas_VG_Node *m; + Efl_VG *m; } } /* quality { diff --git a/src/lib/evas/canvas/efl_vg_container.eo b/src/lib/evas/canvas/efl_vg_container.eo new file mode 100644 index 0000000000..4d8a0853c0 --- /dev/null +++ b/src/lib/evas/canvas/efl_vg_container.eo @@ -0,0 +1,9 @@ +class Efl.VG.Container (Efl.VG.Base) +{ + legacy_prefix: evas_vg_container; + implements { + Eo.Base.constructor; + Eo.Base.destructor; + Efl.VG.Base.bound_get; + } +} diff --git a/src/lib/evas/canvas/evas_vg_gradient.eo b/src/lib/evas/canvas/efl_vg_gradient.eo similarity index 60% rename from src/lib/evas/canvas/evas_vg_gradient.eo rename to src/lib/evas/canvas/efl_vg_gradient.eo index 29f1de242b..de78039adf 100644 --- a/src/lib/evas/canvas/evas_vg_gradient.eo +++ b/src/lib/evas/canvas/efl_vg_gradient.eo @@ -1,7 +1,6 @@ -abstract Evas.VG_Gradient (Evas.VG_Node, Efl.Gfx.Gradient.Base) +abstract Efl.VG.Gradient (Efl.VG.Base, Efl.Gfx.Gradient.Base) { - eo_prefix: evas_vg_gradient; - legacy_prefix: null; + legacy_prefix: evas_vg_gradient; implements { Efl.Gfx.Gradient.Base.stop.set; Efl.Gfx.Gradient.Base.stop.get; diff --git a/src/lib/evas/canvas/evas_vg_gradient_linear.eo b/src/lib/evas/canvas/efl_vg_gradient_linear.eo similarity index 63% rename from src/lib/evas/canvas/evas_vg_gradient_linear.eo rename to src/lib/evas/canvas/efl_vg_gradient_linear.eo index 95a773a0db..bc9c664168 100644 --- a/src/lib/evas/canvas/evas_vg_gradient_linear.eo +++ b/src/lib/evas/canvas/efl_vg_gradient_linear.eo @@ -1,7 +1,6 @@ -class Evas.VG_Gradient_Linear (Evas.VG_Gradient, Efl.Gfx.Gradient.Linear) +class Efl.VG.Gradient_Linear (Efl.VG.Gradient, Efl.Gfx.Gradient.Linear) { - eo_prefix: evas_vg_gradient_linear; - legacy_prefix: null; + legacy_prefix: evas_vg_gradient_linear; implements { Efl.Gfx.Gradient.Linear.start.set; Efl.Gfx.Gradient.Linear.start.get; diff --git a/src/lib/evas/canvas/evas_vg_gradient_radial.eo b/src/lib/evas/canvas/efl_vg_gradient_radial.eo similarity index 70% rename from src/lib/evas/canvas/evas_vg_gradient_radial.eo rename to src/lib/evas/canvas/efl_vg_gradient_radial.eo index bab5282b9e..0d60589d0a 100644 --- a/src/lib/evas/canvas/evas_vg_gradient_radial.eo +++ b/src/lib/evas/canvas/efl_vg_gradient_radial.eo @@ -1,7 +1,6 @@ -class Evas.VG_Gradient_Radial (Evas.VG_Gradient, Efl.Gfx.Gradient.Radial) +class Efl.VG.Gradient_Radial (Efl.VG.Gradient, Efl.Gfx.Gradient.Radial) { - eo_prefix: evas_vg_gradient_radial; - legacy_prefix: null; + legacy_prefix: evas_vg_gradient_radial; implements { Efl.Gfx.Gradient.Radial.center.set; Efl.Gfx.Gradient.Radial.center.get; diff --git a/src/lib/evas/canvas/evas_vg_image.eo b/src/lib/evas/canvas/efl_vg_image.eo similarity index 81% rename from src/lib/evas/canvas/evas_vg_image.eo rename to src/lib/evas/canvas/efl_vg_image.eo index ff9ab8e965..62d74510f4 100644 --- a/src/lib/evas/canvas/evas_vg_image.eo +++ b/src/lib/evas/canvas/efl_vg_image.eo @@ -1,7 +1,6 @@ -class Evas.VG_Image (Evas.VG_Node, Efl.File) +class Efl.VG.Image (Efl.VG.Base, Efl.File) { - eo_prefix: evas_vg_image; - legacy_prefix: null; + legacy_prefix: evas_vg_image; properties { position { set { diff --git a/src/lib/evas/canvas/efl_vg_root_node.eo b/src/lib/evas/canvas/efl_vg_root_node.eo new file mode 100644 index 0000000000..685bf7e134 --- /dev/null +++ b/src/lib/evas/canvas/efl_vg_root_node.eo @@ -0,0 +1,8 @@ +class Efl.VG.Root_Node (Efl.VG.Container) +{ + legacy_prefix: evas_vg_root_node; + implements { + Eo.Base.parent.set; + Eo.Base.constructor; + } +} diff --git a/src/lib/evas/canvas/evas_vg_shape.eo b/src/lib/evas/canvas/efl_vg_shape.eo similarity index 75% rename from src/lib/evas/canvas/evas_vg_shape.eo rename to src/lib/evas/canvas/efl_vg_shape.eo index 9127241438..ab6468cc90 100644 --- a/src/lib/evas/canvas/evas_vg_shape.eo +++ b/src/lib/evas/canvas/efl_vg_shape.eo @@ -1,7 +1,6 @@ -class Evas.VG_Shape (Evas.VG_Node, Efl.Gfx.Shape) +class Efl.VG.Shape (Efl.VG.Base, Efl.Gfx.Shape) { - eo_prefix: evas_vg_shape; - legacy_prefix: null; + legacy_prefix: evas_vg_shape; properties { fill { set { @@ -9,7 +8,7 @@ class Evas.VG_Shape (Evas.VG_Node, Efl.Gfx.Shape) get { } values { - Evas_VG_Node *f; + Efl_VG *f; } } stroke_fill { @@ -18,7 +17,7 @@ class Evas.VG_Shape (Evas.VG_Node, Efl.Gfx.Shape) get { } values { - Evas_VG_Node *f; + Efl_VG *f; } } stroke_marker { @@ -27,7 +26,7 @@ class Evas.VG_Shape (Evas.VG_Node, Efl.Gfx.Shape) get { } values { - Evas_VG_Node *m; + Efl_VG *m; } } } @@ -41,7 +40,7 @@ class Evas.VG_Shape (Evas.VG_Node, Efl.Gfx.Shape) Efl.Gfx.Shape.stroke_join; Efl.Gfx.Base.color_part.set; Efl.Gfx.Base.color_part.get; - Evas.VG_Node.bound_get; + Efl.VG.Base.bound_get; Eo.Base.constructor; Eo.Base.destructor; } diff --git a/src/lib/evas/canvas/evas_object_vg.c b/src/lib/evas/canvas/evas_object_vg.c index 6f41d50ad1..2336d9b6e5 100644 --- a/src/lib/evas/canvas/evas_object_vg.c +++ b/src/lib/evas/canvas/evas_object_vg.c @@ -2,7 +2,7 @@ #include "evas_private.h" #include "evas_vg_private.h" -#include "evas_vg_root_node.eo.h" +#include "efl_vg_root_node.eo.h" #define MY_CLASS EVAS_VG_CLASS @@ -16,8 +16,8 @@ typedef struct _Evas_VG_Data Evas_VG_Data; struct _Evas_VG_Data { - void *engine_data; - Evas_VG_Node *root; + void *engine_data; + Efl_VG *root; /* Opening an SVG file (could actually be inside an eet section */ Eina_File *f; @@ -89,7 +89,7 @@ evas_object_vg_add(Evas *e) return eo_obj; } -Evas_VG_Node * +Efl_VG * _evas_vg_root_node_get(Eo *obj EINA_UNUSED, Evas_VG_Data *pd) { return pd->root; @@ -116,7 +116,7 @@ _evas_vg_eo_base_constructor(Eo *eo_obj, Evas_VG_Data *pd) obj->type = o_type; /* root node */ - pd->root = eo_add(EVAS_VG_ROOT_NODE_CLASS, eo_obj); + pd->root = eo_add(EFL_VG_ROOT_NODE_CLASS, eo_obj); eo_ref(pd->root); eo_do(eo_obj, parent = eo_parent_get()); @@ -125,14 +125,14 @@ _evas_vg_eo_base_constructor(Eo *eo_obj, Evas_VG_Data *pd) static void _evas_vg_render(Evas_Object_Protected_Data *obj, - void *output, void *context, void *surface, Evas_VG_Node *n, + void *output, void *context, void *surface, Efl_VG *n, Eina_Array *clips, int x, int y, Eina_Bool do_async) { - Evas_VG_Container_Data *vd = eo_data_scope_get(n, EVAS_VG_CONTAINER_CLASS); + Efl_VG_Container_Data *vd = eo_data_scope_get(n, EFL_VG_CONTAINER_CLASS); - if (eo_isa(n, EVAS_VG_CONTAINER_CLASS)) + if (eo_isa(n, EFL_VG_CONTAINER_CLASS)) { - Evas_VG_Node *child; + Efl_VG *child; Eina_List *l; EINA_LIST_FOREACH(vd->children, l, child) @@ -142,9 +142,9 @@ _evas_vg_render(Evas_Object_Protected_Data *obj, } else { - Evas_VG_Node_Data *nd; + Efl_VG_Base_Data *nd; - nd = eo_data_scope_get(n, EVAS_VG_NODE_CLASS); + nd = eo_data_scope_get(n, EFL_VG_BASE_CLASS); obj->layer->evas->engine.func->ector_renderer_draw(output, context, surface, nd->renderer, clips, x, y, do_async); } diff --git a/src/lib/evas/canvas/evas_vg.eo b/src/lib/evas/canvas/evas_vg.eo index 3caf177c88..8247f46e44 100644 --- a/src/lib/evas/canvas/evas_vg.eo +++ b/src/lib/evas/canvas/evas_vg.eo @@ -15,7 +15,7 @@ class Evas.VG (Evas.Object, Efl.File, Efl.Gfx.Fill, Efl.Gfx.View) */ } values { - Evas_VG_Node *container; /*@ Root node of the VG canvas */ + Efl_VG *container; /*@ Root node of the VG canvas */ } } } diff --git a/src/lib/evas/canvas/evas_vg_container.c b/src/lib/evas/canvas/evas_vg_container.c index 3b368f03fe..fdf81244ad 100644 --- a/src/lib/evas/canvas/evas_vg_container.c +++ b/src/lib/evas/canvas/evas_vg_container.c @@ -3,52 +3,52 @@ #include "evas_vg_private.h" -#define MY_CLASS EVAS_VG_CONTAINER_CLASS +#define MY_CLASS EFL_VG_CONTAINER_CLASS static void -_evas_vg_container_render_pre(Eo *obj EINA_UNUSED, - Eina_Matrix3 *parent, - Ector_Surface *s, - void *data, - Evas_VG_Node_Data *nd) +_efl_vg_container_render_pre(Eo *obj EINA_UNUSED, + Eina_Matrix3 *parent, + Ector_Surface *s, + void *data, + Efl_VG_Base_Data *nd) { - Evas_VG_Container_Data *pd = data; + Efl_VG_Container_Data *pd = data; Eina_List *l; Eo *child; if (!nd->changed) return ; nd->changed = EINA_FALSE; - EVAS_VG_COMPUTE_MATRIX(current, parent, nd); + EFL_VG_COMPUTE_MATRIX(current, parent, nd); EINA_LIST_FOREACH(pd->children, l, child) _evas_vg_render_pre(child, s, current); } static void -_evas_vg_container_eo_base_constructor(Eo *obj, - Evas_VG_Container_Data *pd) +_efl_vg_container_eo_base_constructor(Eo *obj, + Efl_VG_Container_Data *pd) { - Evas_VG_Node_Data *nd; + Efl_VG_Base_Data *nd; eo_do_super(obj, MY_CLASS, eo_constructor()); - nd = eo_data_scope_get(obj, EVAS_VG_NODE_CLASS); - nd->render_pre = _evas_vg_container_render_pre; + nd = eo_data_scope_get(obj, EFL_VG_BASE_CLASS); + nd->render_pre = _efl_vg_container_render_pre; nd->data = pd; } static void -_evas_vg_container_eo_base_destructor(Eo *obj, - Evas_VG_Container_Data *pd EINA_UNUSED) +_efl_vg_container_eo_base_destructor(Eo *obj, + Efl_VG_Container_Data *pd EINA_UNUSED) { eo_do_super(obj, MY_CLASS, eo_destructor()); } static Eina_Bool -_evas_vg_container_evas_vg_node_bound_get(Eo *obj EINA_UNUSED, - Evas_VG_Container_Data *pd, - Eina_Rectangle *r) +_efl_vg_container_efl_vg_base_bound_get(Eo *obj EINA_UNUSED, + Efl_VG_Container_Data *pd, + Eina_Rectangle *r) { Eina_Rectangle s; Eina_Bool first = EINA_TRUE; @@ -63,12 +63,12 @@ _evas_vg_container_evas_vg_node_bound_get(Eo *obj EINA_UNUSED, { if (first) { - eo_do(child, evas_vg_node_bound_get(r)); + eo_do(child, efl_vg_bound_get(r)); first = EINA_FALSE; } else { - eo_do(child, evas_vg_node_bound_get(&s)); + eo_do(child, efl_vg_bound_get(&s)); eina_rectangle_union(r, &s); } } @@ -77,4 +77,4 @@ _evas_vg_container_evas_vg_node_bound_get(Eo *obj EINA_UNUSED, } -#include "evas_vg_container.eo.c" +#include "efl_vg_container.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_container.eo b/src/lib/evas/canvas/evas_vg_container.eo deleted file mode 100644 index 0af3b00fc6..0000000000 --- a/src/lib/evas/canvas/evas_vg_container.eo +++ /dev/null @@ -1,9 +0,0 @@ -class Evas.VG_Container (Evas.VG_Node) -{ - eo_prefix: evas_vg_container; - implements { - Eo.Base.constructor; - Eo.Base.destructor; - Evas.VG_Node.bound_get; - } -} diff --git a/src/lib/evas/canvas/evas_vg_gradient.c b/src/lib/evas/canvas/evas_vg_gradient.c index 4df0b255ff..245b6fe334 100644 --- a/src/lib/evas/canvas/evas_vg_gradient.c +++ b/src/lib/evas/canvas/evas_vg_gradient.c @@ -6,10 +6,10 @@ #include static void -_evas_vg_gradient_efl_gfx_gradient_base_stop_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Data *pd, - const Efl_Gfx_Gradient_Stop *colors, - unsigned int length) +_efl_vg_gradient_efl_gfx_gradient_base_stop_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Data *pd, + const Efl_Gfx_Gradient_Stop *colors, + unsigned int length) { pd->colors = realloc(pd->colors, length * sizeof(Efl_Gfx_Gradient_Stop)); if (!pd->colors) @@ -21,34 +21,60 @@ _evas_vg_gradient_efl_gfx_gradient_base_stop_set(Eo *obj EINA_UNUSED, memcpy(pd->colors, colors, length * sizeof(Efl_Gfx_Gradient_Stop)); pd->colors_count = length; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_gradient_efl_gfx_gradient_base_stop_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Data *pd, - const Efl_Gfx_Gradient_Stop **colors, - unsigned int *length) +_efl_vg_gradient_efl_gfx_gradient_base_stop_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Data *pd, + const Efl_Gfx_Gradient_Stop **colors, + unsigned int *length) { if (colors) *colors = pd->colors; if (length) *length = pd->colors_count; } static void -_evas_vg_gradient_efl_gfx_gradient_base_spread_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Data *pd, - Efl_Gfx_Gradient_Spread s) +_efl_vg_gradient_efl_gfx_gradient_base_spread_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Data *pd, + Efl_Gfx_Gradient_Spread s) { pd->s = s; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static Efl_Gfx_Gradient_Spread -_evas_vg_gradient_efl_gfx_gradient_base_spread_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Data *pd) +_efl_vg_gradient_efl_gfx_gradient_base_spread_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Data *pd) { return pd->s; } -#include "evas_vg_gradient.eo.c" +EAPI void +evas_vg_gradient_stop_set(Eo *obj, const Efl_Gfx_Gradient_Stop *colors, unsigned int length) +{ + eo_do(obj, efl_gfx_gradient_stop_set(colors, length)); +} + +EAPI void +evas_vg_gradient_stop_get(Eo *obj, const Efl_Gfx_Gradient_Stop **colors, unsigned int *length) +{ + eo_do(obj, efl_gfx_gradient_stop_get(colors, length)); +} + +EAPI void +evas_vg_gradient_spread_set(Eo *obj, Efl_Gfx_Gradient_Spread s) +{ + eo_do(obj, efl_gfx_gradient_spread_set(s)); +} + +EAPI Efl_Gfx_Gradient_Spread +evas_vg_gradient_spread_get(Eo *obj) +{ + Efl_Gfx_Gradient_Spread ret; + + return eo_do_ret(obj, ret, efl_gfx_gradient_spread_get()); +} + +#include "efl_vg_gradient.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_gradient_linear.c b/src/lib/evas/canvas/evas_vg_gradient_linear.c index c1d8ffc461..d29038c579 100644 --- a/src/lib/evas/canvas/evas_vg_gradient_linear.c +++ b/src/lib/evas/canvas/evas_vg_gradient_linear.c @@ -5,10 +5,10 @@ #include -#define MY_CLASS EVAS_VG_GRADIENT_LINEAR_CLASS +#define MY_CLASS EFL_VG_GRADIENT_LINEAR_CLASS -typedef struct _Evas_VG_Gradient_Linear_Data Evas_VG_Gradient_Linear_Data; -struct _Evas_VG_Gradient_Linear_Data +typedef struct _Efl_VG_Gradient_Linear_Data Efl_VG_Gradient_Linear_Data; +struct _Efl_VG_Gradient_Linear_Data { struct { double x, y; @@ -16,60 +16,60 @@ struct _Evas_VG_Gradient_Linear_Data }; static void -_evas_vg_gradient_linear_efl_gfx_gradient_linear_start_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Linear_Data *pd, - double x, double y) +_efl_vg_gradient_linear_efl_gfx_gradient_linear_start_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Linear_Data *pd, + double x, double y) { pd->start.x = x; pd->start.y = y; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_gradient_linear_efl_gfx_gradient_linear_start_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Linear_Data *pd, - double *x, double *y) +_efl_vg_gradient_linear_efl_gfx_gradient_linear_start_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Linear_Data *pd, + double *x, double *y) { if (x) *x = pd->start.x; if (y) *y = pd->start.y; } static void -_evas_vg_gradient_linear_efl_gfx_gradient_linear_end_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Linear_Data *pd, - double x, double y) +_efl_vg_gradient_linear_efl_gfx_gradient_linear_end_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Linear_Data *pd, + double x, double y) { pd->end.x = x; pd->end.y = y; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_gradient_linear_efl_gfx_gradient_linear_end_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Linear_Data *pd, - double *x, double *y) +_efl_vg_gradient_linear_efl_gfx_gradient_linear_end_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Linear_Data *pd, + double *x, double *y) { if (x) *x = pd->end.x; if (y) *y = pd->end.y; } static void -_evas_vg_gradient_linear_render_pre(Eo *obj, - Eina_Matrix3 *parent, - Ector_Surface *s, - void *data, - Evas_VG_Node_Data *nd) +_efl_vg_gradient_linear_render_pre(Eo *obj, + Eina_Matrix3 *parent, + Ector_Surface *s, + void *data, + Efl_VG_Base_Data *nd) { - Evas_VG_Gradient_Linear_Data *pd = data; - Evas_VG_Gradient_Data *gd; + Efl_VG_Gradient_Linear_Data *pd = data; + Efl_VG_Gradient_Data *gd; if (!nd->changed) return ; nd->changed = EINA_FALSE; - gd = eo_data_scope_get(obj, EVAS_VG_GRADIENT_CLASS); - EVAS_VG_COMPUTE_MATRIX(current, parent, nd); + gd = eo_data_scope_get(obj, EFL_VG_GRADIENT_CLASS); + EFL_VG_COMPUTE_MATRIX(current, parent, nd); if (!nd->renderer) { @@ -89,22 +89,46 @@ _evas_vg_gradient_linear_render_pre(Eo *obj, } static void -_evas_vg_gradient_linear_eo_base_constructor(Eo *obj, - Evas_VG_Gradient_Linear_Data *pd) +_efl_vg_gradient_linear_eo_base_constructor(Eo *obj, + Efl_VG_Gradient_Linear_Data *pd) { - Evas_VG_Node_Data *nd; + Efl_VG_Base_Data *nd; eo_do_super(obj, MY_CLASS, eo_constructor()); - nd = eo_data_scope_get(obj, EVAS_VG_NODE_CLASS); - nd->render_pre = _evas_vg_gradient_linear_render_pre; + nd = eo_data_scope_get(obj, EFL_VG_BASE_CLASS); + nd->render_pre = _efl_vg_gradient_linear_render_pre; nd->data = pd; } void -_evas_vg_gradient_linear_eo_base_destructor(Eo *obj, Evas_VG_Gradient_Linear_Data *pd EINA_UNUSED) +_efl_vg_gradient_linear_eo_base_destructor(Eo *obj, Efl_VG_Gradient_Linear_Data *pd EINA_UNUSED) { eo_do_super(obj, MY_CLASS, eo_destructor()); } -#include "evas_vg_gradient_linear.eo.c" +EAPI void +evas_vg_gradient_linear_start_set(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_gradient_linear_start_set(x, y)); +} + +EAPI void +evas_vg_gradient_linear_start_get(Eo *obj, double *x, double *y) +{ + eo_do(obj, efl_gfx_gradient_linear_start_get(x, y)); +} + +EAPI void +evas_vg_gradient_linear_end_set(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_gradient_linear_end_set(x, y)); +} + +EAPI void +evas_vg_gradient_linear_end_get(Eo *obj, double *x, double *y) +{ + eo_do(obj, efl_gfx_gradient_linear_end_get(x, y)); +} + +#include "efl_vg_gradient_linear.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_gradient_radial.c b/src/lib/evas/canvas/evas_vg_gradient_radial.c index ead0a49d98..b0743e5750 100644 --- a/src/lib/evas/canvas/evas_vg_gradient_radial.c +++ b/src/lib/evas/canvas/evas_vg_gradient_radial.c @@ -3,10 +3,10 @@ #include "evas_vg_private.h" -#define MY_CLASS EVAS_VG_GRADIENT_RADIAL_CLASS +#define MY_CLASS EFL_VG_GRADIENT_RADIAL_CLASS -typedef struct _Evas_VG_Gradient_Radial_Data Evas_VG_Gradient_Radial_Data; -struct _Evas_VG_Gradient_Radial_Data +typedef struct _Efl_VG_Gradient_Radial_Data Efl_VG_Gradient_Radial_Data; +struct _Efl_VG_Gradient_Radial_Data { struct { double x, y; @@ -15,77 +15,77 @@ struct _Evas_VG_Gradient_Radial_Data }; static void -_evas_vg_gradient_radial_efl_gfx_gradient_radial_center_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Radial_Data *pd, - double x, double y) +_efl_vg_gradient_radial_efl_gfx_gradient_radial_center_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Radial_Data *pd, + double x, double y) { pd->center.x = x; pd->center.y = y; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_gradient_radial_efl_gfx_gradient_radial_center_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Radial_Data *pd, - double *x, double *y) +_efl_vg_gradient_radial_efl_gfx_gradient_radial_center_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Radial_Data *pd, + double *x, double *y) { if (x) *x = pd->center.x; if (y) *y = pd->center.y; } static void -_evas_vg_gradient_radial_efl_gfx_gradient_radial_radius_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Radial_Data *pd, - double r) +_efl_vg_gradient_radial_efl_gfx_gradient_radial_radius_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Radial_Data *pd, + double r) { pd->radius = r; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static double -_evas_vg_gradient_radial_efl_gfx_gradient_radial_radius_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Radial_Data *pd) +_efl_vg_gradient_radial_efl_gfx_gradient_radial_radius_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Radial_Data *pd) { return pd->radius; } static void -_evas_vg_gradient_radial_efl_gfx_gradient_radial_focal_set(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Radial_Data *pd, - double x, double y) +_efl_vg_gradient_radial_efl_gfx_gradient_radial_focal_set(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Radial_Data *pd, + double x, double y) { pd->focal.x = x; pd->focal.y = y; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_gradient_radial_efl_gfx_gradient_radial_focal_get(Eo *obj EINA_UNUSED, - Evas_VG_Gradient_Radial_Data *pd, - double *x, double *y) +_efl_vg_gradient_radial_efl_gfx_gradient_radial_focal_get(Eo *obj EINA_UNUSED, + Efl_VG_Gradient_Radial_Data *pd, + double *x, double *y) { if (x) *x = pd->focal.x; if (y) *y = pd->focal.y; } static void -_evas_vg_gradient_radial_render_pre(Eo *obj, +_efl_vg_gradient_radial_render_pre(Eo *obj, Eina_Matrix3 *parent, Ector_Surface *s, void *data, - Evas_VG_Node_Data *nd) + Efl_VG_Base_Data *nd) { - Evas_VG_Gradient_Radial_Data *pd = data; - Evas_VG_Gradient_Data *gd; + Efl_VG_Gradient_Radial_Data *pd = data; + Efl_VG_Gradient_Data *gd; if (!nd->changed) return ; nd->changed = EINA_FALSE; - gd = eo_data_scope_get(obj, EVAS_VG_GRADIENT_CLASS); - EVAS_VG_COMPUTE_MATRIX(current, parent, nd); + gd = eo_data_scope_get(obj, EFL_VG_GRADIENT_CLASS); + EFL_VG_COMPUTE_MATRIX(current, parent, nd); if (!nd->renderer) { @@ -106,22 +106,60 @@ _evas_vg_gradient_radial_render_pre(Eo *obj, } static void -_evas_vg_gradient_radial_eo_base_constructor(Eo *obj, Evas_VG_Gradient_Radial_Data *pd) +_efl_vg_gradient_radial_eo_base_constructor(Eo *obj, Efl_VG_Gradient_Radial_Data *pd) { - Evas_VG_Node_Data *nd; + Efl_VG_Base_Data *nd; eo_do_super(obj, MY_CLASS, eo_constructor()); - nd = eo_data_scope_get(obj, EVAS_VG_NODE_CLASS); - nd->render_pre = _evas_vg_gradient_radial_render_pre; + nd = eo_data_scope_get(obj, EFL_VG_BASE_CLASS); + nd->render_pre = _efl_vg_gradient_radial_render_pre; nd->data = pd; } static void -_evas_vg_gradient_radial_eo_base_destructor(Eo *obj, - Evas_VG_Gradient_Radial_Data *pd EINA_UNUSED) +_efl_vg_gradient_radial_eo_base_destructor(Eo *obj, + Efl_VG_Gradient_Radial_Data *pd EINA_UNUSED) { eo_do_super(obj, MY_CLASS, eo_destructor()); } -#include "evas_vg_gradient_radial.eo.c" +EAPI void +evas_vg_gradient_radial_center_set(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_gradient_radial_center_set(x, y)); +} + +EAPI void +evas_vg_gradient_radial_center_get(Eo *obj, double *x, double *y) +{ + eo_do(obj, efl_gfx_gradient_radial_center_get(x, y)); +} + +EAPI void +evas_vg_gradient_radial_radius_set(Eo *obj, double r) +{ + eo_do(obj, efl_gfx_gradient_radial_radius_set(r)); +} + +EAPI double +evas_vg_gradient_radial_radius_get(Eo *obj) +{ + double ret; + + return eo_do_ret(obj, ret, efl_gfx_gradient_radial_radius_get()); +} + +EAPI void +evas_vg_gradient_radial_focal_set(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_gradient_radial_focal_set(x, y)); +} + +EAPI void +evas_vg_gradient_radial_focal_get(Eo *obj, double *x, double *y) +{ + eo_do(obj, efl_gfx_gradient_radial_focal_get(x, y)); +} + +#include "efl_vg_gradient_radial.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_image.c b/src/lib/evas/canvas/evas_vg_image.c index 523c1fc098..1bb0b1bc50 100644 --- a/src/lib/evas/canvas/evas_vg_image.c +++ b/src/lib/evas/canvas/evas_vg_image.c @@ -5,8 +5,8 @@ #include "evas_vg_private.h" -typedef struct _Evas_VG_Image_Data Evas_VG_Image_Data; -struct _Evas_VG_Image_Data +typedef struct _Efl_VG_Image_Data Efl_VG_Image_Data; +struct _Efl_VG_Image_Data { // FIXME: only manipulate Eina_File internally. Eina_File *f; @@ -17,33 +17,33 @@ struct _Evas_VG_Image_Data }; static void -_evas_vg_image_position_set(Eo *obj, Evas_VG_Image_Data *pd, int x, int y) +_efl_vg_image_position_set(Eo *obj, Efl_VG_Image_Data *pd, int x, int y) { pd->x = x; pd->y = y; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_image_position_get(Eo *obj, Evas_VG_Image_Data *pd, int *x, int *y) +_efl_vg_image_position_get(Eo *obj, Efl_VG_Image_Data *pd, int *x, int *y) { if (x) *x = pd->x; if (y) *y = pd->y; } static void -_evas_vg_image_size_set(Eo *obj, Evas_VG_Image_Data *pd, +_efl_vg_image_size_set(Eo *obj, Efl_VG_Image_Data *pd, unsigned int w, unsigned int h) { pd->w = w; pd->h = h; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_image_size_get(Eo *obj, Evas_VG_Image_Data *pd, +_efl_vg_image_size_get(Eo *obj, Efl_VG_Image_Data *pd, unsigned int *w, unsigned int *h) { if (w) *w = pd->w; @@ -51,7 +51,7 @@ _evas_vg_image_size_get(Eo *obj, Evas_VG_Image_Data *pd, } static Eina_Bool -_evas_vg_image_efl_file_mmap_set(Eo *obj EINA_UNUSED, Evas_VG_Image_Data *pd, +_efl_vg_image_efl_file_mmap_set(Eo *obj EINA_UNUSED, Efl_VG_Image_Data *pd, const Eina_File *f, const char *key) { Eina_File *tmp = pd->f; @@ -60,13 +60,13 @@ _evas_vg_image_efl_file_mmap_set(Eo *obj EINA_UNUSED, Evas_VG_Image_Data *pd, eina_file_close(tmp); eina_stringshare_replace(&pd->key, key); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); return EINA_TRUE; } static void -_evas_vg_image_efl_file_mmap_get(Eo *obj EINA_UNUSED, Evas_VG_Image_Data *pd, +_efl_vg_image_efl_file_mmap_get(Eo *obj EINA_UNUSED, Efl_VG_Image_Data *pd, const Eina_File **f, const char **key) { if (f) *f = pd->f; @@ -74,21 +74,21 @@ _evas_vg_image_efl_file_mmap_get(Eo *obj EINA_UNUSED, Evas_VG_Image_Data *pd, } static Eina_Bool -_evas_vg_image_efl_file_file_set(Eo *obj, Evas_VG_Image_Data *pd, +_efl_vg_image_efl_file_file_set(Eo *obj, Efl_VG_Image_Data *pd, const char *file, const char *key) { Eina_File *tmp; Eina_Bool r; tmp = eina_file_open(file, EINA_FALSE); - r = _evas_vg_image_efl_file_mmap_set(obj, pd, tmp, key); + r = _efl_vg_image_efl_file_mmap_set(obj, pd, tmp, key); eina_file_close(tmp); return r; } static void -_evas_vg_image_efl_file_file_get(Eo *obj EINA_UNUSED, Evas_VG_Image_Data *pd, +_efl_vg_image_efl_file_file_get(Eo *obj EINA_UNUSED, Efl_VG_Image_Data *pd, const char **file, const char **key) { if (file) *file = eina_file_filename_get(pd->f); @@ -96,15 +96,15 @@ _evas_vg_image_efl_file_file_get(Eo *obj EINA_UNUSED, Evas_VG_Image_Data *pd, } static void -_evas_vg_image_eo_base_constructor(Eo *obj, Evas_VG_Image_Data *pd) +_efl_vg_image_eo_base_constructor(Eo *obj, Efl_VG_Image_Data *pd) { eo_error_set(obj); } static void -_evas_vg_image_eo_base_destructor(Eo *obj, Evas_VG_Image_Data *pd) +_efl_vg_image_eo_base_destructor(Eo *obj, Efl_VG_Image_Data *pd) { eo_error_set(obj); } -#include "evas_vg_image.eo.c" +#include "efl_vg_image.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_loader_svg.c b/src/lib/evas/canvas/evas_vg_loader_svg.c index d173b2ae24..bf726d504a 100644 --- a/src/lib/evas/canvas/evas_vg_loader_svg.c +++ b/src/lib/evas/canvas/evas_vg_loader_svg.c @@ -116,7 +116,7 @@ _tag_linearGradient_handler(Evas_SVG_Loader *loader, _attrs_id_parser, &id); if (!id) return EINA_FALSE; - node = eo_add(EVAS_VG_GRADIENT_LINEAR_CLASS, NULL); + node = eo_add(EFL_VG_GRADIENT_LINEAR_CLASS, NULL); if (!node) return EINA_FALSE; eina_hash_direct_add(loader->definition, id, node); @@ -481,7 +481,7 @@ _tag_g_handler(Evas_SVG_Loader *loader, parent = eina_array_data_get(loader->stack, eina_array_count(loader->stack) - 1); - node = eo_add(EVAS_VG_CONTAINER_CLASS, parent); + node = eo_add(EFL_VG_CONTAINER_CLASS, parent); eina_array_push(loader->stack, node); return EINA_TRUE; diff --git a/src/lib/evas/canvas/evas_vg_node.c b/src/lib/evas/canvas/evas_vg_node.c index 76bec2500a..c368634a5c 100644 --- a/src/lib/evas/canvas/evas_vg_node.c +++ b/src/lib/evas/canvas/evas_vg_node.c @@ -6,12 +6,12 @@ #include #include -#define MY_CLASS EVAS_VG_NODE_CLASS +#define MY_CLASS EFL_VG_BASE_CLASS static Eina_Bool -_evas_vg_node_property_changed(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info) +_efl_vg_base_property_changed(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info) { - Evas_VG_Node_Data *pd = data; + Efl_VG_Base_Data *pd = data; Eo *parent; if (pd->changed) return EINA_TRUE; @@ -23,9 +23,9 @@ _evas_vg_node_property_changed(void *data, Eo *obj, const Eo_Event_Description * } void -_evas_vg_node_transformation_set(Eo *obj, - Evas_VG_Node_Data *pd, - const Eina_Matrix3 *m) +_efl_vg_base_transformation_set(Eo *obj, + Efl_VG_Base_Data *pd, + const Eina_Matrix3 *m) { if (!pd->m) { @@ -34,100 +34,100 @@ _evas_vg_node_transformation_set(Eo *obj, } memcpy(pd->m, m, sizeof (Eina_Matrix3)); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } const Eina_Matrix3 * -_evas_vg_node_transformation_get(Eo *obj EINA_UNUSED, Evas_VG_Node_Data *pd) +_efl_vg_base_transformation_get(Eo *obj EINA_UNUSED, Efl_VG_Base_Data *pd) { return pd->m; } void -_evas_vg_node_origin_set(Eo *obj, - Evas_VG_Node_Data *pd, - double x, double y) +_efl_vg_base_origin_set(Eo *obj, + Efl_VG_Base_Data *pd, + double x, double y) { pd->x = x; pd->y = y; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } void -_evas_vg_node_origin_get(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, - double *x, double *y) +_efl_vg_base_origin_get(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, + double *x, double *y) { if (x) *x = pd->x; if (y) *y = pd->y; } void -_evas_vg_node_efl_gfx_base_position_set(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, - int x, int y) +_efl_vg_base_efl_gfx_base_position_set(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, + int x, int y) { pd->x = lrint(x); pd->y = lrint(y); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } void -_evas_vg_node_efl_gfx_base_position_get(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, - int *x, int *y) +_efl_vg_base_efl_gfx_base_position_get(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, + int *x, int *y) { if (x) *x = pd->x; if (y) *y = pd->y; } void -_evas_vg_node_efl_gfx_base_visible_set(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, Eina_Bool v) +_efl_vg_base_efl_gfx_base_visible_set(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, Eina_Bool v) { pd->visibility = v; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } Eina_Bool -_evas_vg_node_efl_gfx_base_visible_get(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd) +_efl_vg_base_efl_gfx_base_visible_get(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd) { return pd->visibility; } void -_evas_vg_node_efl_gfx_base_color_set(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, - int r, int g, int b, int a) +_efl_vg_base_efl_gfx_base_color_set(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, + int r, int g, int b, int a) { pd->r = r; pd->g = g; pd->b = b; pd->a = a; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } Eina_Bool -_evas_vg_node_efl_gfx_base_color_part_set(Eo *obj, Evas_VG_Node_Data *pd, - const char *part, - int r, int g, int b, int a) +_efl_vg_base_efl_gfx_base_color_part_set(Eo *obj, Efl_VG_Base_Data *pd, + const char *part, + int r, int g, int b, int a) { if (part) return EINA_FALSE; - _evas_vg_node_efl_gfx_base_color_set(obj, pd, r, g, b, a); + _efl_vg_base_efl_gfx_base_color_set(obj, pd, r, g, b, a); return EINA_TRUE; } void -_evas_vg_node_efl_gfx_base_color_get(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, - int *r, int *g, int *b, int *a) +_efl_vg_base_efl_gfx_base_color_get(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, + int *r, int *g, int *b, int *a) { if (r) *r = pd->r; if (g) *g = pd->g; @@ -136,62 +136,62 @@ _evas_vg_node_efl_gfx_base_color_get(Eo *obj EINA_UNUSED, } Eina_Bool -_evas_vg_node_efl_gfx_base_color_part_get(Eo *obj, Evas_VG_Node_Data *pd, - const char *part, - int *r, int *g, int *b, int *a) +_efl_vg_base_efl_gfx_base_color_part_get(Eo *obj, Efl_VG_Base_Data *pd, + const char *part, + int *r, int *g, int *b, int *a) { if (part) return EINA_FALSE; - _evas_vg_node_efl_gfx_base_color_get(obj, pd, r, g, b, a); + _efl_vg_base_efl_gfx_base_color_get(obj, pd, r, g, b, a); return EINA_TRUE; } void -_evas_vg_node_mask_set(Eo *obj EINA_UNUSED, - Evas_VG_Node_Data *pd, - Evas_VG_Node *r) +_efl_vg_base_mask_set(Eo *obj EINA_UNUSED, + Efl_VG_Base_Data *pd, + Efl_VG_Base *r) { - Evas_VG_Node *tmp = pd->mask; + Efl_VG_Base *tmp = pd->mask; pd->mask = eo_ref(r); eo_unref(tmp); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } -Evas_VG_Node* -_evas_vg_node_mask_get(Eo *obj EINA_UNUSED, Evas_VG_Node_Data *pd) +Efl_VG_Base* +_efl_vg_base_mask_get(Eo *obj EINA_UNUSED, Efl_VG_Base_Data *pd) { return pd->mask; } void -_evas_vg_node_efl_gfx_base_size_get(Eo *obj, - Evas_VG_Node_Data *pd EINA_UNUSED, - int *w, int *h) +_efl_vg_base_efl_gfx_base_size_get(Eo *obj, + Efl_VG_Base_Data *pd EINA_UNUSED, + int *w, int *h) { Eina_Rectangle bound = { 0, 0, 0, 0 }; - eo_do(obj, evas_vg_node_bound_get(&bound)); + eo_do(obj, efl_vg_bound_get(&bound)); if (w) *w = bound.w; if (h) *h = bound.h; } // Parent should be a container otherwise dismissing the stacking operation static Eina_Bool -_evas_vg_node_parent_checked_get(Eo *obj, - Eo **parent, - Evas_VG_Container_Data **cd) +_efl_vg_base_parent_checked_get(Eo *obj, + Eo **parent, + Efl_VG_Container_Data **cd) { *cd = NULL; eo_do(obj, *parent = eo_parent_get()); - if (eo_isa(*parent, EVAS_VG_CONTAINER_CLASS)) + if (eo_isa(*parent, EFL_VG_CONTAINER_CLASS)) { - *cd = eo_data_scope_get(*parent, EVAS_VG_CONTAINER_CLASS); + *cd = eo_data_scope_get(*parent, EFL_VG_CONTAINER_CLASS); if (!*cd) { - ERR("Can't get EVAS_VG_CONTAINER_CLASS data."); + ERR("Can't get EFL_VG_CONTAINER_CLASS data."); goto on_error; } } @@ -210,36 +210,36 @@ _evas_vg_node_parent_checked_get(Eo *obj, } void -_evas_vg_node_eo_base_constructor(Eo *obj, - Evas_VG_Node_Data *pd) +_efl_vg_base_eo_base_constructor(Eo *obj, + Efl_VG_Base_Data *pd) { - Evas_VG_Container_Data *cd = NULL; + Efl_VG_Container_Data *cd = NULL; Eo *parent; eo_do_super(obj, MY_CLASS, eo_constructor()); - if (!_evas_vg_node_parent_checked_get(obj, &parent, &cd)) + if (!_efl_vg_base_parent_checked_get(obj, &parent, &cd)) eo_error_set(obj); - eo_do(obj, eo_event_callback_add(EFL_GFX_CHANGED, _evas_vg_node_property_changed, pd)); + eo_do(obj, eo_event_callback_add(EFL_GFX_CHANGED, _efl_vg_base_property_changed, pd)); pd->changed = EINA_TRUE; } void -_evas_vg_node_eo_base_parent_set(Eo *obj, - Evas_VG_Node_Data *pd EINA_UNUSED, - Eo *parent) +_efl_vg_base_eo_base_parent_set(Eo *obj, + Efl_VG_Base_Data *pd EINA_UNUSED, + Eo *parent) { - Evas_VG_Container_Data *cd = NULL; - Evas_VG_Container_Data *old_cd = NULL; + Efl_VG_Container_Data *cd = NULL; + Efl_VG_Container_Data *old_cd = NULL; Eo *old_parent; - if (eo_isa(parent, EVAS_VG_CONTAINER_CLASS)) + if (eo_isa(parent, EFL_VG_CONTAINER_CLASS)) { - cd = eo_data_scope_get(parent, EVAS_VG_CONTAINER_CLASS); + cd = eo_data_scope_get(parent, EFL_VG_CONTAINER_CLASS); if (!cd) { - ERR("Can't get EVAS_VG_CONTAINER_CLASS data from %p.", parent); + ERR("Can't get EFL_VG_CONTAINER_CLASS data from %p.", parent); goto on_error; } } @@ -249,7 +249,7 @@ _evas_vg_node_eo_base_parent_set(Eo *obj, goto on_error; } - if (!_evas_vg_node_parent_checked_get(obj, &old_parent, &old_cd)) + if (!_efl_vg_base_parent_checked_get(obj, &old_parent, &old_cd)) goto on_error; // FIXME: this may become slow with to much object @@ -260,9 +260,9 @@ _evas_vg_node_eo_base_parent_set(Eo *obj, if (cd) cd->children = eina_list_append(cd->children, obj); - _evas_vg_node_changed(old_parent); - _evas_vg_node_changed(obj); - _evas_vg_node_changed(parent); + _efl_vg_base_changed(old_parent); + _efl_vg_base_changed(obj); + _efl_vg_base_changed(parent); return ; @@ -272,15 +272,15 @@ _evas_vg_node_eo_base_parent_set(Eo *obj, } void -_evas_vg_node_efl_gfx_stack_raise(Eo *obj, Evas_VG_Node_Data *pd EINA_UNUSED) +_efl_vg_base_efl_gfx_stack_raise(Eo *obj, Efl_VG_Base_Data *pd EINA_UNUSED) { - Evas_VG_Container_Data *cd; + Efl_VG_Container_Data *cd; Eina_List *lookup, *next; Eo *parent; eo_do(obj, parent = eo_parent_get()); - if (!eo_isa(parent, EVAS_VG_CONTAINER_CLASS)) goto on_error; - cd = eo_data_scope_get(parent, EVAS_VG_CONTAINER_CLASS); + if (!eo_isa(parent, EFL_VG_CONTAINER_CLASS)) goto on_error; + cd = eo_data_scope_get(parent, EFL_VG_CONTAINER_CLASS); // FIXME: this could become slow with to much object lookup = eina_list_data_find_list(cd->children, obj); @@ -292,7 +292,7 @@ _evas_vg_node_efl_gfx_stack_raise(Eo *obj, Evas_VG_Node_Data *pd EINA_UNUSED) cd->children = eina_list_remove_list(cd->children, lookup); cd->children = eina_list_append_relative_list(cd->children, obj, next); - _evas_vg_node_changed(parent); + _efl_vg_base_changed(parent); return ; on_error: @@ -300,17 +300,17 @@ _evas_vg_node_efl_gfx_stack_raise(Eo *obj, Evas_VG_Node_Data *pd EINA_UNUSED) } void -_evas_vg_node_efl_gfx_stack_stack_above(Eo *obj, - Evas_VG_Node_Data *pd EINA_UNUSED, - Efl_Gfx_Stack *above) +_efl_vg_base_efl_gfx_stack_stack_above(Eo *obj, + Efl_VG_Base_Data *pd EINA_UNUSED, + Efl_Gfx_Stack *above) { - Evas_VG_Container_Data *cd; + Efl_VG_Container_Data *cd; Eina_List *lookup, *ref; Eo *parent; eo_do(obj, parent = eo_parent_get()); - if (!eo_isa(parent, EVAS_VG_CONTAINER_CLASS)) goto on_error; - cd = eo_data_scope_get(parent, EVAS_VG_CONTAINER_CLASS); + if (!eo_isa(parent, EFL_VG_CONTAINER_CLASS)) goto on_error; + cd = eo_data_scope_get(parent, EFL_VG_CONTAINER_CLASS); // FIXME: this could become slow with to much object lookup = eina_list_data_find_list(cd->children, obj); @@ -322,7 +322,7 @@ _evas_vg_node_efl_gfx_stack_stack_above(Eo *obj, cd->children = eina_list_remove_list(cd->children, lookup); cd->children = eina_list_append_relative_list(cd->children, obj, ref); - _evas_vg_node_changed(parent); + _efl_vg_base_changed(parent); return ; on_error: @@ -330,17 +330,17 @@ _evas_vg_node_efl_gfx_stack_stack_above(Eo *obj, } void -_evas_vg_node_efl_gfx_stack_stack_below(Eo *obj, - Evas_VG_Node_Data *pd EINA_UNUSED, - Efl_Gfx_Stack *below) +_efl_vg_base_efl_gfx_stack_stack_below(Eo *obj, + Efl_VG_Base_Data *pd EINA_UNUSED, + Efl_Gfx_Stack *below) { - Evas_VG_Container_Data *cd; + Efl_VG_Container_Data *cd; Eina_List *lookup, *ref; Eo *parent; eo_do(obj, parent = eo_parent_get()); - if (!eo_isa(parent, EVAS_VG_CONTAINER_CLASS)) goto on_error; - cd = eo_data_scope_get(parent, EVAS_VG_CONTAINER_CLASS); + if (!eo_isa(parent, EFL_VG_CONTAINER_CLASS)) goto on_error; + cd = eo_data_scope_get(parent, EFL_VG_CONTAINER_CLASS); // FIXME: this could become slow with to much object lookup = eina_list_data_find_list(cd->children, obj); @@ -352,7 +352,7 @@ _evas_vg_node_efl_gfx_stack_stack_below(Eo *obj, cd->children = eina_list_remove_list(cd->children, lookup); cd->children = eina_list_prepend_relative_list(cd->children, obj, ref); - _evas_vg_node_changed(parent); + _efl_vg_base_changed(parent); return ; on_error: @@ -360,15 +360,15 @@ _evas_vg_node_efl_gfx_stack_stack_below(Eo *obj, } void -_evas_vg_node_efl_gfx_stack_lower(Eo *obj, Evas_VG_Node_Data *pd EINA_UNUSED) +_efl_vg_base_efl_gfx_stack_lower(Eo *obj, Efl_VG_Base_Data *pd EINA_UNUSED) { - Evas_VG_Container_Data *cd; + Efl_VG_Container_Data *cd; Eina_List *lookup, *prev; Eo *parent; eo_do(obj, parent = eo_parent_get()); - if (!eo_isa(parent, EVAS_VG_CONTAINER_CLASS)) goto on_error; - cd = eo_data_scope_get(parent, EVAS_VG_CONTAINER_CLASS); + if (!eo_isa(parent, EFL_VG_CONTAINER_CLASS)) goto on_error; + cd = eo_data_scope_get(parent, EFL_VG_CONTAINER_CLASS); // FIXME: this could become slow with to much object lookup = eina_list_data_find_list(cd->children, obj); @@ -380,7 +380,7 @@ _evas_vg_node_efl_gfx_stack_lower(Eo *obj, Evas_VG_Node_Data *pd EINA_UNUSED) cd->children = eina_list_remove_list(cd->children, lookup); cd->children = eina_list_prepend_relative_list(cd->children, obj, prev); - _evas_vg_node_changed(parent); + _efl_vg_base_changed(parent); return ; on_error: @@ -388,25 +388,91 @@ _evas_vg_node_efl_gfx_stack_lower(Eo *obj, Evas_VG_Node_Data *pd EINA_UNUSED) } Efl_Gfx_Stack * -_evas_vg_node_efl_gfx_stack_below_get(Eo *obj, Evas_VG_Node_Data *pd) +_efl_vg_base_efl_gfx_stack_below_get(Eo *obj, Efl_VG_Base_Data *pd) { // FIXME: need to implement bound_get return NULL; } Efl_Gfx_Stack * -_evas_vg_node_efl_gfx_stack_above_get(Eo *obj, Evas_VG_Node_Data *pd) +_efl_vg_base_efl_gfx_stack_above_get(Eo *obj, Efl_VG_Base_Data *pd) { // FIXME: need to implement bound_get return NULL; } Eina_Bool -_evas_vg_node_original_bound_get(Eo *obj, - Evas_VG_Node_Data *pd, - Eina_Rectangle *r) +_efl_vg_base_original_bound_get(Eo *obj, + Efl_VG_Base_Data *pd, + Eina_Rectangle *r) { return EINA_FALSE; } -#include "evas_vg_node.eo.c" +EAPI Eina_Bool +evas_vg_node_visible_get(Eo *obj) +{ + Eina_Bool ret; + + return eo_do_ret(obj, ret, efl_gfx_visible_get()); +} + +EAPI void +evas_vg_node_visible_set(Eo *obj, Eina_Bool v) +{ + eo_do(obj, efl_gfx_visible_set(v)); +} + +EAPI void +evas_vg_node_color_get(Eo *obj, int *r, int *g, int *b, int *a) +{ + eo_do(obj, efl_gfx_color_get(r, g, b, a)); +} + +EAPI void +evas_vg_node_color_set(Eo *obj, int r, int g, int b, int a) +{ + eo_do(obj, efl_gfx_color_set(r, g, b, a)); +} + +EAPI void +evas_vg_node_geometry_get(Eo *obj, int *x, int *y, int *w, int *h) +{ + eo_do(obj, + efl_gfx_position_get(x, y), + efl_gfx_size_get(w, h)); +} + +EAPI void +evas_vg_node_geometry_set(Eo *obj, int x, int y, int w, int h) +{ + eo_do(obj, + efl_gfx_position_set(x, y), + efl_gfx_size_set(w, h)); +} + +EAPI void +evas_vg_node_stack_below(Eo *obj, Eo *below) +{ + eo_do(obj, efl_gfx_stack_below(below)); +} + +EAPI void +evas_vg_node_stack_above(Eo *obj, Eo *above) +{ + eo_do(obj, efl_gfx_stack_above(above)); +} + +EAPI void +evas_vg_node_raise(Eo *obj) +{ + eo_do(obj, efl_gfx_stack_raise()); +} + +EAPI void +evas_vg_node_lower(Eo *obj) +{ + eo_do(obj, efl_gfx_stack_lower()); +} + +#include "efl_vg_base.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_private.h b/src/lib/evas/canvas/evas_vg_private.h index 1c7d516615..8db3396c02 100644 --- a/src/lib/evas/canvas/evas_vg_private.h +++ b/src/lib/evas/canvas/evas_vg_private.h @@ -3,17 +3,17 @@ #include -typedef struct _Evas_VG_Node_Data Evas_VG_Node_Data; -typedef struct _Evas_VG_Container_Data Evas_VG_Container_Data; -typedef struct _Evas_VG_Gradient_Data Evas_VG_Gradient_Data; +typedef struct _Efl_VG_Base_Data Efl_VG_Base_Data; +typedef struct _Efl_VG_Container_Data Efl_VG_Container_Data; +typedef struct _Efl_VG_Gradient_Data Efl_VG_Gradient_Data; -struct _Evas_VG_Node_Data +struct _Efl_VG_Base_Data { Eina_Matrix3 *m; - Evas_VG_Node *mask; + Efl_VG *mask; Ector_Renderer *renderer; - void (*render_pre)(Eo *obj, Eina_Matrix3 *parent, Ector_Surface *s, void *data, Evas_VG_Node_Data *nd); + void (*render_pre)(Eo *obj, Eina_Matrix3 *parent, Ector_Surface *s, void *data, Efl_VG_Base_Data *nd); void *data; double x, y; @@ -23,12 +23,12 @@ struct _Evas_VG_Node_Data Eina_Bool changed : 1; }; -struct _Evas_VG_Container_Data +struct _Efl_VG_Container_Data { Eina_List *children; }; -struct _Evas_VG_Gradient_Data +struct _Efl_VG_Gradient_Data { // FIXME: Later on we should deduplicate it somehow (Using Ector ?). Efl_Gfx_Gradient_Stop *colors; @@ -37,14 +37,14 @@ struct _Evas_VG_Gradient_Data Efl_Gfx_Gradient_Spread s; }; -static inline Evas_VG_Node_Data * -_evas_vg_render_pre(Evas_VG_Node *child, Ector_Surface *s, Eina_Matrix3 *m) +static inline Efl_VG_Base_Data * +_evas_vg_render_pre(Efl_VG *child, Ector_Surface *s, Eina_Matrix3 *m) { - Evas_VG_Node_Data *child_nd = NULL; + Efl_VG_Base_Data *child_nd = NULL; // FIXME: Prevent infinite loop if (child) - child_nd = eo_data_scope_get(child, EVAS_VG_NODE_CLASS); + child_nd = eo_data_scope_get(child, EFL_VG_BASE_CLASS); if (child_nd) child_nd->render_pre(child, m, s, child_nd->data, child_nd); @@ -52,12 +52,12 @@ _evas_vg_render_pre(Evas_VG_Node *child, Ector_Surface *s, Eina_Matrix3 *m) } static inline void -_evas_vg_node_changed(Eo *obj) +_efl_vg_base_changed(Eo *obj) { eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL)); } -#define EVAS_VG_COMPUTE_MATRIX(Current, Parent, Nd) \ +#define EFL_VG_COMPUTE_MATRIX(Current, Parent, Nd) \ Eina_Matrix3 *Current = Nd->m; \ Eina_Matrix3 _matrix_tmp; \ \ diff --git a/src/lib/evas/canvas/evas_vg_root_node.c b/src/lib/evas/canvas/evas_vg_root_node.c index d6f2c51a34..75a304d6de 100644 --- a/src/lib/evas/canvas/evas_vg_root_node.c +++ b/src/lib/evas/canvas/evas_vg_root_node.c @@ -2,14 +2,14 @@ #include "evas_private.h" #include "evas_vg_private.h" -#include "evas_vg_root_node.eo.h" +#include "efl_vg_root_node.eo.h" #include -#define MY_CLASS EVAS_VG_ROOT_NODE_CLASS +#define MY_CLASS EFL_VG_ROOT_NODE_CLASS -typedef struct _Evas_VG_Root_Node_Data Evas_VG_Root_Node_Data; -struct _Evas_VG_Root_Node_Data +typedef struct _Efl_VG_Root_Node_Data Efl_VG_Root_Node_Data; +struct _Efl_VG_Root_Node_Data { Evas_Object *parent; Evas_Object_Protected_Data *data; @@ -20,16 +20,16 @@ _evas_vg_root_node_render_pre(Eo *obj EINA_UNUSED, Eina_Matrix3 *parent, Ector_Surface *s, void *data, - Evas_VG_Node_Data *nd) + Efl_VG_Base_Data *nd) { - Evas_VG_Container_Data *pd = data; + Efl_VG_Container_Data *pd = data; Eina_List *l; Eo *child; if (!nd->changed) return ; nd->changed = EINA_FALSE; - EVAS_VG_COMPUTE_MATRIX(current, parent, nd); + EFL_VG_COMPUTE_MATRIX(current, parent, nd); EINA_LIST_FOREACH(pd->children, l, child) _evas_vg_render_pre(child, s, current); @@ -40,19 +40,19 @@ _evas_vg_root_node_changed(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED) { - Evas_VG_Root_Node_Data *pd = data; + Efl_VG_Root_Node_Data *pd = data; if (pd->parent) evas_object_change(pd->parent, pd->data); return EINA_TRUE; } void -_evas_vg_root_node_eo_base_parent_set(Eo *obj, - Evas_VG_Root_Node_Data *pd, - Eo *parent) +_efl_vg_root_node_eo_base_parent_set(Eo *obj, + Efl_VG_Root_Node_Data *pd, + Eo *parent) { - // Nice little hack, jump over parent parent_set in Evas_VG_Root - eo_do_super(obj, EVAS_VG_NODE_CLASS, eo_parent_set(parent)); + // Nice little hack, jump over parent parent_set in Efl_VG_Root + eo_do_super(obj, EFL_VG_BASE_CLASS, eo_parent_set(parent)); if (parent && !eo_isa(parent, EVAS_VG_CLASS)) { eo_error_set(obj); @@ -65,11 +65,11 @@ _evas_vg_root_node_eo_base_parent_set(Eo *obj, } void -_evas_vg_root_node_eo_base_constructor(Eo *obj, - Evas_VG_Root_Node_Data *pd) +_efl_vg_root_node_eo_base_constructor(Eo *obj, + Efl_VG_Root_Node_Data *pd) { - Evas_VG_Container_Data *cd; - Evas_VG_Node_Data *nd; + Efl_VG_Container_Data *cd; + Efl_VG_Base_Data *nd; Eo *parent; // Nice little hack, jump over parent constructor in Efl_VG_Root @@ -78,14 +78,14 @@ _evas_vg_root_node_eo_base_constructor(Eo *obj, if (!eo_isa(parent, EVAS_VG_CLASS)) eo_error_set(obj); - cd = eo_data_scope_get(obj, EVAS_VG_CONTAINER_CLASS); + cd = eo_data_scope_get(obj, EFL_VG_CONTAINER_CLASS); cd->children = NULL; - nd = eo_data_scope_get(obj, EVAS_VG_NODE_CLASS); + nd = eo_data_scope_get(obj, EFL_VG_BASE_CLASS); nd->render_pre = _evas_vg_root_node_render_pre; nd->data = cd; eo_do(obj, eo_event_callback_add(EFL_GFX_CHANGED, _evas_vg_root_node_changed, pd)); } -#include "evas_vg_root_node.eo.c" +#include "efl_vg_root_node.eo.c" diff --git a/src/lib/evas/canvas/evas_vg_root_node.eo b/src/lib/evas/canvas/evas_vg_root_node.eo deleted file mode 100644 index 9489c7388f..0000000000 --- a/src/lib/evas/canvas/evas_vg_root_node.eo +++ /dev/null @@ -1,8 +0,0 @@ -class Evas.VG_Root_Node (Evas.VG_Container) -{ - eo_prefix: evas_vg_root_node; - implements { - Eo.Base.parent.set; - Eo.Base.constructor; - } -} diff --git a/src/lib/evas/canvas/evas_vg_shape.c b/src/lib/evas/canvas/evas_vg_shape.c index 2a577b89be..fd63594c2c 100644 --- a/src/lib/evas/canvas/evas_vg_shape.c +++ b/src/lib/evas/canvas/evas_vg_shape.c @@ -3,17 +3,17 @@ #include "evas_vg_private.h" -#define MY_CLASS EVAS_VG_SHAPE_CLASS +#define MY_CLASS EFL_VG_SHAPE_CLASS -typedef struct _Evas_VG_Shape_Data Evas_VG_Shape_Data; -struct _Evas_VG_Shape_Data +typedef struct _Efl_VG_Shape_Data Efl_VG_Shape_Data; +struct _Efl_VG_Shape_Data { - Evas_VG_Node *fill; + Efl_VG *fill; struct { Efl_Gfx_Dash *dash; - Evas_VG_Node *fill; - Evas_VG_Node *marker; + Efl_VG *fill; + Efl_VG *marker; double scale; double width; @@ -29,72 +29,72 @@ struct _Evas_VG_Shape_Data }; static Eina_Bool -_evas_vg_shape_evas_vg_node_bound_get(Eo *obj, - Evas_VG_Shape_Data *pd, - Eina_Rectangle *r) +_efl_vg_shape_efl_vg_base_bound_get(Eo *obj, + Efl_VG_Shape_Data *pd, + Eina_Rectangle *r) { return EINA_FALSE; } static void -_evas_vg_shape_fill_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - Evas_VG_Node *f) +_efl_vg_shape_fill_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + Efl_VG *f) { - Evas_VG_Node *tmp = pd->fill; + Efl_VG *tmp = pd->fill; pd->fill = eo_ref(f); eo_unref(tmp); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } -static Evas_VG_Node * -_evas_vg_shape_fill_get(Eo *obj EINA_UNUSED, Evas_VG_Shape_Data *pd) +static Efl_VG * +_efl_vg_shape_fill_get(Eo *obj EINA_UNUSED, Efl_VG_Shape_Data *pd) { return pd->fill; } static void -_evas_vg_shape_efl_gfx_shape_stroke_scale_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - double s) +_efl_vg_shape_efl_gfx_shape_stroke_scale_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + double s) { pd->stroke.scale = s; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static double -_evas_vg_shape_efl_gfx_shape_stroke_scale_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +_efl_vg_shape_efl_gfx_shape_stroke_scale_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.scale; } static void -_evas_vg_shape_efl_gfx_shape_stroke_color_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - int r, int g, int b, int a) +_efl_vg_shape_efl_gfx_shape_stroke_color_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + int r, int g, int b, int a) { pd->stroke.r = r; pd->stroke.g = g; pd->stroke.b = b; pd->stroke.a = a; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static Eina_Bool -_evas_vg_shape_efl_gfx_base_color_part_set(Eo *obj, Evas_VG_Shape_Data *pd, - const char * part, - int r, int g, int b, int a) +_efl_vg_shape_efl_gfx_base_color_part_set(Eo *obj, Efl_VG_Shape_Data *pd, + const char * part, + int r, int g, int b, int a) { Eina_Bool ret; if (part && !strcmp(part, "stroke")) { - _evas_vg_shape_efl_gfx_shape_stroke_color_set(obj, pd, r, g, b, a); + _efl_vg_shape_efl_gfx_shape_stroke_color_set(obj, pd, r, g, b, a); return EINA_TRUE; } @@ -105,9 +105,9 @@ _evas_vg_shape_efl_gfx_base_color_part_set(Eo *obj, Evas_VG_Shape_Data *pd, } static void -_evas_vg_shape_efl_gfx_shape_stroke_color_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - int *r, int *g, int *b, int *a) +_efl_vg_shape_efl_gfx_shape_stroke_color_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + int *r, int *g, int *b, int *a) { if (r) *r = pd->stroke.r; if (g) *g = pd->stroke.g; @@ -116,15 +116,15 @@ _evas_vg_shape_efl_gfx_shape_stroke_color_get(Eo *obj EINA_UNUSED, } static Eina_Bool -_evas_vg_shape_efl_gfx_base_color_part_get(Eo *obj, Evas_VG_Shape_Data *pd, - const char * part, - int *r, int *g, int *b, int *a) +_efl_vg_shape_efl_gfx_base_color_part_get(Eo *obj, Efl_VG_Shape_Data *pd, + const char * part, + int *r, int *g, int *b, int *a) { Eina_Bool ret; if (part && !strcmp(part, "stroke")) { - _evas_vg_shape_efl_gfx_shape_stroke_color_get(obj, pd, r, g, b, a); + _efl_vg_shape_efl_gfx_shape_stroke_color_get(obj, pd, r, g, b, a); return EINA_TRUE; } @@ -135,64 +135,64 @@ _evas_vg_shape_efl_gfx_base_color_part_get(Eo *obj, Evas_VG_Shape_Data *pd, } static void -_evas_vg_shape_stroke_fill_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - Evas_VG_Node *f) +_efl_vg_shape_stroke_fill_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + Efl_VG *f) { - Evas_VG_Node *tmp = pd->fill; + Efl_VG *tmp = pd->fill; pd->stroke.fill = eo_ref(f); eo_unref(tmp); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } -static Evas_VG_Node * -_evas_vg_shape_stroke_fill_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +static Efl_VG * +_efl_vg_shape_stroke_fill_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.fill; } static void -_evas_vg_shape_efl_gfx_shape_stroke_width_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - double w) +_efl_vg_shape_efl_gfx_shape_stroke_width_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + double w) { pd->stroke.width = w; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static double -_evas_vg_shape_efl_gfx_shape_stroke_width_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +_efl_vg_shape_efl_gfx_shape_stroke_width_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.width; } static void -_evas_vg_shape_efl_gfx_shape_stroke_location_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - double centered) +_efl_vg_shape_efl_gfx_shape_stroke_location_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + double centered) { pd->stroke.centered = centered; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static double -_evas_vg_shape_efl_gfx_shape_stroke_location_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +_efl_vg_shape_efl_gfx_shape_stroke_location_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.centered; } static void -_evas_vg_shape_efl_gfx_shape_stroke_dash_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - const Efl_Gfx_Dash *dash, - unsigned int length) +_efl_vg_shape_efl_gfx_shape_stroke_dash_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + const Efl_Gfx_Dash *dash, + unsigned int length) { free(pd->stroke.dash); pd->stroke.dash = NULL; @@ -204,87 +204,87 @@ _evas_vg_shape_efl_gfx_shape_stroke_dash_set(Eo *obj EINA_UNUSED, memcpy(pd->stroke.dash, dash, sizeof (Efl_Gfx_Dash) * length); pd->stroke.dash_count = length; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static void -_evas_vg_shape_efl_gfx_shape_stroke_dash_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - const Efl_Gfx_Dash **dash, - unsigned int *length) +_efl_vg_shape_efl_gfx_shape_stroke_dash_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + const Efl_Gfx_Dash **dash, + unsigned int *length) { if (dash) *dash = pd->stroke.dash; if (length) *length = pd->stroke.dash_count; } static void -_evas_vg_shape_stroke_marker_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - Evas_VG_Shape *m) +_efl_vg_shape_stroke_marker_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + Efl_VG_Shape *m) { - Evas_VG_Node *tmp = pd->stroke.marker; + Efl_VG *tmp = pd->stroke.marker; pd->stroke.marker = eo_ref(m); eo_unref(tmp); - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } -static Evas_VG_Shape * -_evas_vg_shape_stroke_marker_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +static Efl_VG_Shape * +_efl_vg_shape_stroke_marker_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.marker; } static void -_evas_vg_shape_efl_gfx_shape_stroke_cap_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - Efl_Gfx_Cap c) +_efl_vg_shape_efl_gfx_shape_stroke_cap_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + Efl_Gfx_Cap c) { pd->stroke.cap = c; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static Efl_Gfx_Cap -_evas_vg_shape_efl_gfx_shape_stroke_cap_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +_efl_vg_shape_efl_gfx_shape_stroke_cap_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.cap; } static void -_evas_vg_shape_efl_gfx_shape_stroke_join_set(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd, - Efl_Gfx_Join j) +_efl_vg_shape_efl_gfx_shape_stroke_join_set(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd, + Efl_Gfx_Join j) { pd->stroke.join = j; - _evas_vg_node_changed(obj); + _efl_vg_base_changed(obj); } static Efl_Gfx_Join -_evas_vg_shape_efl_gfx_shape_stroke_join_get(Eo *obj EINA_UNUSED, - Evas_VG_Shape_Data *pd) +_efl_vg_shape_efl_gfx_shape_stroke_join_get(Eo *obj EINA_UNUSED, + Efl_VG_Shape_Data *pd) { return pd->stroke.join; } static void -_evas_vg_shape_render_pre(Eo *obj EINA_UNUSED, - Eina_Matrix3 *parent, - Ector_Surface *s, - void *data, - Evas_VG_Node_Data *nd) +_efl_vg_shape_render_pre(Eo *obj EINA_UNUSED, + Eina_Matrix3 *parent, + Ector_Surface *s, + void *data, + Efl_VG_Base_Data *nd) { - Evas_VG_Shape_Data *pd = data; - Evas_VG_Node_Data *fill, *stroke_fill, *stroke_marker, *mask; + Efl_VG_Shape_Data *pd = data; + Efl_VG_Base_Data *fill, *stroke_fill, *stroke_marker, *mask; if (!nd->changed) return ; nd->changed = EINA_FALSE; - EVAS_VG_COMPUTE_MATRIX(current, parent, nd); + EFL_VG_COMPUTE_MATRIX(current, parent, nd); fill = _evas_vg_render_pre(pd->fill, s, current); stroke_fill = _evas_vg_render_pre(pd->stroke.fill, s, current); @@ -310,9 +310,9 @@ _evas_vg_shape_render_pre(Eo *obj EINA_UNUSED, } static void -_evas_vg_shape_eo_base_constructor(Eo *obj, Evas_VG_Shape_Data *pd) +_efl_vg_shape_eo_base_constructor(Eo *obj, Efl_VG_Shape_Data *pd) { - Evas_VG_Node_Data *nd; + Efl_VG_Base_Data *nd; eo_do_super(obj, MY_CLASS, eo_constructor()); @@ -322,15 +322,227 @@ _evas_vg_shape_eo_base_constructor(Eo *obj, Evas_VG_Shape_Data *pd) pd->stroke.a = 1; pd->stroke.centered = 0.5; - nd = eo_data_scope_get(obj, EVAS_VG_NODE_CLASS); - nd->render_pre = _evas_vg_shape_render_pre; + nd = eo_data_scope_get(obj, EFL_VG_BASE_CLASS); + nd->render_pre = _efl_vg_shape_render_pre; nd->data = pd; } static void -_evas_vg_shape_eo_base_destructor(Eo *obj, Evas_VG_Shape_Data *pd EINA_UNUSED) +_efl_vg_shape_eo_base_destructor(Eo *obj, Efl_VG_Shape_Data *pd EINA_UNUSED) { eo_do_super(obj, MY_CLASS, eo_destructor()); } -#include "evas_vg_shape.eo.c" +EAPI double +evas_vg_shape_stroke_scale_get(Eo *obj) +{ + double ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_stroke_scale_get()); +} + +EAPI void +evas_vg_shape_stroke_scale_set(Eo *obj, double s) +{ + eo_do(obj, efl_gfx_shape_stroke_scale_set(s)); +} + +EAPI void +evas_vg_shape_stroke_color_get(Eo *obj, int *r, int *g, int *b, int *a) +{ + eo_do(obj, efl_gfx_shape_stroke_color_get(r, g, b, a)); +} + +EAPI void +evas_vg_shape_stroke_color_set(Eo *obj, int r, int g, int b, int a) +{ + eo_do(obj, efl_gfx_shape_stroke_color_set(r, g, b, a)); +} + +EAPI double +evas_vg_shape_stroke_width_get(Eo *obj) +{ + double ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_stroke_width_get()); +} + +EAPI void +evas_vg_shape_stroke_width_set(Eo *obj, double w) +{ + eo_do(obj, efl_gfx_shape_stroke_width_set(w)); +} + +EAPI double +evas_vg_shape_stroke_location_get(Eo *obj) +{ + double ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_stroke_location_get()); +} + +EAPI void +evas_vg_shape_stroke_location_set(Eo *obj, double centered) +{ + eo_do(obj, efl_gfx_shape_stroke_location_set(centered)); +} + +EAPI void +evas_vg_shape_stroke_dash_get(Eo *obj, const Efl_Gfx_Dash **dash, unsigned int *length) +{ + eo_do(obj, efl_gfx_shape_stroke_dash_get(dash, length)); +} + +EAPI void +evas_vg_shape_stroke_dash_set(Eo *obj, const Efl_Gfx_Dash *dash, unsigned int length) +{ + eo_do(obj, efl_gfx_shape_stroke_dash_set(dash, length)); +} + +EAPI Efl_Gfx_Cap +evas_vg_shape_stroke_cap_get(Eo *obj) +{ + Efl_Gfx_Cap ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_stroke_cap_get()); +} + +EAPI void +evas_vg_shape_stroke_cap_set(Eo *obj, Efl_Gfx_Cap c) +{ + eo_do(obj, efl_gfx_shape_stroke_cap_set(c)); +} + +EAPI Efl_Gfx_Join +evas_vg_shape_stroke_join_get(Eo *obj) +{ + Efl_Gfx_Join ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_stroke_join_get()); +} + +EAPI void +evas_vg_shape_stroke_join_set(Eo *obj, Efl_Gfx_Join j) +{ + eo_do(obj, efl_gfx_shape_stroke_join_set(j)); +} + +EAPI void +evas_vg_shape_shape_path_set(Eo *obj, const Efl_Gfx_Path_Command *op, const double *points) +{ + eo_do(obj, efl_gfx_shape_path_set(op, points)); +} + +EAPI void +evas_vg_shape_shape_path_get(Eo *obj, const Efl_Gfx_Path_Command **op, const double **points) +{ + eo_do(obj, efl_gfx_shape_path_get(op, points)); +} + +EAPI void +evas_vg_shape_shape_path_length_get(Eo *obj, unsigned int *commands, unsigned int *points) +{ + eo_do(obj, efl_gfx_shape_path_length_get(commands, points)); +} + +EAPI void +evas_vg_shape_shape_current_get(Eo *obj, double *x, double *y) +{ + eo_do(obj, efl_gfx_shape_current_get(x, y)); +} + +EAPI void +evas_vg_shape_shape_current_ctrl_get(Eo *obj, double *x, double *y) +{ + eo_do(obj, efl_gfx_shape_current_ctrl_get(x, y)); +} + +EAPI void +evas_vg_shape_shape_dup(Eo *obj, Eo *dup_from) +{ + eo_do(obj, efl_gfx_shape_dup(dup_from)); +} + +EAPI void +evas_vg_shape_shape_reset(Eo *obj) +{ + eo_do(obj, efl_gfx_shape_reset()); +} + +EAPI void +evas_vg_shape_shape_append_move_to(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_shape_append_move_to(x, y)); +} + +EAPI void +evas_vg_shape_shape_append_line_to(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_shape_append_line_to(x, y)); +} + +EAPI void +evas_vg_shape_shape_append_quadratic_to(Eo *obj, double x, double y, double ctrl_x, double ctrl_y) +{ + eo_do(obj, efl_gfx_shape_append_quadratic_to(x, y, ctrl_x, ctrl_y)); +} + +EAPI void +evas_vg_shape_shape_append_squadratic_to(Eo *obj, double x, double y) +{ + eo_do(obj, efl_gfx_shape_append_squadratic_to(x, y)); +} + +EAPI void +evas_vg_shape_shape_append_cubic_to(Eo *obj, double x, double y, double ctrl_x0, double ctrl_y0, double ctrl_x1, double ctrl_y1) +{ + eo_do(obj, efl_gfx_shape_append_cubic_to(x, y, ctrl_x0, ctrl_y0, ctrl_x1, ctrl_y1)); +} + +EAPI void +evas_vg_shape_shape_append_scubic_to(Eo *obj, double x, double y, double ctrl_x, double ctrl_y) +{ + eo_do(obj, efl_gfx_shape_append_scubic_to(x, y, ctrl_x, ctrl_y)); +} + +EAPI void +evas_vg_shape_shape_append_arc_to(Eo *obj, double x, double y, double rx, double ry, double angle, Eina_Bool large_arc, Eina_Bool sweep) +{ + eo_do(obj, efl_gfx_shape_append_arc_to(x, y, rx, ry, angle, large_arc, sweep)); +} + +EAPI void +evas_vg_shape_shape_append_close(Eo *obj) +{ + eo_do(obj, efl_gfx_shape_append_close()); +} + +EAPI void +evas_vg_shape_shape_append_circle(Eo *obj, double x, double y, double radius) +{ + eo_do(obj, efl_gfx_shape_append_circle(x, y, radius)); +} + +EAPI void +evas_vg_shape_shape_append_svg_path(Eo *obj, const char *svg_path_data) +{ + eo_do(obj, efl_gfx_shape_append_svg_path(svg_path_data)); +} + +EAPI Eina_Bool +evas_vg_shape_shape_interpolate(Eo *obj, const Eo *from, const Eo *to, double pos_map) +{ + Eina_Bool ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_interpolate(from, to, pos_map)); +} + +EAPI Eina_Bool +evas_vg_shape_shape_equal_commands(Eo *obj, const Eo *with) +{ + Eina_Bool ret; + + return eo_do_ret(obj, ret, efl_gfx_shape_equal_commands(with)); +} + +#include "efl_vg_shape.eo.c"