efl.canvas.group: add events for member add/remove

Summary:
ref T7554

Depends on D8032

Reviewers: segfaultxavi, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7554

Differential Revision: https://phab.enlightenment.org/D8034
This commit is contained in:
Mike Blumenkrantz 2019-02-27 13:17:22 -05:00
parent 335936e79d
commit 235dadb1ab
2 changed files with 7 additions and 0 deletions

View File

@ -123,6 +123,10 @@ class @beta Efl.Canvas.Group extends Efl.Canvas.Object
}
}
}
events {
member,added: Efl.Gfx.Entity; [[Called when a member is added to the group.]]
member,removed: Efl.Gfx.Entity; [[Called when a member is removed from the group.]]
}
implements {
class.constructor;
class.destructor;

View File

@ -329,6 +329,7 @@ _efl_canvas_group_group_member_add(Eo *smart_obj, Evas_Smart_Data *o, Evas_Objec
if (smart->smart.smart && smart->smart.smart->smart_class->member_add)
smart->smart.smart->smart_class->member_add(smart_obj, eo_obj);
evas_object_update_bounding_box(eo_obj, obj, member_o);
efl_event_callback_call(smart_obj, EFL_CANVAS_GROUP_EVENT_MEMBER_ADDED, eo_obj);
}
EAPI void
@ -355,6 +356,8 @@ _efl_canvas_group_group_member_del(Eo *smart_obj, Evas_Smart_Data *_pd EINA_UNUS
evas_object_async_block(obj);
efl_event_callback_call(smart_obj, EFL_CANVAS_GROUP_EVENT_MEMBER_REMOVED, eo_obj);
smart = efl_data_scope_get(smart_obj, EFL_CANVAS_OBJECT_CLASS);
if (smart->smart.smart && smart->smart.smart->smart_class->member_del)
smart->smart.smart->smart_class->member_del(smart_obj, eo_obj);