From bd5b76508b0b3bdc5d92f5f7db9741c100d47d3c Mon Sep 17 00:00:00 2001 From: Jean-Philippe Andre Date: Wed, 29 Nov 2017 20:03:16 +0900 Subject: [PATCH] efl: Introduce interface Efl.Dup A few classes allow their objects to be duplicated, so they should all use the same interface. Also, rename VG's dup to copy_from as it's not conforming to the definition of dup. --- src/Makefile_Efl.am | 1 + src/bin/elementary/test_events.c | 10 +++++----- src/lib/edje/edje_calc.c | 2 +- src/lib/efl/Efl.h | 1 + src/lib/efl/interfaces/efl_dup.eo | 17 +++++++++++++++++ src/lib/efl/interfaces/efl_gfx_path.c | 4 ++-- src/lib/efl/interfaces/efl_gfx_path.eo | 3 ++- src/lib/efl/interfaces/efl_gfx_shape.c | 12 +++++++----- src/lib/efl/interfaces/efl_gfx_shape.eo | 12 +++--------- src/lib/efl/interfaces/efl_interfaces_main.c | 1 + src/lib/evas/canvas/efl_canvas_vg.c | 2 +- src/lib/evas/canvas/efl_input_event.eo | 13 +------------ src/lib/evas/canvas/efl_input_focus.c | 2 +- src/lib/evas/canvas/efl_input_focus.eo | 10 +++++++++- src/lib/evas/canvas/efl_input_hold.c | 2 +- src/lib/evas/canvas/efl_input_hold.eo | 10 +++++++++- src/lib/evas/canvas/efl_input_key.c | 2 +- src/lib/evas/canvas/efl_input_key.eo | 10 +++++++++- src/lib/evas/canvas/efl_input_pointer.c | 2 +- src/lib/evas/canvas/efl_input_pointer.eo | 10 +++++++++- src/lib/evas/canvas/efl_vg.eo | 7 ++----- src/lib/evas/canvas/efl_vg_container.eo | 2 +- src/lib/evas/canvas/efl_vg_gradient.eo | 2 +- src/lib/evas/canvas/efl_vg_gradient_linear.eo | 2 +- src/lib/evas/canvas/efl_vg_gradient_radial.eo | 2 +- src/lib/evas/canvas/efl_vg_shape.eo | 2 +- src/lib/evas/canvas/evas_device.c | 2 +- src/lib/evas/canvas/evas_events.c | 22 +++++++++++----------- src/lib/evas/canvas/evas_vg_container.c | 6 +++--- src/lib/evas/canvas/evas_vg_gradient.c | 4 ++-- src/lib/evas/canvas/evas_vg_gradient_linear.c | 4 ++-- src/lib/evas/canvas/evas_vg_gradient_radial.c | 4 ++-- src/lib/evas/canvas/evas_vg_node.c | 4 ++-- src/lib/evas/canvas/evas_vg_shape.c | 16 ++++++++-------- src/lib/evas/vg/evas_vg_cache.c | 2 +- 35 files changed, 121 insertions(+), 86 deletions(-) create mode 100644 src/lib/efl/interfaces/efl_dup.eo diff --git a/src/Makefile_Efl.am b/src/Makefile_Efl.am index 769abd6..0584602 100644 --- a/src/Makefile_Efl.am +++ b/src/Makefile_Efl.am @@ -16,6 +16,7 @@ efl_eolian_files = \ lib/efl/interfaces/efl_canvas.eo \ lib/efl/interfaces/efl_config.eo \ lib/efl/interfaces/efl_control.eo \ + lib/efl/interfaces/efl_dup.eo \ lib/efl/interfaces/efl_file.eo \ lib/efl/interfaces/efl_image_load.eo \ lib/efl/interfaces/efl_part.eo \ diff --git a/src/bin/elementary/test_events.c b/src/bin/elementary/test_events.c index c6a3ca5..30831e8 100644 --- a/src/bin/elementary/test_events.c +++ b/src/bin/elementary/test_events.c @@ -22,7 +22,7 @@ _pointer_down(void *data, const Efl_Event *ev) testdata *td = data; td->down = 1; efl_unref(td->evdown); - td->evdown = efl_input_dup(ev->info); + td->evdown = efl_dup(ev->info); } static void @@ -30,7 +30,7 @@ _pointer_move(void *data, const Efl_Event *ev) { testdata *td = data; efl_unref(td->evmove); - td->evmove = efl_input_dup(ev->info); + td->evmove = efl_dup(ev->info); } static void @@ -39,7 +39,7 @@ _pointer_up(void *data, const Efl_Event *ev) testdata *td = data; td->down = 0; efl_unref(td->evup); - td->evup = efl_input_dup(ev->info); + td->evup = efl_dup(ev->info); } static void @@ -64,7 +64,7 @@ _key_down(void *data, const Efl_Event *ev) if (!efl_input_fake_get(ev->info)) { efl_unref(td->evkeydown); - td->evkeydown = efl_input_dup(ev->info); + td->evkeydown = efl_dup(ev->info); } } @@ -84,7 +84,7 @@ _key_up(void *data, const Efl_Event *ev) if (!efl_input_fake_get(ev->info)) { efl_unref(td->evkeyup); - td->evkeyup = efl_input_dup(ev->info); + td->evkeyup = efl_dup(ev->info); } if (td->f) efl_future_cancel(td->f); diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c index f69cded..a071c61 100644 --- a/src/lib/edje/edje_calc.c +++ b/src/lib/edje/edje_calc.c @@ -3151,7 +3151,7 @@ _edje_svg_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3 EINA_U dest_root = efl_canvas_vg_root_node_get(ep->object); efl_ref(dest_root); - root = evas_vg_node_dup(src_root); + root = efl_dup(src_root); if (!evas_vg_node_interpolate(root, src_root, dest_root, pos)) { diff --git a/src/lib/efl/Efl.h b/src/lib/efl/Efl.h index 683745f..fa66d95 100644 --- a/src/lib/efl/Efl.h +++ b/src/lib/efl/Efl.h @@ -76,6 +76,7 @@ typedef Efl_Gfx_Path_Command_Type Efl_Gfx_Path_Command; /* Interfaces */ #include "interfaces/efl_config.eo.h" #include "interfaces/efl_control.eo.h" +#include "interfaces/efl_dup.eo.h" #include "interfaces/efl_file.eo.h" #include "interfaces/efl_image.eo.h" #include "interfaces/efl_image_animated.eo.h" diff --git a/src/lib/efl/interfaces/efl_dup.eo b/src/lib/efl/interfaces/efl_dup.eo new file mode 100644 index 0000000..9d40f1f --- /dev/null +++ b/src/lib/efl/interfaces/efl_dup.eo @@ -0,0 +1,17 @@ +interface Efl.Dup +{ + [[An interface for duplication of objects. + + Objects implementing this interface can be duplicated with @.dup. + ]] + methods { + dup @const { + [[Creates a carbon copy of this object and returns it. + + The newly created object will have no event handlers or anything of + the sort. + ]] + return: Efl.Dup @owned; + } + } +} diff --git a/src/lib/efl/interfaces/efl_gfx_path.c b/src/lib/efl/interfaces/efl_gfx_path.c index df424c1..85d017f 100644 --- a/src/lib/efl/interfaces/efl_gfx_path.c +++ b/src/lib/efl/interfaces/efl_gfx_path.c @@ -1575,8 +1575,8 @@ _efl_gfx_path_append_svg_path(Eo *obj, Efl_Gfx_Path_Data *pd, } } -static void -_efl_gfx_path_dup(Eo *obj, Efl_Gfx_Path_Data *pd, const Eo *dup_from) +EOLIAN static void +_efl_gfx_path_copy_from(Eo *obj, Efl_Gfx_Path_Data *pd, const Eo *dup_from) { Efl_Gfx_Path_Data *from; diff --git a/src/lib/efl/interfaces/efl_gfx_path.eo b/src/lib/efl/interfaces/efl_gfx_path.eo index 2311c74..4b8961d 100644 --- a/src/lib/efl/interfaces/efl_gfx_path.eo +++ b/src/lib/efl/interfaces/efl_gfx_path.eo @@ -49,7 +49,8 @@ mixin Efl.Gfx.Path y: double; [[Y co-ordinate of control point.]] } } - dup { + /* FIXME: Return a new object!!! */ + copy_from { [[Copy the shape data from the object specified. @since 1.18 diff --git a/src/lib/efl/interfaces/efl_gfx_shape.c b/src/lib/efl/interfaces/efl_gfx_shape.c index 922f6b9..45bf04d 100644 --- a/src/lib/efl/interfaces/efl_gfx_shape.c +++ b/src/lib/efl/interfaces/efl_gfx_shape.c @@ -8,6 +8,8 @@ #include +#define MY_CLASS EFL_GFX_SHAPE_MIXIN + typedef struct _Efl_Gfx_Shape_Data { Efl_Gfx_Shape_Public public; @@ -260,15 +262,15 @@ _efl_gfx_shape_fill_rule_get(Eo *obj EINA_UNUSED, return pd->fill_rule; } -static void -_efl_gfx_shape_dup(Eo *obj, Efl_Gfx_Shape_Data *pd, - const Eo *dup_from) +EOLIAN static void +_efl_gfx_shape_efl_gfx_path_copy_from(Eo *obj, Efl_Gfx_Shape_Data *pd, + const Eo *dup_from) { Efl_Gfx_Shape_Data *from; if (obj == dup_from) return; - from = efl_data_scope_get(dup_from, EFL_GFX_SHAPE_MIXIN); + from = efl_data_scope_get(dup_from, MY_CLASS); if (!from) return; pd->public.stroke.scale = from->public.stroke.scale; @@ -285,7 +287,7 @@ _efl_gfx_shape_dup(Eo *obj, Efl_Gfx_Shape_Data *pd, _efl_gfx_shape_stroke_dash_set(obj, pd, from->public.stroke.dash, from->public.stroke.dash_length); - efl_gfx_path_dup(obj, dup_from); + efl_gfx_path_copy_from(efl_super(obj, MY_CLASS), dup_from); } #include "interfaces/efl_gfx_shape.eo.c" diff --git a/src/lib/efl/interfaces/efl_gfx_shape.eo b/src/lib/efl/interfaces/efl_gfx_shape.eo index 14964b2..e66b870 100644 --- a/src/lib/efl/interfaces/efl_gfx_shape.eo +++ b/src/lib/efl/interfaces/efl_gfx_shape.eo @@ -134,14 +134,8 @@ mixin Efl.Gfx.Shape (Efl.Gfx.Path) @in pos_map: double; [[Position map in range 0.0 to 1.0]] } } - dup { - [[Copy the shape data from the object specified. - - @since 1.14 - ]] - params { - @in dup_from: const(Efl.Object); [[Shape object from where data will be copied.]] - } - } + } + implements { + Efl.Gfx.Path.copy_from; } } diff --git a/src/lib/efl/interfaces/efl_interfaces_main.c b/src/lib/efl/interfaces/efl_interfaces_main.c index e3b4e56..29a021e 100644 --- a/src/lib/efl/interfaces/efl_interfaces_main.c +++ b/src/lib/efl/interfaces/efl_interfaces_main.c @@ -6,6 +6,7 @@ #include "interfaces/efl_config.eo.c" #include "interfaces/efl_control.eo.c" +#include "interfaces/efl_dup.eo.c" #include "interfaces/efl_image.eo.c" #include "interfaces/efl_image_animated.eo.c" #include "interfaces/efl_image_load.eo.c" diff --git a/src/lib/evas/canvas/efl_canvas_vg.c b/src/lib/evas/canvas/efl_canvas_vg.c index c8a83ac..2b16c88 100644 --- a/src/lib/evas/canvas/efl_canvas_vg.c +++ b/src/lib/evas/canvas/efl_canvas_vg.c @@ -496,7 +496,7 @@ _cache_vg_entry_render(Evas_Object_Protected_Data *obj, buffer = obj->layer->evas->engine.func->ector_surface_cache_get(engine, root); if (!buffer) { - dupe_root = evas_vg_node_dup(root); + dupe_root = efl_dup(root); // render to the buffer buffer = _render_to_buffer(obj, vd, engine, surface, diff --git a/src/lib/evas/canvas/efl_input_event.eo b/src/lib/evas/canvas/efl_input_event.eo index b90f918..45bd937 100644 --- a/src/lib/evas/canvas/efl_input_event.eo +++ b/src/lib/evas/canvas/efl_input_event.eo @@ -1,6 +1,6 @@ import efl_input_types; -mixin Efl.Input.Event (Efl.Interface, Efl.Object) +mixin Efl.Input.Event (Efl.Interface, Efl.Object, Efl.Dup) { [[Represents a generic event data. @@ -30,17 +30,6 @@ mixin Efl.Input.Event (Efl.Interface, Efl.Object) reset @pure_virtual { [[Resets the internal data to 0 or default values.]] } - dup @pure_virtual { - [[Creates a copy of this event. - - The returned event object is similar to the given object in most - ways except that @.fake will be $true. - - Note: A reference is given to the caller. In order to avoid leaks - the C API users should call $efl_unref() after use. - ]] - return: Efl.Input.Event @owned; [[Event copy, marked as @.fake.]] - } @property device @pure_virtual { [[Input device that originated this event.]] values { diff --git a/src/lib/evas/canvas/efl_input_focus.c b/src/lib/evas/canvas/efl_input_focus.c index 9350aed..e6d273f 100644 --- a/src/lib/evas/canvas/efl_input_focus.c +++ b/src/lib/evas/canvas/efl_input_focus.c @@ -112,7 +112,7 @@ _efl_input_focus_efl_input_event_timestamp_get(Eo *obj EINA_UNUSED, } EOLIAN static Efl_Input_Focus * -_efl_input_focus_efl_input_event_dup(Eo *obj EINA_UNUSED, Efl_Input_Focus_Data *pd) +_efl_input_focus_efl_dup_dup(const Eo *obj, Efl_Input_Focus_Data *pd) { Efl_Input_Focus_Data *ev; Efl_Input_Focus *evt; diff --git a/src/lib/evas/canvas/efl_input_focus.eo b/src/lib/evas/canvas/efl_input_focus.eo index 47c13af..006ab68 100644 --- a/src/lib/evas/canvas/efl_input_focus.eo +++ b/src/lib/evas/canvas/efl_input_focus.eo @@ -17,7 +17,15 @@ class Efl.Input.Focus(Efl.Object, Efl.Input.Event) Efl.Object.destructor; Efl.Input.Event.device { get; set; } Efl.Input.Event.reset; - Efl.Input.Event.dup; + Efl.Dup.dup; + [[Creates a copy of this event. @Efl.Input.Event.fake is $true. + + The returned event object is similar to the given object in most + ways except that @Efl.Input.Event.fake will be $true. + + Note: A reference is given to the caller. In order to avoid leaks + the C API users should call $efl_unref() after use. + ]] Efl.Input.Event.timestamp { get; set; } } } diff --git a/src/lib/evas/canvas/efl_input_hold.c b/src/lib/evas/canvas/efl_input_hold.c index 8f84793..edb9084 100644 --- a/src/lib/evas/canvas/efl_input_hold.c +++ b/src/lib/evas/canvas/efl_input_hold.c @@ -101,7 +101,7 @@ _efl_input_hold_efl_input_event_reset(Eo *obj, Efl_Input_Hold_Data *pd) } EOLIAN static Efl_Input_Event * -_efl_input_hold_efl_input_event_dup(Eo *obj EINA_UNUSED, Efl_Input_Hold_Data *pd) +_efl_input_hold_efl_dup_dup(const Eo *obj, Efl_Input_Hold_Data *pd) { Efl_Input_Hold_Data *ev; Efl_Input_Hold *evt; diff --git a/src/lib/evas/canvas/efl_input_hold.eo b/src/lib/evas/canvas/efl_input_hold.eo index 6691990..8deb3bc 100644 --- a/src/lib/evas/canvas/efl_input_hold.eo +++ b/src/lib/evas/canvas/efl_input_hold.eo @@ -13,7 +13,15 @@ class Efl.Input.Hold (Efl.Object, Efl.Input.Event) Efl.Object.constructor; Efl.Object.destructor; Efl.Input.Event.reset; - Efl.Input.Event.dup; + Efl.Dup.dup; + [[Creates a copy of this event. @Efl.Input.Event.fake is $true. + + The returned event object is similar to the given object in most + ways except that @Efl.Input.Event.fake will be $true. + + Note: A reference is given to the caller. In order to avoid leaks + the C API users should call $efl_unref() after use. + ]] Efl.Input.Event.timestamp { get; set; } Efl.Input.Event.event_flags { get; set; } Efl.Input.Event.device { get; set; } diff --git a/src/lib/evas/canvas/efl_input_key.c b/src/lib/evas/canvas/efl_input_key.c index 895caf5..f417da6 100644 --- a/src/lib/evas/canvas/efl_input_key.c +++ b/src/lib/evas/canvas/efl_input_key.c @@ -188,7 +188,7 @@ _efl_input_key_efl_input_event_reset(Eo *obj EINA_UNUSED, Efl_Input_Key_Data *pd } EOLIAN static Efl_Input_Event * -_efl_input_key_efl_input_event_dup(Eo *obj EINA_UNUSED, Efl_Input_Key_Data *pd) +_efl_input_key_efl_dup_dup(const Eo *obj, Efl_Input_Key_Data *pd) { Efl_Input_Key_Data *ev; Efl_Input_Key *evt; diff --git a/src/lib/evas/canvas/efl_input_key.eo b/src/lib/evas/canvas/efl_input_key.eo index 2255cf5..09938b8 100644 --- a/src/lib/evas/canvas/efl_input_key.eo +++ b/src/lib/evas/canvas/efl_input_key.eo @@ -56,7 +56,15 @@ class Efl.Input.Key (Efl.Object, Efl.Input.Event, Efl.Input.State, Efl.Input.Eve Efl.Object.constructor; Efl.Object.destructor; Efl.Input.Event.reset; - Efl.Input.Event.dup; + Efl.Dup.dup; + [[Creates a copy of this event. @Efl.Input.Event.fake is $true. + + The returned event object is similar to the given object in most + ways except that @Efl.Input.Event.fake will be $true. + + Note: A reference is given to the caller. In order to avoid leaks + the C API users should call $efl_unref() after use. + ]] Efl.Input.Event.timestamp { get; set; } Efl.Input.Event.fake { get; } Efl.Input.Event.event_flags { get; set; } diff --git a/src/lib/evas/canvas/efl_input_pointer.c b/src/lib/evas/canvas/efl_input_pointer.c index 252f593..fd84f9b 100644 --- a/src/lib/evas/canvas/efl_input_pointer.c +++ b/src/lib/evas/canvas/efl_input_pointer.c @@ -143,7 +143,7 @@ _efl_input_pointer_efl_input_event_reset(Eo *obj, Efl_Input_Pointer_Data *pd) } EOLIAN static Efl_Input_Event * -_efl_input_pointer_efl_input_event_dup(Eo *obj EINA_UNUSED, Efl_Input_Pointer_Data *pd) +_efl_input_pointer_efl_dup_dup(const Eo *obj, Efl_Input_Pointer_Data *pd) { Efl_Input_Pointer_Data *ev; Efl_Input_Focus *evt; diff --git a/src/lib/evas/canvas/efl_input_pointer.eo b/src/lib/evas/canvas/efl_input_pointer.eo index 1519e93..878e27f 100644 --- a/src/lib/evas/canvas/efl_input_pointer.eo +++ b/src/lib/evas/canvas/efl_input_pointer.eo @@ -161,7 +161,15 @@ class Efl.Input.Pointer (Efl.Object, Efl.Input.Event, Efl.Input.State) Efl.Object.destructor; class.destructor; Efl.Input.Event.reset; - Efl.Input.Event.dup; + Efl.Dup.dup; + [[Creates a copy of this event. @Efl.Input.Event.fake is $true. + + The returned event object is similar to the given object in most + ways except that @Efl.Input.Event.fake will be $true. + + Note: A reference is given to the caller. In order to avoid leaks + the C API users should call $efl_unref() after use. + ]] Efl.Input.Event.timestamp { get; set; } Efl.Input.Event.fake { get; } Efl.Input.Event.event_flags { get; set; } diff --git a/src/lib/evas/canvas/efl_vg.eo b/src/lib/evas/canvas/efl_vg.eo index 2d64ade..2457c0e 100644 --- a/src/lib/evas/canvas/efl_vg.eo +++ b/src/lib/evas/canvas/efl_vg.eo @@ -1,6 +1,6 @@ import eina_types; -abstract Efl.VG (Efl.Object, Efl.Gfx, Efl.Gfx.Stack) +abstract Efl.VG (Efl.Object, Efl.Gfx, Efl.Gfx.Stack, Efl.Dup) { [[Efl vector graphics abstract class]] eo_prefix: efl_vg; @@ -103,10 +103,6 @@ abstract Efl.VG (Efl.Object, Efl.Gfx, Efl.Gfx.Stack) @in pos_map: double; [[Interpolate mapping]] } } - dup @const { - [[Duplicate vector graphics object]] - return: Efl.VG @owned; - } } implements { Efl.Object.parent { set; } @@ -123,5 +119,6 @@ abstract Efl.VG (Efl.Object, Efl.Gfx, Efl.Gfx.Stack) Efl.Gfx.Stack.stack_above; Efl.Gfx.Stack.raise; Efl.Gfx.Stack.lower; + Efl.Dup.dup; } } diff --git a/src/lib/evas/canvas/efl_vg_container.eo b/src/lib/evas/canvas/efl_vg_container.eo index 1faad56..fbf4add 100644 --- a/src/lib/evas/canvas/efl_vg_container.eo +++ b/src/lib/evas/canvas/efl_vg_container.eo @@ -20,6 +20,6 @@ class Efl.VG.Container (Efl.VG) Efl.Object.destructor; Efl.VG.bounds_get; Efl.VG.interpolate; - Efl.VG.dup; + Efl.Dup.dup; } } diff --git a/src/lib/evas/canvas/efl_vg_gradient.eo b/src/lib/evas/canvas/efl_vg_gradient.eo index 78f489c..c604568 100644 --- a/src/lib/evas/canvas/efl_vg_gradient.eo +++ b/src/lib/evas/canvas/efl_vg_gradient.eo @@ -6,6 +6,6 @@ abstract Efl.VG.Gradient (Efl.VG, Efl.Gfx.Gradient) Efl.Gfx.Gradient.stop { get; set; } Efl.Gfx.Gradient.spread { get; set; } Efl.VG.interpolate; - Efl.VG.dup; + Efl.Dup.dup; } } diff --git a/src/lib/evas/canvas/efl_vg_gradient_linear.eo b/src/lib/evas/canvas/efl_vg_gradient_linear.eo index 3ff3adc..4f9ea61 100644 --- a/src/lib/evas/canvas/efl_vg_gradient_linear.eo +++ b/src/lib/evas/canvas/efl_vg_gradient_linear.eo @@ -7,7 +7,7 @@ class Efl.VG.Gradient.Linear (Efl.VG.Gradient, Efl.Gfx.Gradient.Linear) Efl.Gfx.Gradient.Linear.end { get; set; } Efl.VG.bounds_get; Efl.VG.interpolate; - Efl.VG.dup; + Efl.Dup.dup; Efl.Object.constructor; Efl.Object.destructor; } diff --git a/src/lib/evas/canvas/efl_vg_gradient_radial.eo b/src/lib/evas/canvas/efl_vg_gradient_radial.eo index d71af60..3e3f74f 100644 --- a/src/lib/evas/canvas/efl_vg_gradient_radial.eo +++ b/src/lib/evas/canvas/efl_vg_gradient_radial.eo @@ -8,7 +8,7 @@ class Efl.VG.Gradient.Radial (Efl.VG.Gradient, Efl.Gfx.Gradient.Radial) Efl.Gfx.Gradient.Radial.focal { get; set; } Efl.VG.bounds_get; Efl.VG.interpolate; - Efl.VG.dup; + Efl.Dup.dup; Efl.Object.constructor; Efl.Object.destructor; } diff --git a/src/lib/evas/canvas/efl_vg_shape.eo b/src/lib/evas/canvas/efl_vg_shape.eo index 888ea45..a250398 100644 --- a/src/lib/evas/canvas/efl_vg_shape.eo +++ b/src/lib/evas/canvas/efl_vg_shape.eo @@ -37,7 +37,7 @@ class Efl.VG.Shape (Efl.VG, Efl.Gfx.Shape) implements { Efl.VG.bounds_get; Efl.VG.interpolate; - Efl.VG.dup; + Efl.Dup.dup; Efl.Object.constructor; Efl.Object.destructor; } diff --git a/src/lib/evas/canvas/evas_device.c b/src/lib/evas/canvas/evas_device.c index 9c740c0..ab204ac 100644 --- a/src/lib/evas/canvas/evas_device.c +++ b/src/lib/evas/canvas/evas_device.c @@ -475,7 +475,7 @@ _evas_device_cleanup(Evas *eo_e) /* If the device is deleted, _del_cb will remove the device * from the devices list. Ensure we delete them only once, and only if this * Evas is the owner, otherwise we would kill external references (eg. - * from efl_input_dup()). */ + * from efl_dup()). */ again: e->devices_modified = EINA_FALSE; cpy = eina_list_clone(e->devices); diff --git a/src/lib/evas/canvas/evas_events.c b/src/lib/evas/canvas/evas_events.c index aee416a..8011ae3 100644 --- a/src/lib/evas/canvas/evas_events.c +++ b/src/lib/evas/canvas/evas_events.c @@ -465,7 +465,7 @@ _evas_event_source_mouse_down_events(Evas_Object *eo_obj, Evas *eo_e, if (obj->delete_me || src->delete_me || e->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -574,7 +574,7 @@ _evas_event_source_mouse_move_events(Evas_Object *eo_obj, Evas *eo_e, if (obj->delete_me || src->delete_me || e->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -787,7 +787,7 @@ _evas_event_source_mouse_up_events(Evas_Object *eo_obj, Evas *eo_e, if (obj->delete_me || src->delete_me || e->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -877,7 +877,7 @@ _evas_event_source_wheel_events(Evas_Object *eo_obj, Evas *eo_e, if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -936,7 +936,7 @@ _evas_event_source_multi_down_events(Evas_Object_Protected_Data *obj, Evas_Publi if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -1002,7 +1002,7 @@ _evas_event_source_multi_up_events(Evas_Object_Protected_Data *obj, Evas_Public_ if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -1062,7 +1062,7 @@ _evas_event_source_multi_move_events(Evas_Object_Protected_Data *obj, Evas_Publi if (obj->delete_me || src->delete_me || e->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -1176,7 +1176,7 @@ _evas_event_source_mouse_in_events(Evas_Object *eo_obj, Evas *eo_e, Evas_Pointer_Data *pdata; if (obj->delete_me || src->delete_me || e->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -1267,7 +1267,7 @@ _evas_event_source_mouse_out_events(Evas_Object *eo_obj, Evas *eo_e, if (obj->delete_me || src->delete_me || e->is_frozen) return; - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -1594,7 +1594,7 @@ _post_up_handle(Evas_Public_Data *e, Efl_Input_Pointer *parent_ev, int event_id; /* Duplicating UP event */ - evt = efl_input_dup(parent_ev); + evt = efl_dup(parent_ev); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; @@ -1982,7 +1982,7 @@ _canvas_event_feed_mouse_wheel_internal(Eo *eo_e, Efl_Input_Pointer_Data *pe) event_id = _evas_object_event_new(); - evt = efl_input_dup(pe->eo); + evt = efl_dup(pe->eo); ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS); if (!ev) return; diff --git a/src/lib/evas/canvas/evas_vg_container.c b/src/lib/evas/canvas/evas_vg_container.c index b89d702..907d428 100644 --- a/src/lib/evas/canvas/evas_vg_container.c +++ b/src/lib/evas/canvas/evas_vg_container.c @@ -152,17 +152,17 @@ _efl_vg_container_efl_vg_interpolate(Eo *obj, } EOLIAN static Efl_VG * -_efl_vg_container_efl_vg_dup(const Eo *obj, Efl_VG_Container_Data *pd) +_efl_vg_container_efl_dup_dup(const Eo *obj, Efl_VG_Container_Data *pd) { Eina_List *l; Efl_VG *child; Efl_VG *cn = NULL; - cn = efl_vg_dup(efl_super(obj, MY_CLASS)); + cn = efl_dup(efl_super(obj, MY_CLASS)); EINA_LIST_FOREACH(pd->children, l, child) { // parent_set adds the new node to the list of children of cn - efl_parent_set(efl_vg_dup(child), cn); + efl_parent_set(efl_dup(child), cn); } return cn; } diff --git a/src/lib/evas/canvas/evas_vg_gradient.c b/src/lib/evas/canvas/evas_vg_gradient.c index db59b1b..10db4e3 100644 --- a/src/lib/evas/canvas/evas_vg_gradient.c +++ b/src/lib/evas/canvas/evas_vg_gradient.c @@ -97,12 +97,12 @@ _efl_vg_gradient_efl_vg_interpolate(Eo *obj, } EOLIAN static Efl_VG * -_efl_vg_gradient_efl_vg_dup(const Eo *obj, Efl_VG_Gradient_Data *pd) +_efl_vg_gradient_efl_dup_dup(const Eo *obj, Efl_VG_Gradient_Data *pd) { Efl_VG *cn = NULL; - cn = efl_vg_dup(efl_super(obj, MY_CLASS)); + cn = efl_dup(efl_super(obj, MY_CLASS)); efl_gfx_gradient_stop_set(cn, pd->colors, pd->colors_count); efl_gfx_gradient_spread_set(cn, pd->s); return cn; diff --git a/src/lib/evas/canvas/evas_vg_gradient_linear.c b/src/lib/evas/canvas/evas_vg_gradient_linear.c index 3549faf..c8bfcc2 100644 --- a/src/lib/evas/canvas/evas_vg_gradient_linear.c +++ b/src/lib/evas/canvas/evas_vg_gradient_linear.c @@ -154,11 +154,11 @@ _efl_vg_gradient_linear_efl_vg_interpolate(Eo *obj, } EOLIAN static Efl_VG * -_efl_vg_gradient_linear_efl_vg_dup(const Eo *obj, Efl_VG_Gradient_Linear_Data *pd) +_efl_vg_gradient_linear_efl_dup_dup(const Eo *obj, Efl_VG_Gradient_Linear_Data *pd) { Efl_VG *cn = NULL; - cn = efl_vg_dup(efl_super(obj, MY_CLASS)); + cn = efl_dup(efl_super(obj, MY_CLASS)); efl_gfx_gradient_linear_start_set(cn, pd->start.x, pd->start.y); efl_gfx_gradient_linear_end_set(cn, pd->end.x, pd->end.y); return cn; diff --git a/src/lib/evas/canvas/evas_vg_gradient_radial.c b/src/lib/evas/canvas/evas_vg_gradient_radial.c index 8108e8a..0090550 100644 --- a/src/lib/evas/canvas/evas_vg_gradient_radial.c +++ b/src/lib/evas/canvas/evas_vg_gradient_radial.c @@ -174,12 +174,12 @@ _efl_vg_gradient_radial_efl_vg_interpolate(Eo *obj, EOLIAN static Efl_VG * -_efl_vg_gradient_radial_efl_vg_dup(const Eo *obj, Efl_VG_Gradient_Radial_Data *pd) +_efl_vg_gradient_radial_efl_dup_dup(const Eo *obj, Efl_VG_Gradient_Radial_Data *pd) { Efl_VG *cn = NULL; - cn = efl_vg_dup(efl_super(obj, MY_CLASS)); + cn = efl_dup(efl_super(obj, MY_CLASS)); efl_gfx_gradient_radial_focal_set(cn, pd->focal.x, pd->focal.y); efl_gfx_gradient_radial_center_set(cn, pd->center.x, pd->center.y); efl_gfx_gradient_radial_radius_set(cn, pd->radius); diff --git a/src/lib/evas/canvas/evas_vg_node.c b/src/lib/evas/canvas/evas_vg_node.c index dbe4abe..6349555 100644 --- a/src/lib/evas/canvas/evas_vg_node.c +++ b/src/lib/evas/canvas/evas_vg_node.c @@ -716,7 +716,7 @@ _efl_vg_interpolate(Eo *obj, } EOLIAN static Efl_VG * -_efl_vg_dup(const Eo *obj, Efl_VG_Data *pd) +_efl_vg_efl_dup_dup(const Eo *obj, Efl_VG_Data *pd) { Efl_VG *cn; Efl_VG_Data *cd; @@ -733,7 +733,7 @@ _efl_vg_dup(const Eo *obj, Efl_VG_Data *pd) } if (pd->mask) - cd->mask = efl_vg_dup(pd->mask); + cd->mask = efl_dup(pd->mask); cd->x = pd->x; cd->y = pd->y; diff --git a/src/lib/evas/canvas/evas_vg_shape.c b/src/lib/evas/canvas/evas_vg_shape.c index f2137b0..b15694e 100644 --- a/src/lib/evas/canvas/evas_vg_shape.c +++ b/src/lib/evas/canvas/evas_vg_shape.c @@ -120,7 +120,7 @@ _efl_vg_shape_render_pre(Eo *obj EINA_UNUSED, ector_renderer_shape_fill_set(nd->renderer, fill ? fill->renderer : NULL); ector_renderer_shape_stroke_fill_set(nd->renderer, stroke_fill ? stroke_fill->renderer : NULL); ector_renderer_shape_stroke_marker_set(nd->renderer, stroke_marker ? stroke_marker->renderer : NULL); - efl_gfx_shape_dup(nd->renderer, obj); + efl_gfx_path_copy_from(nd->renderer, obj); ector_renderer_prepare(nd->renderer); } @@ -183,21 +183,21 @@ _efl_vg_shape_efl_vg_interpolate(Eo *obj, EOLIAN static Efl_VG * -_efl_vg_shape_efl_vg_dup(const Eo *obj, Efl_VG_Shape_Data *pd) +_efl_vg_shape_efl_dup_dup(const Eo *obj, Efl_VG_Shape_Data *pd) { Efl_VG *cn = NULL; Efl_VG_Shape_Data *cd = NULL; - cn = efl_vg_dup(efl_super(obj, MY_CLASS)); + cn = efl_dup(efl_super(obj, MY_CLASS)); cd = efl_data_scope_get(cn, MY_CLASS); if (pd->fill) - cd->fill = efl_vg_dup(pd->fill); + cd->fill = efl_dup(pd->fill); if (pd->stroke.fill) - cd->stroke.fill = efl_vg_dup(pd->stroke.fill); + cd->stroke.fill = efl_dup(pd->stroke.fill); if (pd->stroke.marker) - cd->stroke.marker = efl_vg_dup(pd->stroke.marker); + cd->stroke.marker = efl_dup(pd->stroke.marker); - efl_gfx_shape_dup(cn, obj); + efl_gfx_path_copy_from(cn, obj); return cn; } @@ -318,7 +318,7 @@ evas_vg_shape_current_ctrl_get(Eo *obj, double *x, double *y) EAPI void evas_vg_shape_dup(Eo *obj, Eo *dup_from) { - efl_gfx_shape_dup(obj, dup_from); + efl_gfx_path_copy_from(obj, dup_from); } EAPI void diff --git a/src/lib/evas/vg/evas_vg_cache.c b/src/lib/evas/vg/evas_vg_cache.c index a6c3870..89546e7 100644 --- a/src/lib/evas/vg/evas_vg_cache.c +++ b/src/lib/evas/vg/evas_vg_cache.c @@ -274,7 +274,7 @@ _evas_vg_dup_vg_tree(Vg_File_Data *fd, double w, double h) if (!fd) return NULL; if ( !w || !h ) return NULL; - root = efl_vg_dup(fd->root); + root = efl_dup(fd->root); _apply_transformation(root, w, h, fd); return root; -- 2.7.4