elementary: factorize all events emitted by a Efl.Ui.Collection into their own interface.

For most event it is actually meaningful to share them with Efl.Ui.Collection_View so let's do it.

Differential Revision: https://phab.enlightenment.org/D9956
This commit is contained in:
Cedric Bail 2019-09-15 14:38:03 -07:00
parent e0f07489df
commit 1c0916ef03
5 changed files with 18 additions and 9 deletions

View File

@ -307,6 +307,7 @@ typedef Eo Efl_Ui_Spotlight_Indicator;
# include <efl_ui_item.eo.h>
# include <efl_ui_position_manager_entity.eo.h>
# include <efl_ui_position_manager_data_access_v1.eo.h>
# include <efl_ui_collection_events.eo.h>
# include <efl_ui_collection.eo.h>
# include <efl_ui_position_manager_list.eo.h>
# include <efl_ui_position_manager_grid.eo.h>

View File

@ -3,7 +3,8 @@ class Efl.Ui.Collection extends Efl.Ui.Layout_Base implements
Efl.Ui.Layout_Orientable,
Efl.Ui.Multi_Selectable,
Efl.Ui.Focus.Manager_Sub,
Efl.Ui.Widget_Focus_Manager
Efl.Ui.Widget_Focus_Manager,
Efl.Ui.Collection_Events
composites
Efl.Ui.Scrollable,
Efl.Ui.Scrollbar,
@ -25,7 +26,6 @@ class Efl.Ui.Collection extends Efl.Ui.Layout_Base implements
Items inside this widget can be selected according to the @Efl.Ui.Multi_Selectable.select_mode
policy, and the selection can be retrieved with @Efl.Ui.Multi_Selectable.selected_items_get.
]]
event_prefix:efl_ui;
methods {
item_scroll {
[[Brings the passed item into the viewport.]]
@ -90,12 +90,5 @@ class Efl.Ui.Collection extends Efl.Ui.Layout_Base implements
Efl.Ui.Multi_Selectable.unselect_range;
Efl.Ui.Single_Selectable.fallback_selection {get; set;}
}
events {
item,pressed : Efl.Ui.Item; [[A $press event occurred over an item.]]
item,unpressed : Efl.Ui.Item; [[An $unpress event occurred over an item.]]
item,longpressed : Efl.Ui.Item; [[A $longpressed event occurred over an item.]]
item,clicked : Efl.Ui.Item; [[A $clicked event occurred over an item.]]
item,clicked,any : Efl.Ui.Item; [[A $clicked,any event occurred over an item.]]
}
}

View File

@ -0,0 +1,12 @@
interface @beta Efl.Ui.Collection_Events
{
[[Shared sets of events between @Efl.Ui.Collection and @Efl.Ui.Collection_View.]]
event_prefix: efl_ui;
events {
item,pressed : Efl.Ui.Item; [[A $press event occurred over an item.]]
item,unpressed : Efl.Ui.Item; [[An $unpress event occurred over an item.]]
item,longpressed : Efl.Ui.Item; [[A $longpressed event occurred over an item.]]
item,clicked : Efl.Ui.Item; [[A $clicked event occurred over an item.]]
item,clicked,any : Efl.Ui.Item; [[A $clicked,any event occurred over an item.]]
}
}

View File

@ -214,3 +214,5 @@ ELM_WIDGET_KEY_DOWN_DEFAULT_IMPLEMENT(efl_ui_item, Efl_Ui_Item_Data)
#include "efl_ui_selectable.eo.c"
#include "efl_ui_multi_selectable.eo.c"
#include "efl_ui_single_selectable.eo.c"
#include "efl_ui_collection_events.eo.c"

View File

@ -173,6 +173,7 @@ pub_eo_files = [
'efl_ui_relative_layout.eo',
'efl_ui_action_connector.eo',
'efl_ui_format.eo',
'efl_ui_collection_events.eo',
'efl_ui_collection.eo',
'efl_ui_position_manager_entity.eo',
'efl_ui_position_manager_list.eo',