{
Eo *obj = data;
-#define REDIRECT_EVT(item_evt, item) \
- if (item_evt == ev->desc) efl_event_callback_call(obj, item, ev->object);
+#define REDIRECT_EVT(Desc, Item_Desc) \
+ if (Desc == ev->desc) \
+ { \
+ Efl_Ui_Item_Clickable_Clicked item_clicked; \
+ Efl_Input_Clickable_Clicked *clicked = ev->info; \
+ \
+ item_clicked.clicked = *clicked; \
+ item_clicked.item = ev->object; \
+ \
+ efl_event_callback_call(obj, Item_Desc, &item_clicked); \
+ }
+
REDIRECT_EVT(EFL_INPUT_EVENT_PRESSED, EFL_UI_EVENT_ITEM_PRESSED);
REDIRECT_EVT(EFL_INPUT_EVENT_UNPRESSED, EFL_UI_EVENT_ITEM_UNPRESSED);
REDIRECT_EVT(EFL_INPUT_EVENT_LONGPRESSED, EFL_UI_EVENT_ITEM_LONGPRESSED);
{
Eo *obj = data;
-#define REDIRECT_EVT(item_evt, item) \
- if (item_evt == ev->desc) efl_event_callback_call(obj, item, ev->object);
+#define REDIRECT_EVT(Desc, Item_Desc) \
+ if (Desc == ev->desc) \
+ { \
+ Efl_Ui_Item_Clickable_Clicked item_clicked; \
+ Efl_Input_Clickable_Clicked *clicked = ev->info; \
+ \
+ item_clicked.clicked = *clicked; \
+ item_clicked.item = ev->object; \
+ \
+ efl_event_callback_call(obj, Item_Desc, &item_clicked); \
+ }
REDIRECT_EVT(EFL_INPUT_EVENT_PRESSED, EFL_UI_EVENT_ITEM_PRESSED);
REDIRECT_EVT(EFL_INPUT_EVENT_UNPRESSED, EFL_UI_EVENT_ITEM_UNPRESSED);
REDIRECT_EVT(EFL_INPUT_EVENT_LONGPRESSED, EFL_UI_EVENT_ITEM_LONGPRESSED);
+import efl_input_clickable;
+
+struct @beta Efl.Ui.Item_Clickable_Clicked {
+ clicked: Efl.Input.Clickable_Clicked;
+ item: Efl.Ui.Item;
+}
+
interface @beta Efl.Ui.Item_Clickable
{
[[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.]]
+ item,pressed : Efl.Ui.Item_Clickable_Clicked; [[A $press event occurred over an item.]]
+ item,unpressed : Efl.Ui.Item_Clickable_Clicked; [[An $unpress event occurred over an item.]]
+ item,longpressed : Efl.Ui.Item_Clickable_Clicked; [[A $longpressed event occurred over an item.]]
+ item,clicked : Efl.Ui.Item_Clickable_Clicked; [[A $clicked event occurred over an item.]]
+ item,clicked,any : Efl.Ui.Item_Clickable_Clicked; [[A $clicked,any event occurred over an item.]]
}
}
\ No newline at end of file