layout: Implement missing edje APIs

This makes elm_layout implement:
 - efl_canvas_layout_signal_message_send
 - efl_canvas_layout_signal_process

This only transfers the calls from the elm widget to the internal
edje object.

PS: message_send is quite ugly in C...

Ref T5315

@feature
This commit is contained in:
Jean-Philippe Andre 2017-08-07 19:11:31 +09:00
parent 6864495c99
commit f79960839d
2 changed files with 15 additions and 2 deletions

View File

@ -2196,6 +2196,19 @@ EOLIAN static void _elm_layout_class_constructor(Efl_Class *klass)
evas_smart_legacy_type_register(MY_CLASS_NAME_LEGACY, klass);
}
EOLIAN static void
_elm_layout_efl_canvas_layout_signal_message_send(Eo *obj, Elm_Layout_Smart_Data *pd EINA_UNUSED, int id, const Eina_Value msg)
{
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
efl_canvas_layout_signal_message_send(wd->resize_obj, id, msg);
}
EOLIAN static void
_elm_layout_efl_canvas_layout_signal_signal_process(Eo *obj, Elm_Layout_Smart_Data *pd EINA_UNUSED, Eina_Bool recurse)
{
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
efl_canvas_layout_signal_process(wd->resize_obj, recurse);
}
/* Legacy APIs */

View File

@ -48,8 +48,8 @@ class Elm.Layout (Elm.Widget, Efl.Part, Efl.Container, Efl.File,
Efl.Canvas.Layout_Signal.signal_callback_add;
Efl.Canvas.Layout_Signal.signal_callback_del;
Efl.Canvas.Layout_Signal.signal_emit;
//Efl.Canvas.Layout_Signal.message_send;
//Efl.Canvas.Layout_Signal.signal_process;
Efl.Canvas.Layout_Signal.message_send;
Efl.Canvas.Layout_Signal.signal_process;
Efl.Canvas.Layout_Group.group_data { get; }
Efl.Canvas.Layout_Group.group_size_min { get; }
Efl.Canvas.Layout_Group.group_size_max { get; }