diff options
author | Jean-Philippe Andre <jp.andre@samsung.com> | 2017-12-12 17:00:39 +0900 |
---|---|---|
committer | Jean-Philippe Andre <jp.andre@samsung.com> | 2017-12-13 13:47:48 +0900 |
commit | 1fdbb00e225ce9e98e7ec2e2ec554eb5d1e02e69 (patch) | |
tree | e61a7f9d422e3876aa97ff8f602898b1e8b576f2 /src/lib/efl | |
parent | 3136500fbeba47538ebdf95ead9ef49a4579db3d (diff) | |
download | efl-1fdbb00e225ce9e98e7ec2e2ec554eb5d1e02e69.tar.gz |
efl: Move VG-specific change event to efl.gfx.path
Diffstat (limited to 'src/lib/efl')
-rw-r--r-- | src/lib/efl/interfaces/efl_gfx.eo | 1 | ||||
-rw-r--r-- | src/lib/efl/interfaces/efl_gfx_path.c | 34 | ||||
-rw-r--r-- | src/lib/efl/interfaces/efl_gfx_path.eo | 2 | ||||
-rw-r--r-- | src/lib/efl/interfaces/efl_gfx_shape.c | 5 | ||||
-rw-r--r-- | src/lib/efl/interfaces/efl_gfx_types.eot | 9 |
5 files changed, 29 insertions, 22 deletions
diff --git a/src/lib/efl/interfaces/efl_gfx.eo b/src/lib/efl/interfaces/efl_gfx.eo index 6b30097bf3..3d073c2fc7 100644 --- a/src/lib/efl/interfaces/efl_gfx.eo +++ b/src/lib/efl/interfaces/efl_gfx.eo @@ -146,6 +146,5 @@ interface Efl.Gfx { hide; [[Object just became invisible.]] move; [[Object was moved, its position during the event is the new one.]] resize; [[Object was resized, its size during the event is the new one.]] - changed; [[Object was changed]] } } diff --git a/src/lib/efl/interfaces/efl_gfx_path.c b/src/lib/efl/interfaces/efl_gfx_path.c index b744ef1e37..2901373ddc 100644 --- a/src/lib/efl/interfaces/efl_gfx_path.c +++ b/src/lib/efl/interfaces/efl_gfx_path.c @@ -149,6 +149,7 @@ _efl_gfx_path_path_set(Eo *obj, Efl_Gfx_Path_Data *pd, const Efl_Gfx_Path_Command *commands, const double *points) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; Efl_Gfx_Path_Command *cmds; double *pts; unsigned int cmds_length = 0, pts_length = 0; @@ -184,9 +185,9 @@ _efl_gfx_path_path_set(Eo *obj, Efl_Gfx_Path_Data *pd, _efl_gfx_path_current_search(pd->commands, pd->points, &pd->current.x, &pd->current.y, &pd->current_ctrl.x, &pd->current_ctrl.y); + end: - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } EOLIAN static void @@ -276,6 +277,7 @@ EOLIAN static Eina_Bool _efl_gfx_path_interpolate(Eo *obj, Efl_Gfx_Path_Data *pd, const Eo *from, const Eo *to, double pos_map) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; Efl_Gfx_Path_Data *from_pd, *to_pd; Efl_Gfx_Path_Command *cmds; double *pts; @@ -339,8 +341,7 @@ _efl_gfx_path_interpolate(Eo *obj, Efl_Gfx_Path_Data *pd, pd->current_ctrl.y = interpolate(from_pd->current_ctrl.y, to_pd->current_ctrl.y, pos_map); - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); return EINA_TRUE; } @@ -361,6 +362,8 @@ _efl_gfx_path_equal_commands(Eo *obj EINA_UNUSED, EOLIAN static void _efl_gfx_path_reset(Eo *obj, Efl_Gfx_Path_Data *pd) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; + free(pd->commands); pd->commands = NULL; pd->commands_count = 0; @@ -375,14 +378,14 @@ _efl_gfx_path_reset(Eo *obj, Efl_Gfx_Path_Data *pd) pd->current_ctrl.y = 0; pd->convex = EINA_FALSE; - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } EOLIAN static void _efl_gfx_path_append_move_to(Eo *obj, Efl_Gfx_Path_Data *pd, double x, double y) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; double *offset_point; if (!efl_gfx_path_grow(EFL_GFX_PATH_COMMAND_TYPE_MOVE_TO, pd, &offset_point)) @@ -394,14 +397,14 @@ _efl_gfx_path_append_move_to(Eo *obj, Efl_Gfx_Path_Data *pd, pd->current.x = x; pd->current.y = y; - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } EOLIAN static void _efl_gfx_path_append_line_to(Eo *obj, Efl_Gfx_Path_Data *pd, double x, double y) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; double *offset_point; if (!efl_gfx_path_grow(EFL_GFX_PATH_COMMAND_TYPE_LINE_TO, pd, &offset_point)) @@ -413,8 +416,7 @@ _efl_gfx_path_append_line_to(Eo *obj, Efl_Gfx_Path_Data *pd, pd->current.x = x; pd->current.y = y; - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } EOLIAN static void @@ -423,6 +425,7 @@ _efl_gfx_path_append_cubic_to(Eo *obj, Efl_Gfx_Path_Data *pd, double ctrl_x1, double ctrl_y1, double x, double y) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; double *offset_point; if (!efl_gfx_path_grow(EFL_GFX_PATH_COMMAND_TYPE_CUBIC_TO, @@ -441,8 +444,7 @@ _efl_gfx_path_append_cubic_to(Eo *obj, Efl_Gfx_Path_Data *pd, pd->current_ctrl.x = ctrl_x1; pd->current_ctrl.y = ctrl_y1; - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } EOLIAN static void @@ -1028,12 +1030,12 @@ _efl_gfx_path_append_arc(Eo *obj, Efl_Gfx_Path_Data *pd, EOLIAN static void _efl_gfx_path_append_close(Eo *obj, Efl_Gfx_Path_Data *pd) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; double *offset_point; efl_gfx_path_grow(EFL_GFX_PATH_COMMAND_TYPE_CLOSE, pd, &offset_point); - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } static void @@ -1578,6 +1580,7 @@ _efl_gfx_path_append_svg_path(Eo *obj, Efl_Gfx_Path_Data *pd, EOLIAN static void _efl_gfx_path_copy_from(Eo *obj, Efl_Gfx_Path_Data *pd, const Eo *dup_from) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; Efl_Gfx_Path_Data *from; if (obj == dup_from) return; @@ -1588,8 +1591,7 @@ _efl_gfx_path_copy_from(Eo *obj, Efl_Gfx_Path_Data *pd, const Eo *dup_from) _efl_gfx_path_path_set(obj, pd, from->commands, from->points); - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } #include "interfaces/efl_gfx_path.eo.c" diff --git a/src/lib/efl/interfaces/efl_gfx_path.eo b/src/lib/efl/interfaces/efl_gfx_path.eo index 4b8961dd74..b36bf090dd 100644 --- a/src/lib/efl/interfaces/efl_gfx_path.eo +++ b/src/lib/efl/interfaces/efl_gfx_path.eo @@ -284,6 +284,6 @@ mixin Efl.Gfx.Path } } events { - changed; [[Graphics path was changed.]] + changed: Efl.Gfx.Path.Change_Event; [[Graphics path was changed.]] } } diff --git a/src/lib/efl/interfaces/efl_gfx_shape.c b/src/lib/efl/interfaces/efl_gfx_shape.c index 00bad6677f..3e88e8603f 100644 --- a/src/lib/efl/interfaces/efl_gfx_shape.c +++ b/src/lib/efl/interfaces/efl_gfx_shape.c @@ -161,9 +161,10 @@ _efl_gfx_shape_stroke_color_get(Eo *obj EINA_UNUSED, Efl_Gfx_Shape_Data *pd, EOLIAN static void _efl_gfx_shape_stroke_width_set(Eo *obj, Efl_Gfx_Shape_Data *pd, double w) { + Efl_Gfx_Path_Change_Event ev = { EFL_GFX_CHANGE_FLAG_PATH }; + pd->public.stroke.width = w; - efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, NULL); - efl_event_callback_legacy_call(obj, EFL_GFX_EVENT_CHANGED, NULL); + efl_event_callback_legacy_call(obj, EFL_GFX_PATH_EVENT_CHANGED, &ev); } EOLIAN static double diff --git a/src/lib/efl/interfaces/efl_gfx_types.eot b/src/lib/efl/interfaces/efl_gfx_types.eot index 7c6c43ec18..1b3598a3cf 100644 --- a/src/lib/efl/interfaces/efl_gfx_types.eot +++ b/src/lib/efl/interfaces/efl_gfx_types.eot @@ -146,13 +146,18 @@ enum Efl.Gfx.Border_Fill_Mode solid = 2 [[Image's center region is to be made solid, even if it has transparency on it]] } -enum Efl.Gfx.Change.Flag +enum Efl.Gfx.Change_Flag { [[What property got changed for this object @since 1.18]] none = 0x0, [[No change]] matrix = 0x1, [[matrix got changed]] path = 0x2, [[path got changes]] - all = -1 [[all property got changed]] + fill = 0x4, [[coloring or fill information changed, not geometry]] + all = 0xffff [[all properties got changed]] +} + +struct Efl.Gfx.Path.Change_Event { + what: Efl.Gfx.Change_Flag; [[Indicates what changed.]] } struct Efl.Gfx.Event.Render_Post |