EOLIAN_TYPE_BUILTIN_ANY_VALUE,
EOLIAN_TYPE_BUILTIN_ANY_VALUE_PTR,
-
+ EOLIAN_TYPE_BUILTIN_BINBUF,
+ EOLIAN_TYPE_BUILTIN_EVENT,
EOLIAN_TYPE_BUILTIN_MSTRING,
EOLIAN_TYPE_BUILTIN_STRING,
EOLIAN_TYPE_BUILTIN_STRINGSHARE,
ANY_VALUE = 40,
ANY_VALUE_PTR = 41,
-
- MSTRING = 42,
- STRING = 43,
- STRINGSHARE = 44,
- STRBUF = 45,
-
- VOID_PTR = 46,
- FREE_CB = 47
+ BINBUF = 42,
+ EVENT = 43,
+ MSTRING = 44,
+ STRING = 45,
+ STRINGSHARE = 46,
+ STRBUF = 47,
+
+ VOID_PTR = 48,
+ FREE_CB = 49
}
M.typedecl_type = {
#include "efl_object_override.eo.h"
#include "efl_object.eo.h"
+
+/**
+ * @brief A parameter passed in event callbacks holding extra event parameters.
+ *
+ * This is the full event information passed to callbacks in C.
+ *
+ * @since 1.22
+ *
+ * @ingroup Efl
+ */
+typedef struct _Efl_Event
+{
+ Efl_Object *object; /**< The object the callback was called on.
+ *
+ * @since 1.22 */
+ const Efl_Event_Description *desc; /**< The event description.
+ *
+ * @since 1.22 */
+ void *info; /**< Extra event information passed by the event caller. Must be
+ * cast to the event type declared in the EO file. Keep in mind
+ * that: 1) Objects are passed as a normal Eo*. Event subscribers
+ * can call functions on these objects. 2) Structs, built-in
+ * types and containers are passed as const pointers, with one
+ * level of indirection.
+ *
+ * @since 1.22 */
+} Efl_Event;
+
#define EO_CLASS EFL_OBJECT_CLASS
/** An event callback prototype. */
}
}
-struct Efl.Event {
+struct @extern Efl.Event {
[[A parameter passed in event callbacks holding extra event parameters.
This is the full event information passed to callbacks in C.
EOLIAN_TYPE_BUILTIN_ANY_VALUE,
EOLIAN_TYPE_BUILTIN_ANY_VALUE_PTR,
-
+ EOLIAN_TYPE_BUILTIN_BINBUF,
+ EOLIAN_TYPE_BUILTIN_EVENT,
EOLIAN_TYPE_BUILTIN_MSTRING,
EOLIAN_TYPE_BUILTIN_STRING,
EOLIAN_TYPE_BUILTIN_STRINGSHARE,
"Eina_Accessor *", "Eina_Array *", "Eina_Future *", "Eina_Iterator *",
"Eina_Hash *", "Eina_List *",
- "Eina_Value", "Eina_Value *",
+ "Eina_Value", "Eina_Value *", "Eina_Binbuf *", "Efl_Event *",
"char *", "const char *", "Eina_Stringshare *", "Eina_Strbuf *",
"void *",
KW(void), \
\
KW(accessor), KW(array), KW(future), KW(iterator), KW(hash), KW(list), \
- KW(any_value), KW(any_value_ptr), \
+ KW(any_value), KW(any_value_ptr), KW(binbuf), KW(event), \
KW(mstring), KW(string), KW(stringshare), KW(strbuf), \
\
KW(void_ptr), \