cedric pushed a commit to branch master.
commit 60eb5d07ea13e2b59de93db2532a025b884aff51
Author: Cedric Bail <[email protected]>
Date: Wed Jul 17 11:05:50 2013 +0900
eo: simplify callbacks array declaration for the lazy tasn.
---
src/lib/edje/edje_callbacks.c | 10 ++++------
src/lib/eo/Eo.h | 11 +++++++----
2 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/src/lib/edje/edje_callbacks.c b/src/lib/edje/edje_callbacks.c
index 1a7de7e..3be7cf0 100644
--- a/src/lib/edje/edje_callbacks.c
+++ b/src/lib/edje/edje_callbacks.c
@@ -432,20 +432,18 @@ _edje_pending_timer_cb(void *data)
return ECORE_CALLBACK_CANCEL;
}
-EO_CALLBACKS_ARRAY_DEFINE(edje_callbacks, 8,
+EO_CALLBACKS_ARRAY_DEFINE(edje_callbacks,
{ EVAS_OBJECT_EVENT_HOLD, _edje_hold_signal_cb },
{ EVAS_OBJECT_EVENT_MOUSE_IN,
_edje_mouse_in_signal_cb },
{ EVAS_OBJECT_EVENT_MOUSE_OUT,
_edje_mouse_out_signal_cb },
{ EVAS_OBJECT_EVENT_MOUSE_DOWN,
_edje_mouse_down_signal_cb },
{ EVAS_OBJECT_EVENT_MOUSE_UP,
_edje_mouse_up_signal_cb },
{ EVAS_OBJECT_EVENT_MOUSE_MOVE,
_edje_mouse_move_signal_cb },
- { EVAS_OBJECT_EVENT_MOUSE_WHEEL,
_edje_mouse_wheel_signal_cb },
- { NULL, NULL });
+ { EVAS_OBJECT_EVENT_MOUSE_WHEEL,
_edje_mouse_wheel_signal_cb });
-EO_CALLBACKS_ARRAY_DEFINE(edje_focus_callbacks, 3,
+EO_CALLBACKS_ARRAY_DEFINE(edje_focus_callbacks,
{ EVAS_OBJECT_EVENT_FOCUS_IN,
_edje_focus_in_signal_cb },
- { EVAS_OBJECT_EVENT_FOCUS_OUT,
_edje_focus_out_signal_cb },
- { NULL, NULL });
+ { EVAS_OBJECT_EVENT_FOCUS_OUT,
_edje_focus_out_signal_cb });
void
_edje_callbacks_add(Evas_Object *obj, Edje *ed, Edje_Real_Part *rp)
diff --git a/src/lib/eo/Eo.h b/src/lib/eo/Eo.h
index bb70fdb..5a5be84 100644
--- a/src/lib/eo/Eo.h
+++ b/src/lib/eo/Eo.h
@@ -1307,16 +1307,19 @@ struct _Eo_Callback_Array_Item
Eo_Event_Cb func; /**< The callback function. */
};
-#define EO_CALLBACKS_ARRAY_DEFINE(Name, Count, ...) \
+#define EO_CALLBACKS_ARRAY_DEFINE(Name, ...) \
static Eo_Callback_Array_Item * \
Name(void) \
{ \
- static Eo_Callback_Array_Item internal[Count] = { { 0 } }; \
+ static Eo_Callback_Array_Item internal[sizeof ((Eo_Callback_Array_Item[])
{ __VA_ARGS__ }) / \
+ sizeof (Eo_Callback_Array_Item) + \
+ 1] = { { 0 } }; \
if (internal[0].desc == NULL) \
{ \
memcpy(internal, \
- ((Eo_Callback_Array_Item[Count]) { __VA_ARGS__ }), \
- sizeof(Eo_Callback_Array_Item) * Count); \
+ ((Eo_Callback_Array_Item[]) { __VA_ARGS__, { NULL, NULL } }),
\
+ sizeof (Eo_Callback_Array_Item) + \
+ sizeof ((Eo_Callback_Array_Item[]) { __VA_ARGS__ })); \
} \
return internal; \
}
--
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk